WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
97627
Optimize stylesheet insertions
https://bugs.webkit.org/show_bug.cgi?id=97627
Summary
Optimize stylesheet insertions
Antti Koivisto
Reported
2012-09-25 21:15:20 PDT
We currently do scope analysis for stylesheets that are added to the end of the active stylesheet list to avoid unnecessary style recalcs and StyleResolver rebuilding. However it is somewhat common to insert <style> elements dynamically to positions other than last. In this case we currently simply force full style recalc. We should do scope analysis and partial style recalcs also in these cases.
Attachments
patch with performance test
(10.98 KB, patch)
2012-09-25 21:31 PDT
,
Antti Koivisto
kling
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Antti Koivisto
Comment 1
2012-09-25 21:31:04 PDT
Created
attachment 165724
[details]
patch with performance test
Andreas Kling
Comment 2
2012-09-26 05:42:25 PDT
Comment on
attachment 165724
[details]
patch with performance test View in context:
https://bugs.webkit.org/attachment.cgi?id=165724&action=review
Neat! r=me
> Source/WebCore/ChangeLog:12 > + PerformanceTests/CSS/StyleSheetInsert.html microbenchmark shows ~20x progression from the patch.
Glorious exposition, comrade!
Radar WebKit Bug Importer
Comment 3
2012-09-26 07:30:26 PDT
<
rdar://problem/12376415
>
Antti Koivisto
Comment 4
2012-09-26 07:55:28 PDT
http://trac.webkit.org/changeset/129644
Ryosuke Niwa
Comment 5
2012-09-26 13:55:43 PDT
Is it really worth running this test on every check in? FWIW, we already have a bot cycle time of one hour. Also, it seems like we could have used PerfTestRunner.runPerSecond here.
Antti Koivisto
Comment 6
2012-09-26 20:16:37 PDT
(In reply to
comment #5
)
> Is it really worth running this test on every check in? FWIW, we already have a bot cycle time of one hour. Also, it seems like we could have used PerfTestRunner.runPerSecond here.
We run our correctness regression tests on every check-in. Why wouldn't we run performance regressions tests like that too? It is a pretty fast test and could be made faster too. I didn't know about PerfTestRunner.runPerSecond.
Ryosuke Niwa
Comment 7
2012-09-26 20:47:34 PDT
(In reply to
comment #6
)
> We run our correctness regression tests on every check-in. Why wouldn't we run performance regressions tests like that too? > > It is a pretty fast test and could be made faster too. I didn't know about PerfTestRunner.runPerSecond.
The problem is that performance tests are much, much slower, and we can't parallelize them. Our current bot cycle is 50-60 minutes after disabling one test that was running out of memory on Chromium. And every new test will increase the run time by anywhere from 5 seconds to 5 minutes...
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug