Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(511)

Issue 1904633002: Add a fast path to CSSParserFastPaths for CSS transform rotate. (Closed)

Created:
4 years, 8 months ago by esprehn
Modified:
3 years, 7 months ago
Reviewers:
CC:
darktears, apavlov+blink_chromium.org, blink-reviews, blink-reviews-css, chromium-reviews, dglazkov+blink, rwlbuis
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add a fast path to CSSParserFastPaths for CSS transform rotate. This cuts the script execution time of the Animometer > Leaves benchmark by ~40%. Previously we were spending 10% of the time in the fast path for transforms only to throw the result away entirely and then reparse the value with the regular CSS parser which is much slower, and also wasted the work done in the fast path. Adding this fast path makes sure we never use the regular CSSParser making the style.tranform call much faster. This highlights that the fast path is actually a performance regression whenever you fall out of it, and also that the CSSParser itself has room for improvement since invoking it is 3x slower than using the fast path.

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+55 lines, -0 lines) Patch
M third_party/WebKit/Source/core/css/parser/CSSParserFastPaths.cpp View 2 chunks +55 lines, -0 lines 0 comments Download

Messages

Total messages: 8 (4 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1904633002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1904633002/1
4 years, 8 months ago (2016-04-20 03:53:13 UTC) #4
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 8 months ago (2016-04-20 05:11:57 UTC) #6
Rick Byers
Elliott, any plan to try to land this? Or do you think we should just ...
4 years, 7 months ago (2016-05-26 04:33:40 UTC) #7
esprehn
4 years, 7 months ago (2016-05-26 04:39:21 UTC) #8
On 2016/05/26 at 04:33:40, rbyers wrote:
> Elliott, any plan to try to land this?  Or do you think we should just be
focusing on http://crbug.com/605792?  I'm also seeing significant CPU time
parsing transforms in the Animometer benchmark I'm looking at
(http://crbug.com/606680).  I'll try applying this patch and see how much win I
get.

If we can figure out what I messed up in
https://codereview.chromium.org/1996343003 and reland it and then timloh@ fixes
the inline capacity on the Vectors I'm curious how far off we are from landing
this hack.

Powered by Google App Engine
This is Rietveld 408576698