1 2011-11-09 Adam Klein <adamk@chromium.org>
3 [MutationObservers] Microbenchmarks for appendChild, removeChild, and innerHTML
4 https://bugs.webkit.org/show_bug.cgi?id=71939
6 Reviewed by Ojan Vafai.
8 These benchmarks time both the DOM mutations themselves and the time taken
9 to call the MutationCallback. This measurement is achieved by
10 executing the code entirely within the MutationCallback itself.
12 * Mutation/append-child-deep.html: Added. Covers appendChild in a 200-node-deep tree with subtree observation.
13 * Mutation/append-child.html: Added. Covers appendChild in a flat tree.
14 * Mutation/inner-html.html: Added. Covers innerHTML adding and removing many nodes at a time.
15 * Mutation/remove-child-deep.html: Added. Covers removeChild in a 200-node-deep tree with subtree observation.
16 * Mutation/remove-child.html: Added. Covers removeChild in a flat tree.
18 2011-10-25 Adam Barth <abarth@webkit.org>
20 EventTargetFactory.in is not sorted
21 https://bugs.webkit.org/show_bug.cgi?id=70855
23 Reviewed by Eric Seidel.
25 Add a microbenchmark for wrapping event target.
28 * Bindings/event-target-wrapper.html: Added.
29 * Parser/resources/runner.js:
31 - Let the user of the harness get a callback when the test is done.
33 2011-10-04 Eric Seidel <eric@webkit.org>
35 Update html5-full-render.html to load the HTML5 spec incrementally, closer to how the browser would
36 https://bugs.webkit.org/show_bug.cgi?id=69374
40 Per https://bugs.webkit.org/show_bug.cgi?id=69374#c7
41 updating the chunksize to be a bit smaller now that the total
42 size of the html5 spec is smaller than when I wrote the test.
44 This should increase the prevalence of style resolution in the
45 sample time, which more closely matches instrument samples
46 taken when loading the full page in Safari.
48 * Parser/html5-full-render.html:
50 2011-10-04 Eric Seidel <eric@webkit.org>
52 Update html5-full-render.html to load the HTML5 spec incrementally, closer to how the browser would
53 https://bugs.webkit.org/show_bug.cgi?id=69374
55 Reviewed by James Robinson.
57 This should finally be able to provide us with a repeatable metric
58 for how fast we're currently able to load the HTML5 spec.
59 There are a variety of interesting functions which show up in this
60 sample, including of course style resolution.
62 * Parser/html5-full-render.html:
64 2011-10-04 Eric Seidel <eric@webkit.org>
66 Update our copy of the HTML5 spec used for performance testing to match the latest version
67 https://bugs.webkit.org/show_bug.cgi?id=69364
69 Unreviewed. The patch is too large to post, so landing this unreviewed. :(
71 The copy of the html5 spec we were using for testing was over a year old
72 and didn't have any of the subresources with it (we were only using it
73 as an HTML parsing benchmark). I'm about to use it for testing
74 the full load/render time of the benchmark, so I've updated to the latest
75 version of the spec (now 8mb instead of 5mb) and inlined two of the
76 CSS files. (Inlining the CSS was necessary to make my testing consistent
77 as there seems to be a race with some timer fired after CSS load.)
79 Increasing from 5mb to 8mb showed a similar 30% slowdown in our parser
80 benchmarks as expected.
82 * Parser/resources/html5.html:
84 2011-10-04 Eric Seidel <eric@webkit.org>
86 Add loopsPerRun option to Parser performance test runner
87 https://bugs.webkit.org/show_bug.cgi?id=69363
89 Reviewed by Antti Koivisto.
91 Add loopsPerRun option and abstract out runLoop function (to make the UI more responsive).
92 No change in behavior in any of the tests.
94 * Parser/resources/runner.js:
99 2011-10-03 Eric Seidel <eric@webkit.org>
101 Add a microbenchmark for a full-page render of the HTML5 spec
102 https://bugs.webkit.org/show_bug.cgi?id=69285
104 Reviewed by Adam Barth.
106 This was designed to be a test for https://bugs.webkit.org/show_bug.cgi?id=68944
107 But it seems that by far our dominating cost for the HTML5 benchmark is
108 time spent laying out lines (which isn't actually that surprising).
110 I'm adding the performance test for posterity.
112 * Parser/html-parser.html:
113 - Removed use of "about:blank" which abarth says is a no-op. Made comment more accurate.
114 * Parser/html5-full-render.html: Copied from PerformanceTests/Parser/html-parser.html.
116 2011-10-03 Eric Seidel <eric@webkit.org>
118 PerformanceTests/Parser/html-parser is only testing parsing of the head element
119 https://bugs.webkit.org/show_bug.cgi?id=69283
121 Reviewed by Adam Barth.
123 While investigating https://bugs.webkit.org/show_bug.cgi?id=68944
124 I found that the html-parser benchmark was only parsing up to the
125 first script tag per loop! We've fixed this by adding the sandbox
126 tag which will deny all external loads and allow the parser to
127 synchronously continue parsing the entire document to completion
128 (as we had expected it was doing).
130 This changes the profile somewhat. Line number counting is much
131 hotter, since we're actually accounting for the parse of the entire
132 document in our sample.
134 Total sample time only about doubles, from 1800ms to 3800ms on my machine
135 which is less than I would have expected.
137 * Parser/html-parser.html:
139 2011-08-09 Alexandru Chiculita <achicu@adobe.com>
141 Fixing 65868 REGRESSION(r92610) caused by 65668 - Optimize floating elements lookup
142 https://bugs.webkit.org/show_bug.cgi?id=65871
144 Reviewed by Dave Hyatt.
146 * Layout/floats.html: Added the nested divs, so that we can test the propagation impact of the floats tree.
148 2011-08-08 Sheriff Bot <webkit.review.bot@gmail.com>
150 Unreviewed, rolling out r92610.
151 http://trac.webkit.org/changeset/92610
152 https://bugs.webkit.org/show_bug.cgi?id=65868
154 Caused assertion failures when running fast/multicol tests
155 (Requested by andersca on #webkit).
157 * Layout/floats.html:
159 2011-08-08 Alexandru Chiculita <achicu@adobe.com>
161 Optimize floating elements lookup
162 https://bugs.webkit.org/show_bug.cgi?id=65668
164 Reviewed by David Hyatt.
166 * Layout/floats.html: Added the nested divs, so that we can test the propagation impact of the floats tree.
168 2011-08-04 Alexandru Chiculita <achicu@adobe.com>
170 Add a performance test for floating elements layout algorithm
171 https://bugs.webkit.org/show_bug.cgi?id=65741
173 The test creating lots of small floats and randomly changes
174 the width of one element at a time. It measures how often it can do that.
176 Reviewed by Adam Barth.
178 * Layout/floats.html: Added.
180 2011-05-30 Daniel Bates <dbates@webkit.org>
182 Reviewed by Adam Barth.
184 Rename XSSFilter to XSSAuditor
185 https://bugs.webkit.org/show_bug.cgi?id=61718
187 Currently we use the names XSSFilter and XSSAuditor throughout the project.
188 Instead, we should choose one name for consistency.
190 No functionality was changed. So, no new tests.
192 * XSSAuditor: Copied from PerformanceTests/XSSFilter.
193 * XSSFilter: Removed.
194 * XSSFilter/large-post-many-events.html: Removed.
195 * XSSFilter/large-post-many-inline-scripts-and-events.html: Removed.
196 * XSSFilter/resources: Removed.
197 * XSSFilter/resources/target-for-large-post-many-inline-scripts-and-events.html: Removed.
199 2011-03-25 Leo Yang <leo.yang@torchmobile.com.cn>
201 Reviewed by Dirk Schulze.
203 SVG <use> element performance improvement
204 https://bugs.webkit.org/show_bug.cgi?id=57077
206 Add a manual test case which is from
207 http://upload.wikimedia.org/wikipedia/commons/4/4e/Sierpinski_carpet_6.svg
208 for svg <use> element performance test.
210 * PageLoad/svg/files/Sierpinski_carpet_6.svg: Added.
211 * PageLoad/svg/svg.pltsuite:
213 2011-02-05 Eric Seidel <eric@webkit.org>
215 Reviewed by Adam Barth.
217 Add performance tests for URL parsing
218 https://bugs.webkit.org/show_bug.cgi?id=53845
220 The final-url-en URL corpus is from:
221 http://corpus.leeds.ac.uk/internet.html
223 There are also other language corpuses which we may want to use in the future.
225 The usage instructions were as follows:
226 "URL lists and other resources: you can freely use them in your research
227 provided that you supply a link to this website: http://corpus.leeds.ac.uk/."
230 * Parser/simple-url.html: Added.
235 Opera: 2830ms (no, that is not a typo)
236 * Parser/url-parser.html: Added.
240 Opera: 1383ms (again, not a typo)
241 * Parser/resources/final-url-en: Added.
243 2011-02-03 Adam Barth <abarth@webkit.org>
245 Reviewed by Daniel Bates.
247 Add another XSSFilter PerformanceTest
248 https://bugs.webkit.org/show_bug.cgi?id=53750
250 This PerformanceTest tests the case that was slow in
251 https://bugs.webkit.org/show_bug.cgi?id=49845
253 * XSSFilter/large-post-many-inline-scripts-and-events.html: Added.
254 * XSSFilter/resources: Added.
255 * XSSFilter/resources/target-for-large-post-many-inline-scripts-and-events.html: Added.
257 2011-02-03 Adam Barth <abarth@webkit.org>
259 Reviewed by Eric Seidel.
261 Add PerformanceTest for XSSFilter
262 https://bugs.webkit.org/show_bug.cgi?id=53741
264 This performance tests covers the case of a large POST data and many
265 small event handlers.
268 * XSSFilter/large-post-many-events.html: Added.
270 2011-02-02 Adam Barth <abarth@webkit.org>
272 Rubber-stamped by Eric Seidel.
274 Merge PerformanceTests/Parser/ChangeLog and
275 PerformanceTests/PageLoad/ChangeLog into PerformanceTests/ChangeLog.
277 It's silly to have ChangeLogs for each of these directories separately.
278 I've left SunSpider with its own ChangeLog because it's more of an
283 2011-02-02 Eric Seidel <eric@webkit.org>
285 Unreviewed. Just fixing an exception seen in Firefox.
287 HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40%
288 https://bugs.webkit.org/show_bug.cgi?id=48719
290 Make the benchmarks work in Firefox/Opera.
292 * resources/runner.js:
295 2011-01-27 Eric Seidel <eric@webkit.org>
297 Reviewed by Darin Adler.
299 HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40%
300 https://bugs.webkit.org/show_bug.cgi?id=48719
302 It's unclear exactly what the Peacekeeper benchmark is testing,
303 because I haven't found a way to run it myself.
305 However, I constructed a benchmark which shows at least one possible slow point.
306 The HTML5 spec talks about creating a new document for every time we use
307 the fragment parsing algorithm. Document() it turns out, it a huge bloated
308 mess, and the constructor and destructor do a huge amount of work.
310 * benchmarks/parser/tiny-innerHTML.html: Added.
312 2011-01-29 Sheriff Bot <webkit.review.bot@gmail.com>
314 Unreviewed, rolling out r77050.
315 http://trac.webkit.org/changeset/77050
316 https://bugs.webkit.org/show_bug.cgi?id=53371
318 Caused a crash in Chromium's test_shell_tests (Requested by
321 * resources/performance-test.js: Removed.
322 * tiny-innerHTML.html: Removed.
324 2011-01-28 Eric Seidel <eric@webkit.org>
326 Reviewed by Darin Adler.
328 HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40%
329 https://bugs.webkit.org/show_bug.cgi?id=48719
331 It's unclear exactly what the Peacekeeper benchmark is testing,
332 because I haven't found a way to run it myself.
334 However, I constructed a benchmark which shows at least one possible slow point.
335 The HTML5 spec talks about creating a new document for every time we use
336 the fragment parsing algorithm. Document() it turns out, it a huge bloated
337 mess, and the constructor and destructor do a huge amount of work.
338 To avoid constructing (or destructing) documents for each innerHTML call,
339 this patch adds a shared dummy document used by all innerHTML calls.
341 * benchmarks/parser/tiny-innerHTML.html: Added.
343 2010-12-31 Adam Barth <abarth@webkit.org>
345 Rubber-stamped by Eric Seidel.
347 Move HTML and XML parser benchmarks into PerformanceTests/Parser
348 https://bugs.webkit.org/show_bug.cgi?id=51772
350 Add a ChangeLog for tracking changes to the Parser PerformanceTest.
354 2010-12-31 Adam Barth <abarth@webkit.org>
356 Rubber-stamped by Eric Seidel.
358 Move PageLoadTests to PerformanceTests/PageLoad
359 https://bugs.webkit.org/show_bug.cgi?id=51771
361 Update URLs to point to the new directory name.
365 2006-12-26 Eric Seidel <eric@webkit.org>
369 * svg/svg.pltsuite: re-enable word-iso.svg after fixing http://bugs.webkit.org/show_bug.cgi?id=11987
371 2006-12-26 Eric Seidel <eric@webkit.org>
373 Reviewed by bradee-oh.
375 Add new PageLoadTests directory (this one)
376 Add LICENSES file to explain where each SVG came from.
379 * svg/LICENSES: Added.
380 * svg/files/33041-Samurai.svg: Added.
381 * svg/files/42470-flower_from_my_garden_v2.svg: Added.
382 * svg/files/Harvey_Rayner.svg: Added.
383 * svg/files/az-lizard_benji_park_01.svg: Added.
384 * svg/files/bamboo_01.svg: Added.
385 * svg/files/cacuts_01.svg: Added.
386 * svg/files/cowboy.svg: Added.
387 * svg/files/crawfish2_ganson.svg: Added.
388 * svg/files/deb9frac1.svg: Added.
389 * svg/files/food_leif_lodahl_01.svg: Added.
390 * svg/files/france.svg: Added.
391 * svg/files/francobollo_gnome_ezechi_02.svg: Added.
392 * svg/files/gearflowers.svg: Added.
393 * svg/files/hereGear4.svg: Added.
394 * svg/files/mtsthelens.svg: Added.
395 * svg/files/mtsthelens0.jpg: Added.
396 * svg/files/world-iso.svg: Added.
397 * svg/files/worldcup.svg: Added.
398 * svg/svg.pltsuite: Added.