1 2013-02-11 Alexei Filippov <alph@chromium.org>
3 Web Inspector: Split Profiler domain in protocol into Profiler and HeapProfiler
4 https://bugs.webkit.org/show_bug.cgi?id=108653
6 Reviewed by Yury Semikhatsky.
8 Currently CPU and heap profilers share the same domain 'Profiler' in the protocol.
9 In fact these two profile types have not too much in common. So put each into its own domain.
10 It should also help when Profiles panel gets split into several tools.
11 This is the phase 1 which adds InspectorHeapProfilerAgent but doesn't
12 change the original InspectorProfilerAgent.
14 * inspector/heap-snapshot-performance-test.js:
15 (test.performanceTest.cleanup):
17 2013-02-05 Dominik Röttsches <dominik.rottsches@intel.com>
19 Add a performance test for arabic line breaking
20 https://bugs.webkit.org/show_bug.cgi?id=108948
22 Reviewed by Eric Seidel.
24 Adding a perfomance test based to exercise the complex
25 font path used in rendering arabic script.
27 * Layout/ArabicLineLayout.html: Added.
28 * Skipped: New test skipped by default as per Ryosuke's request.
30 2013-01-23 Yury Semikhatsky <yurys@chromium.org>
32 Web Inspector: some measurements are missing in PerformanceTests/inspector/heap-*.html
33 https://bugs.webkit.org/show_bug.cgi?id=107687
35 Reviewed by Pavel Feldman.
37 * inspector/heap-snapshot-performance-test.js: override methods on JSHeapSnapshot instead
38 of HeapSnapshot, otherwise overrides from JSHeapSnapshot will rule.
40 2013-01-18 Ryosuke Niwa <rniwa@webkit.org>
42 Skip DOM/TraverseChildNodes.html as intended in r140070.
46 2013-01-17 Dominic Cooney <dominicc@chromium.org>
48 Unreviewed, re-land r140051.
50 I overzealously rolled this out; the test was intended to be
51 skipped, but was not skipped because of a typo in Skipped. See
52 <https://bugs.webkit.org/show_bug.cgi?id=107210>
54 * Parser/html-parser-srcdoc.html: Added.
55 * Skipped: Big-P Parser.
57 2013-01-17 Sheriff Bot <webkit.review.bot@gmail.com>
59 Unreviewed, rolling out r140051.
60 http://trac.webkit.org/changeset/140051
61 https://bugs.webkit.org/show_bug.cgi?id=107210
63 html-parser-srcdoc.html failing on Chromium Linux Perf and
64 Chromium Mac Perf with a lot of error spew about blocked
65 script execution in 'about:srcdoc' (Requested by dominicc on
68 * Parser/html-parser-srcdoc.html: Removed.
71 2013-01-16 Ryosuke Niwa <rniwa@webkit.org>
73 Remove NodeListsNodeData when it's no longer needed
74 https://bugs.webkit.org/show_bug.cgi?id=107074
76 Reviewed by Darin Adler.
78 Added a micro benchmark to see the benefit of removing NodeListsNodeData.
79 The test traverses all elements in the html5 specification page and accesses childNodes.
81 Don't enable this test for now since it's really a micro benchmark specifically
82 designed to test this patch.
84 * DOM/TraverseChildNodes.html: Added.
85 * Skipped: Don't enable newly added test by default.
86 * resources/results-template.html: Compare against the unscaled unit (e.g. "bytes") as
87 opposed to scaled units such as "K bytes".
88 * resources/runner.js:
89 (.start): Moved the code to call currentTest.setup from measureRunsPerSecondOnce so that
90 it'll be ran for all test types, namely of PerfTestRunner.measureTime.
91 (.measureRunsPerSecondOnce):
93 2013-01-17 Eric Seidel <eric@webkit.org>
95 Add a version of the html-parser benchmark which uses srcdoc instead of document.write so it tests the threaded parser
96 https://bugs.webkit.org/show_bug.cgi?id=107158
98 Reviewed by Ryosuke Niwa.
100 Currently this test even opts-in to the threaded parser if available.
101 We'll remove that line when the threaded parser becomes default or goes away.
103 * Parser/html-parser-srcdoc.html: Added.
105 2013-01-16 Arnaud Renevier <a.renevier@sisa.samsung.com>
107 inconsistency in drawImage with target rect negative dimensions.
108 https://bugs.webkit.org/show_bug.cgi?id=100026
110 Reviewed by Dean Jackson.
112 Create a drawImage performance test. There is no significative change
113 in performance: 27144.6851528 runs/s without the patch; 27153.517612
114 runs/s with the patch. Test is currently skipped.
116 * Canvas/drawimage.html: Added.
119 2013-01-15 Dominic Cooney <dominicc@chromium.org>
121 Allow zero values as results from the runFunction.
122 https://bugs.webkit.org/show_bug.cgi?id=102500
124 Reviewed by Kentaro Hara.
126 DOM/DOMWalk.js fails on the Chromium Win perf bot because one or
127 more parts of the test usually return zero at some point.
129 * resources/runner.js: Accept merely non-negative results.
131 2012-12-28 Yury Semikhatsky <yurys@chromium.org>
133 Web Inspector: rename distanceToWindow to distance
134 https://bugs.webkit.org/show_bug.cgi?id=105823
136 Reviewed by Pavel Feldman.
138 Updated heap profiler performance test after renaming distanceToWindow to distance.
140 * inspector/heap-snapshot-performance-test.js:
142 2012-12-18 Hayato Ito <hayato@chromium.org>
144 Use element.webkitCreateShadowRoot instead of WebKitShadowRoot in PerformanceTests.
145 https://bugs.webkit.org/show_bug.cgi?id=105256
147 Reviewed by Dimitri Glazkov.
149 WebKitShadowRoot constructor was deleted in favor of element.webkitCreateShadowRoot().
151 * ShadowDOM/ChangingClassNameShadowDOM.html:
152 * ShadowDOM/ChangingSelect.html:
153 * ShadowDOM/ContentReprojection.html:
154 * ShadowDOM/DistributionWithMultipleShadowRoots.html:
155 * ShadowDOM/LargeDistributionWithLayout.html:
156 * ShadowDOM/MultipleInsertionPoints.html:
157 * ShadowDOM/ShadowReprojection.html:
158 * ShadowDOM/SmallDistributionWithLayout.html:
160 2012-12-17 Shinya Kawanaka <shinyak@chromium.org>
162 [Shadow] LargeDistributionWithLayout.html should be updated
163 https://bugs.webkit.org/show_bug.cgi?id=105242
165 Reviewed by Ryosuke Niwa.
167 Since this test was written when distribution took O(N^2). However, now it's almost O(N), so this test finishes
168 in very short time. We should convert it unit to runs/s.
170 This test contains a some error to cause test failure, e.g. using obsolete API, so they also should be fixed.
172 * ShadowDOM/LargeDistributionWithLayout.html:
174 2012-12-13 Ryosuke Niwa <rniwa@webkit.org>
176 [chromium perf] DOM/DOMWalk.html failures
177 https://bugs.webkit.org/show_bug.cgi?id=104866
179 Reviewed by Eric Seidel.
181 Use PerfTestRunner.now which in turn uses window.performance.now() when it's available.
183 * DOM/resources/dom-perf.js:
186 (BenchmarkSuite.prototype.RunSingle):
188 2012-12-05 Shinya Kawanaka <shinyak@chromium.org>
190 [Shadow] Performance tests for ShadowDOM distribution
191 https://bugs.webkit.org/show_bug.cgi?id=103617
193 Reviewed by Dimitri Glazkov.
195 We would like to measure ShadowDOM distribution performance in various cases.
196 In this patch, we add performance tests for several distribution patterns.
198 * ShadowDOM/ContentReprojection.html: Added.
199 * ShadowDOM/DistributionWithMultipleShadowRoots.html: Added.
200 * ShadowDOM/LargeDistributionWithLayout.html: Added.
201 * ShadowDOM/MultipleInsertionPoints.html: Added.
202 * ShadowDOM/ShadowReprojection.html: Added.
203 * ShadowDOM/SmallDistributionWithLayout.html: Added.
205 2012-12-05 Shinya Kawanaka <shinyak@chromium.org>
207 [Shadow] Performance tests of distribution for changing className
208 https://bugs.webkit.org/show_bug.cgi?id=103612
210 Reviewed by Dimitri Glazkov.
212 We would like to measure ShadowDOM performance and compare it to the similar functional HTML without using ShadowDOM.
213 In this patch, we add a case when classNames of distributed elemeents are changed.
215 * ShadowDOM/ChangingClassName.html: Added.
216 * ShadowDOM/ChangingClassNameShadowDOM.html: Added.
218 2012-12-03 Ryosuke Niwa <rniwa@webkit.org>
220 Dromaeo should report individual test result
221 https://bugs.webkit.org/show_bug.cgi?id=99800
223 Reviewed by Eric Seidel.
225 Made one small modification to Droameo's webrunner.js so that it reports individual runs/s values
226 for each subtest. This allows us to compute the aggregated run/s for each iteration like other
229 Also stop measuring memory usage in Dromaeo tests because some Dromaeo tests (e.g. jslib-modify-jquery)
230 have unrealistic memory usage, and measuring them at the time of teardown doesn't make much sense.
232 * Animation/balls.html: Fixed typo: measureValueAync.
233 * Dromaeo/resources/dromaeo/web/webrunner.js:
235 * Dromaeo/resources/dromaeorunner.js:
236 (DRT.setup): Call prepareToMeasureValuesAsync so that DRT.teardown can use meausreValueAsync, and log
237 "Running 5 times". Since the log container will be inserted before iframe, we need to explicitly insert
238 the iframe as the first child of the body element to avoid logs from affecting the iframe's position.
239 Also specify the number of iterations by calling PerfTestRunner.iterationCount() so that we may adjust
240 the number of iterations in PerfTestRunner.
242 (DRT.progress): Log individual measurement for each subtest.
243 (DRT.teardown): Compute the aggregated result for each iteration, and log them using measureValueAsync.
245 * resources/runner.js:
246 (PerfTestRunner.logStatistics): Merged printStatistics since it's no longer needed after r131638.
247 (PerfTestRunner): Removed getAndPrintMemoryStatistics since it was used only in Dromaeo tests but
248 we no longer measure memory usage in Dromaeo tests.
250 (start): Increment completedRuns from -1 to 0 for Dromaeo tests where we don't want to ignore the initial
251 measurement. Note that ignoreWarmUpAndLog ignores the measurements for which completedRuns is negative.
253 (ignoreWarmUpAndLog): We don't measure memory usage in Dromaeo tests. See above.
254 (PerfTestRunner.iterationCount): Added. This abstraction allows us to auto-adjust the number of iterations from
255 run-perf-tests in near future.
256 (PerfTestRunner.measureValueAsync): Renamed from measureValueAync.
258 2012-11-29 Shinya Kawanaka <shinyak@chromium.org>
260 [Shadow] Performance tests of distribution for changing select attribute
261 https://bugs.webkit.org/show_bug.cgi?id=103611
263 Reviewed by Hajime Morita.
265 We would like to measure ShadowDOM performance and compare it to the similar functional HTML without using ShadowDOM.
266 In this patch, we add a case when select attribute of HTMLContentElement is changed.
268 * ShadowDOM/ChangingSelect.html: Added.
269 * ShadowDOM/ChangingSelectWithoutShadow.html: Added.
272 2012-11-19 Shinya Kawanaka <shinyak@chromium.org>
274 Changing id, className, or attribute should invalidate distribution
275 https://bugs.webkit.org/show_bug.cgi?id=100738
277 Reviewed by Dimitri Glazkov.
279 Added test code to modify id/class/attribute.
281 * DOM/ModifyAttribute.html: Added.
282 * DOM/resources/dom-perf/modify-attribute.js: Added.
283 (ModifyAttribute.CreateElementToSetUp):
284 (ModifyAttribute.ModifyId):
285 (ModifyAttribute.ModifyClass):
286 (ModifyAttribute.ModifyTitle):
288 2012-11-14 Ryosuke Niwa <rniwa@webkit.org>
290 runCount in runner.js should be renamed to iterationCount
291 https://bugs.webkit.org/show_bug.cgi?id=102208
293 Reviewed by Tony Chang.
295 Prior to this patch, there were terminology confusions between "runs" and "iterations".
296 The term "run" should refer to running a performance test once, and "iteration" should
297 refer to one measurement in the test. i.e. Executing run-perf-should once will result in
298 a single "run" of performance tests and each test may execute multiple "iterations"
301 Unfortunately, we still overload the meaning of "runs" in "runs/s" (is "function calls/s")
302 but that could be addressed in a separate patch.
304 * Animation/balls.html:
306 * DOM/resources/dom-perf.js:
307 * Layout/floats_100_100.html:
308 * Layout/floats_100_100_nested.html:
309 * Layout/floats_20_100.html:
310 * Layout/floats_20_100_nested.html:
311 * Layout/floats_2_100.html:
312 * Layout/floats_2_100_nested.html:
313 * Layout/floats_50_100.html:
314 * Layout/floats_50_100_nested.html:
315 * Layout/subtree-detaching.html:
316 * Parser/html5-full-render.html:
317 * SVG/SvgHitTesting.html:
318 * resources/runner.js:
320 2012-11-13 Dimitri Glazkov <dglazkov@chromium.org>
322 Unreviewed, rolling out r134367.
323 http://trac.webkit.org/changeset/134367
324 https://bugs.webkit.org/show_bug.cgi?id=100738
326 Speculative rollout, could have cause Dromaeo setAttribute
329 * DOM/ModifyAttribute.html: Removed.
330 * DOM/resources/dom-perf/modify-attribute.js: Removed.
332 2012-11-12 Shinya Kawanaka <shinyak@chromium.org>
334 Changing id, className, or attribute should invalidate distribution
335 https://bugs.webkit.org/show_bug.cgi?id=100738
337 Reviewed by Dimitri Glazkov.
339 Added test code to modify id/class/attribute.
341 * DOM/ModifyAttribute.html: Added.
342 * DOM/resources/dom-perf/modify-attribute.js: Added.
343 (ModifyAttribute.CreateElementToSetUp):
344 (ModifyAttribute.ModifyId):
345 (ModifyAttribute.ModifyClass):
346 (ModifyAttribute.ModifyTitle):
348 2012-11-06 Adam Barth <abarth@webkit.org>
350 DOMImplementation should use ScriptWrappable
351 https://bugs.webkit.org/show_bug.cgi?id=101279
353 Reviewed by Eric Seidel.
355 This simple PerformanceTest measure how quickly we can access
356 document.implementation. The goal of this performance test is just to
357 validate that using ScriptWrappable actually makes the bindings faster.
359 * Bindings/document-implementation.html: Added.
361 2012-11-05 Geoffrey Garen <ggaren@apple.com>
363 WebKit should have performance tests for book chapter reflow
364 https://bugs.webkit.org/show_bug.cgi?id=101271
366 Reviewed by Dan Bernstein.
368 I grabbed a book chapter from the Project Gutenberg front page:
370 * Layout/chapter-reflow-once.html: Added.
371 * Layout/chapter-reflow-thrice.html: Added.
372 * Layout/chapter-reflow-twice.html: Added.
373 * Layout/chapter-reflow.html: Added.
375 I also created a torture-test random text generator:
377 * Layout/chapter-reflow-once-random.html: Added.
379 2012-10-29 Zoltan Horvath <zoltan@webkit.org>
381 Turn PageLoad tests into simple performancetests, commit #7 (last)
382 https://bugs.webkit.org/show_bug.cgi?id=99899
384 Reviewed by Ryosuke Niwa.
386 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
387 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
388 to their new location and adds html/js wrappers for them.
390 This is the #7 (last) commit of the whole patch.
393 * PageLoad/svg: Removed.
394 * PageLoad/svg/LICENSES: Removed.
395 * PageLoad/svg/files: Removed.
396 * PageLoad/svg/files/33041-Samurai.svg: Removed.
397 * PageLoad/svg/files/42450-under the see.svg: Removed.
398 * PageLoad/svg/files/world-iso.svg: Removed.
399 * PageLoad/svg/svg.pltsuite: Removed.
400 * SVG/Samurai.html: Added.
401 * SVG/UnderTheSee.html: Added.
402 * SVG/WorldIso.html: Added.
403 * SVG/resources/LICENSES: Copied from PerformanceTests/PageLoad/svg/LICENSES.
404 * SVG/resources/Samurai.svg: Copied from PerformanceTests/PageLoad/svg/files/33041-Samurai.svg.
405 * SVG/resources/UnderTheSee.svg: Copied from PerformanceTests/PageLoad/svg/files/42450-under%20the%20see.svg.
406 * SVG/resources/WorldIso.svg: Copied from PerformanceTests/PageLoad/svg/files/world-iso.svg.
407 * SVG/resources/svg.pltsuite: Copied from PerformanceTests/PageLoad/svg/svg.pltsuite.
408 * Skipped: Rename the files on the skipped list also.
410 2012-10-26 Eric Seidel <eric@webkit.org>
412 Add a microbenchmark for Hindi (complex-text) line-layout
413 https://bugs.webkit.org/show_bug.cgi?id=100024
415 Reviewed by Ryosuke Niwa.
417 I wrote this to make sure that we don't regress line-breaking performance
418 for the complex-text codepath. This test has shown me that TOT is
419 already 5% slower than Safari 6.0.1 here. :(
421 * Layout/hindi-line-layout.html: Added.
423 2012-10-26 Zoltan Horvath <zoltan@webkit.org>
425 Turn PageLoad tests into simple performancetests, commit #6
426 https://bugs.webkit.org/show_bug.cgi?id=99899
428 Reviewed by Ryosuke Niwa.
430 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
431 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
432 to their new location and adds html/js wrappers for them.
434 This is the #6 commit of the whole patch.
436 * PageLoad/svg/files/gearflowers.svg: Removed.
437 * PageLoad/svg/files/hereGear4.svg: Removed.
438 * PageLoad/svg/files/worldcup.svg: Removed.
439 * SVG/GearFlowers.html: Added.
440 * SVG/HereGear.html: Added.
441 * SVG/Worldcup.html: Added.
442 * SVG/resources/GearFlowers.svg: Copied from PerformanceTests/PageLoad/svg/files/gearflowers.svg.
443 * SVG/resources/HereGear.svg: Copied from PerformanceTests/PageLoad/svg/files/hereGear4.svg.
444 * SVG/resources/Worldcup.svg: Copied from PerformanceTests/PageLoad/svg/files/worldcup.svg.
445 * Skipped: Rename the files on the skipped list also.
447 2012-10-26 Zoltan Horvath <zoltan@webkit.org>
449 Turn PageLoad tests into simple performancetests, commit #5
450 https://bugs.webkit.org/show_bug.cgi?id=99899
452 Reviewed by Ryosuke Niwa.
454 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
455 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
456 to their new location and adds html/js wrappers for them.
458 This is the #5 commit of the whole patch.
460 * PageLoad/svg/files/Harvey_Rayner.svg: Removed.
461 * PageLoad/svg/files/Sierpinski_carpet_6.svg: Removed.
462 * PageLoad/svg/files/mtsthelens.svg: Removed.
463 * PageLoad/svg/files/mtsthelens0.jpg: Removed.
464 * SVG/HarveyRayner.html: Added.
465 * SVG/MtSaintHelens.html: Added.
466 * SVG/SierpinskiCarpet.html: Added.
467 * SVG/resources/HarveyRayner.svg: Copied from PerformanceTests/PageLoad/svg/files/Harvey_Rayner.svg.
468 * SVG/resources/MtSaintHelens.svg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens.svg.
469 * SVG/resources/SierpinskiCarpet.svg: Copied from PerformanceTests/PageLoad/svg/files/Sierpinski_carpet_6.svg.
470 * SVG/resources/mtsthelens0.jpg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens0.jpg.
471 * Skipped: Rename the files on the skipped list also.
473 2012-10-25 Zoltan Horvath <zoltan@webkit.org>
475 Turn PageLoad tests into simple performancetests, commit #4
476 https://bugs.webkit.org/show_bug.cgi?id=99899
478 Reviewed by Ryosuke Niwa.
480 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
481 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
482 to their new location and adds html/js wrappers for them.
484 This is the #4 commit of the whole patch.
486 * PageLoad/svg/files/france.svg: Removed.
487 * PageLoad/svg/files/francobollo_gnome_ezechi_02.svg: Removed.
488 * SVG/France.html: Added.
489 * SVG/FrancoBolloGnomeEzechi.html: Added.
490 * SVG/resources/France.svg: Copied from PerformanceTests/PageLoad/svg/files/france.svg.
491 * SVG/resources/FrancoBolloGnomeEzechi.svg: Copied from PerformanceTests/PageLoad/svg/files/francobollo_gnome_ezechi_02.svg.
492 * Skipped: Rename the files on the skipped list also.
494 2012-10-25 Zoltan Horvath <zoltan@webkit.org>
496 Turn PageLoad tests into simple performancetests, commit #3
497 https://bugs.webkit.org/show_bug.cgi?id=99899
499 Reviewed by Ryosuke Niwa.
501 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
502 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
503 to their new location and adds html/js wrappers for them.
505 This is the #3 commit of the whole patch.
507 * PageLoad/svg/files/42470-flower_from_my_garden_v2.svg: Removed.
508 * PageLoad/svg/files/44057-drops on a blade.svg: Removed.
509 * PageLoad/svg/files/deb9frac1.svg: Removed.
510 * PageLoad/svg/files/food_leif_lodahl_01.svg: Removed.
511 * SVG/Debian.html: Added.
512 * SVG/DropsOnABlade.html: Added.
513 * SVG/FlowerFromMyGarden.html: Added.
514 * SVG/FoodLeifLodahl.html: Added.
515 * SVG/resources/Debian.svg: Copied from PerformanceTests/PageLoad/svg/files/deb9frac1.svg.
516 * SVG/resources/DropsOnABlade.svg: Copied from PerformanceTests/PageLoad/svg/files/44057-drops%20on%20a%20blade.svg.
517 * SVG/resources/FlowerFromMyGarden.svg: Copied from PerformanceTests/PageLoad/svg/files/42470-flower_from_my_garden_v2.svg.
518 * SVG/resources/FoodLeifLodahl.svg: Copied from PerformanceTests/PageLoad/svg/files/food_leif_lodahl_01.svg.
520 2012-10-24 Zoltan Horvath <zoltan@webkit.org>
522 Turn PageLoad tests into simple performancetests, commit #2
523 https://bugs.webkit.org/show_bug.cgi?id=99899
525 Reviewed by Ryosuke Niwa.
527 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
528 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
529 to their new location and adds html/js wrappers for them.
531 This is the #2 commit of the whole patch.
533 * PageLoad/svg/files/cacuts_01.svg: Removed.
534 * PageLoad/svg/files/cowboy.svg: Removed.
535 * PageLoad/svg/files/crawfish2_ganson.svg: Removed.
536 * SVG/Cactus.html: Added.
537 * SVG/Cowboy.html: Added.
538 * SVG/CrawFishGanson.html: Added.
539 * SVG/resources/Cactus.svg: Copied from PerformanceTests/PageLoad/svg/files/cacuts_01.svg.
540 * SVG/resources/Cowboy.svg: Copied from PerformanceTests/PageLoad/svg/files/cowboy.svg.
541 * SVG/resources/CrawFishGanson.svg: Copied from PerformanceTests/PageLoad/svg/files/crawfish2_ganson.svg.
542 * Skipped: Remove az-lizard_benji_park_01.svg from the skipped list.
544 2012-10-24 Zoltan Horvath <zoltan@webkit.org>
546 Turn PageLoad tests into simple performancetests, commit #1
547 https://bugs.webkit.org/show_bug.cgi?id=99899
549 Reviewed by Ryosuke Niwa.
551 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
552 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
553 to their new location and adds html/js wrappers for them.
555 This is the #1 commit of the whole patch.
557 * PageLoad/svg/files/az-lizard_benji_park_01.svg: Removed.
558 * PageLoad/svg/files/bamboo_01.svg: Removed.
559 * SVG/AzLizardBenjiPark.html: Added.
560 * SVG/Bamboo.html: Added.
561 * SVG/resources: Added.
562 * SVG/resources/AzLizardBenjiPark.svg: Copied from PerformanceTests/PageLoad/svg/files/az-lizard_benji_park_01.svg.
563 * SVG/resources/Bamboo.svg: Copied from PerformanceTests/PageLoad/svg/files/bamboo_01.svg.
565 2012-10-24 Zoltan Horvath <zoltan@webkit.org>
567 REGRESSION(r131982): Skip SVG/SvgNestedUse.html performancetest since it is crashing
568 https://bugs.webkit.org/show_bug.cgi?id=100262
572 Skip until proper fix.
574 * Skipped: Add SVG/SvgNestedUse.html
576 2012-10-23 Zoltan Horvath <zoltan@webkit.org>
578 Store the loaded file locally in measurePageLoadTime
579 https://bugs.webkit.org/show_bug.cgi?id=100172
581 Reviewed by Csaba Osztrogonác.
583 Store the loaded file as a local variable instead of attaching it to the test object.
584 Handle chunkSize inside test.run.
586 * resources/runner.js:
589 2012-10-23 Zoltan Horvath <zoltan@webkit.org>
591 Add measurePageLoadTime function to PerfTestRunner
592 https://bugs.webkit.org/show_bug.cgi?id=100029
594 Reviewed by Ryosuke Niwa.
596 Adopt chunk based loading logic from html5-full-render.html into measurePageLoadTime function,
597 this is needed to measure the performance and the memory consumption of the PageLoadTests as
598 we do it for all other performancetests.
600 * Parser/html5-full-render.html: Move the behavior to runner.js.
601 * resources/runner.js:
602 (.): Add measurePageLoadTime function.
604 2012-10-22 Adam Barth <abarth@webkit.org>
606 [V8] Vastly simplify V8GCController's NodeVisitor
607 https://bugs.webkit.org/show_bug.cgi?id=99884
609 Reviewed by Kentaro Hara.
611 Adds some performance tests for the garbage collector.
613 * Bindings/gc-forest.html: Added.
614 * Bindings/gc-mini-tree.html: Added.
615 * Bindings/gc-tree.html: Added.
617 2012-10-17 Ryosuke Niwa <rniwa@webkit.org>
619 Bump up the number of iterations of html5-full-render to 5
620 https://bugs.webkit.org/show_bug.cgi?id=99657
622 Reviewed by Andreas Kling.
624 Now that html5-full-render.html runs in less than 15 seconds after r131553,
625 we can afford to get 5 instead of 2 samples.
627 * Parser/html5-full-render.html:
629 2012-10-17 Ryosuke Niwa <rniwa@webkit.org>
631 Rename PerfTestRunner.runPerSecond to PerfTestRunner.measureRunsPerSecond for consistency
632 https://bugs.webkit.org/show_bug.cgi?id=99642
634 Reviewed by Dirk Pranke.
638 * Bindings/append-child.html:
639 * Bindings/create-element.html:
640 * Bindings/event-target-wrapper.html:
641 * Bindings/first-child.html:
642 * Bindings/get-attribute.html:
643 * Bindings/get-element-by-id.html:
644 * Bindings/get-elements-by-tag-name.html:
645 * Bindings/id-getter.html:
646 * Bindings/id-setter.html:
647 * Bindings/insert-before.html:
648 * Bindings/node-list-access.html:
649 * Bindings/scroll-top.html:
650 * Bindings/set-attribute.html:
651 * Bindings/typed-array-construct-from-array.html:
652 * Bindings/typed-array-construct-from-same-type.html:
653 * Bindings/typed-array-construct-from-typed.html:
654 * Bindings/typed-array-set-from-typed.html:
655 * Bindings/undefined-first-child.html:
656 * Bindings/undefined-get-element-by-id.html:
657 * Bindings/undefined-id-getter.html:
658 * CSS/CSSPropertySetterGetter.html:
659 * CSS/CSSPropertyUpdateValue.html:
660 * CSS/PseudoClassSelectors.html:
661 * DOM/textarea-dom.html:
662 * DOM/textarea-edit.html:
663 * Interactive/resources/window-resize.js:
664 * Layout/flexbox-column-nowrap.html:
665 * Layout/flexbox-column-wrap.html:
666 * Layout/flexbox-row-nowrap.html:
667 * Layout/flexbox-row-wrap.html:
668 * Layout/line-layout.html:
669 * Parser/css-parser-yui.html:
670 * Parser/innerHTML-setter.html:
671 * Parser/query-selector-deep.html:
672 * Parser/query-selector-first.html:
673 * Parser/query-selector-last.html:
674 * Parser/simple-url.html:
675 * Parser/textarea-parsing.html:
676 * Parser/tiny-innerHTML.html:
677 * Parser/url-parser.html:
678 * Parser/xml-parser.html:
679 * SVG/SvgNestedUse.html:
680 * resources/runner.js:
682 2012-10-17 Ryosuke Niwa <rniwa@webkit.org>
684 Performance test should support asynchronous tests
685 https://bugs.webkit.org/show_bug.cgi?id=95668
687 Reviewed by Dirk Pranke.
689 Added PerfTestRunner.prepareToMeasureValuesAsync and PerfTestRunner.measureValueAsync,
690 and deployed it in Animation/balls.
692 * Animation/balls.html:
693 * resources/runner.js:
695 2012-10-16 Elliott Sprehn <esprehn@chromium.org>
697 html5-full-render.html test uses substring but meant substr
698 https://bugs.webkit.org/show_bug.cgi?id=99495
700 Reviewed by Adam Barth.
702 This test intended to chunk up the HTML5 spec into chunks of 500k chars, but used
703 substring(to,from) instead of substr(from,length) so it actually loaded 5x more
704 content than was in the HTML5 spec.
706 * Parser/html5-full-render.html:
708 2012-10-11 James Simonsen <simonjam@chromium.org>
710 unprefix window.performance.webkitNow()
711 https://bugs.webkit.org/show_bug.cgi?id=88278
713 Reviewed by Tony Gentilcore.
715 * resources/runner.js: Bind to proper object to avoid invalid invocation errors.
717 2012-10-08 Ryosuke Niwa <rniwa@webkit.org>
719 Skip Layout/subtree-detaching.html temporarily as it's very noisy and
720 takes 112s to run on Chromium Mac. This is tracked by the bug 98708.
724 2012-10-08 Ryosuke Niwa <rniwa@webkit.org>
726 Perf. test results page is broken when runs have different sets of tests
727 https://bugs.webkit.org/show_bug.cgi?id=98691
729 Reviewed by Daniel Bates.
731 Add "missing" columns for tests that are missing some runs.
733 Also fix regressions from the previous patch:
734 - Make reference run switch work again
735 - Load jquery plugins from the remote server when the jquery is loaded from the remote server.
737 * resources/results-template.html:
739 2012-10-08 Ryosuke Niwa <rniwa@webkit.org>
741 Perf test pesults page takes forever to load on a machine with a slow Internet connection
742 https://bugs.webkit.org/show_bug.cgi?id=98561
744 Reviewed by Ojan Vafai.
746 Try loading jquery both locally and remotely, and use the same method to load the remaining
747 jquery plugins when either one succeeds.
749 * resources/results-template.html:
751 2012-10-04 Hayato Ito <hayato@chromium.org>
753 [Refactoring] Introduce a traversal strategy in SelectorChecker
754 https://bugs.webkit.org/show_bug.cgi?id=97298
756 Reviewed by Antti Koivisto.
758 Introduces querySelector() performance tests to check SelectorChecker performance.
760 * CSS/PseudoClassSelectors.html: Added.
762 2012-10-03 Philip Rogers <pdr@google.com>
764 Force GC between PageLoad tests.
765 https://bugs.webkit.org/show_bug.cgi?id=98203
767 Reviewed by Ryosuke Niwa.
769 Previously, our PageLoad PerfTests had multi-modal distributions,
770 typically with a small cluster at 1-2x the median. This turned out
771 to be caused by not garbage collecting between tests!
773 This patch adds a new file, force-gc.html, and loads this file between
774 PageLoad tests to force a GC. I manually verified that this cleans up
775 our perf test outliers.
777 * resources/force-gc.html: Added.
779 2012-10-03 Julien Chaffraix <jchaffraix@webkit.org>
781 Add a performance test for subtree detaching
782 https://bugs.webkit.org/show_bug.cgi?id=98281
784 Reviewed by Eric Seidel.
786 The new test tries to stress detaching on a heavy subtree (2 levels deep but with 1,000 nodes per level).
787 We set display: none on the root and measure the time it takes to update the tree. Note that we will also
788 measure the time taken by recalcStyle and relayout but I don't think we can avoid that.
790 * Layout/subtree-detaching.html: Added.
792 2012-10-02 Ryosuke Niwa <rniwa@webkit.org>
794 Build fix after r130135. Dromaeo tests only report single memory value,
795 and computeStatistics should report variance as 0 in such cases.
797 * resources/runner.js:
799 2012-10-02 Philip Rogers <pdr@google.com>
801 Fix PerfTest standard deviation calculation.
802 https://bugs.webkit.org/show_bug.cgi?id=98115
804 Reviewed by Ryosuke Niwa.
806 Previously our standard deviation calculation was incorrect. This patch
807 updates perftest.py's algorithm to calculate the sample standard deviation
808 (with Bessel's correction) using Knuth's online algorithm:
809 http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Online_algorithm
810 An existing test has been modified to prove our new results.
812 This patch also updates runner.js to use Bessel's correction in
813 its sample standard deviation calculation, which is more accurate
814 for small sample sizes.
816 Additionally, runner.js has been modified to not calculate
817 the 'sum' statistic, which was not very useful.
819 * resources/runner.js:
820 (PerfTestRunner.computeStatistics):
822 2012-10-01 Ryosuke Niwa <rniwa@webkit.org>
824 PerfTestRunner: Move all functions into the closure and always use double quotation for string literals
825 https://bugs.webkit.org/show_bug.cgi?id=98093
827 Reviewed by Ojan Vafai.
829 Move all methods of PerfTestRunner into the closure that defines it.
830 Also always use double quotations for string literals for consistency.
832 * resources/runner.js:
834 2012-10-01 Ryosuke Niwa <rniwa@webkit.org>
836 Encapsulate private properties in PerfTestRunner better
837 https://bugs.webkit.org/show_bug.cgi?id=97833
839 Reviewed by Ojan Vafai.
841 This patch moves "private" methods and properties of PerfTestRunner into a closure so that they're
842 inaccssible from outside. Also catch exceptions from test.run, test.done, and other runner code
843 to ensure we call notifyDone() even if we broke tests. Otherwise DRT will timeout and we end up
844 waiting for 10 minutes per each broken test on bots.
846 * resources/runner.js:
848 (logInDocument): Extracted from PerfTestRunner.log.
849 (PerfTestRunner.log): Moved.
850 (logFatalError): Added.
851 (start): Renamed from PerfTestRunner._start.
852 (scheduleNextRun): Extracted from PerfTestRunner._runLoop. Also catch any exceptions that happen
853 in the runner and ignoreWarmUpAndLog so that we don't end up timing out. We call logFatalError in
854 such cases, which in turn ensures notifyDone() is called.
855 (ignoreWarmUpAndLog): Renamed from PerfTestRunner._ignoreWarmUpAndLog.
856 (finish): Extracted from PerfTestRunner._runLoop.
857 (PerfTestRunner.measureTime): Moved. The initialization of runCount is moved into start().
858 (measureTimeOnce): Renamed from PerfTestRunner._measureTimeOnce.
859 (PerfTestRunner.runPerSecond): Moved. Ditto about runCount.
860 (measureRunsPerSecondOnce): Renamed from PerfTestRunner._measureRunsPerSecondOnce.
861 (callRunAndMeasureTime): Renamed from PerfTestRunner._perSecondRunnerIterator.
863 2012-10-01 Florin Malita <fmalita@chromium.org>
865 Add a performance test for nested <use> elements
866 https://bugs.webkit.org/show_bug.cgi?id=98047
868 Reviewed by Ryosuke Niwa.
870 Currently at ~5 runs per second on my workstation, but should go up significantly (100+)
871 after landing a fix for https://bugs.webkit.org/show_bug.cgi?id=97905.
873 * SVG/SvgNestedUse.html: Added.
875 2012-09-28 Ryosuke Niwa <rniwa@webkit.org>
877 Add back test.runCount for runPerSecond as it's used by tests in fast/harness/perftests.
879 * resources/runner.js:
880 (PerfTestRunner.runPerSecond):
882 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
884 Build fix after r129824.
886 * DOM/resources/dom-perf.js:
889 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
891 Remove unused features and reduce code duplications in PerfTestRunner
892 https://bugs.webkit.org/show_bug.cgi?id=97852
894 Reviewed by Kentaro Hara.
896 Made the following refactoring changes:
897 - Remove PerfTestRunner.info since it's never used.
898 - Moved the js heap/malloc related functions up to where they belong.
899 - Moved the initialization of _callsPerIteration, _test, and -description into _start,
900 and stopped initializing _runFunction and _doneFunction since both test times now
902 - Made _measureTimeOnce and _measureRunsPerSecondOnce return the measured value
903 instead of calling ignoreWarmUpAndLog and _runLoop to share the code; they're now
904 called in _measureRunsPerSecondOnce.
906 * resources/runner.js:
907 (PerfTestRunner.storeHeapResults): Moved.
908 (PerfTestRunner.getUsedMallocHeap): Moved.
909 (PerfTestRunner.getUsedJSHeap): Moved.
910 (PerfTestRunner.getAndPrintMemoryStatistics): Moved.
911 (PerfTestRunner._scheduleNextMeasurementOrNotifyDone): Renamed from _runLoop. Calls
912 ignoreWarmUpAndLog and schedules the next call.
913 (PerfTestRunner._measureTimeOnce): Renamed from _runner.
914 (PerfTestRunner._start): Renamed from initAndStartLoop.
915 (PerfTestRunner.measureTime):
916 (PerfTestRunner.runPerSecond):
917 (PerfTestRunner._measureRunsPerSecondOnce): Renamed from _measureRunsPerSecondOnce.
918 (PerfTestRunner._perSecondRunnerIterator):
920 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
922 PerfTestRunner.run should take an object
923 https://bugs.webkit.org/show_bug.cgi?id=97743
925 Reviewed by Kentaro Hara.
927 Rename PerfTestRunner.run to PerfTestRunner.measureTime and make it take an object instead of
928 5 arguments. Also get rid of PerfTestRunner._loopsPerRun since it's no longer used (it's always 1).
930 * CSS/StyleSheetInsert.html:
931 * DOM/resources/dom-perf.js:
932 * Layout/floats_100_100.html:
933 * Layout/floats_100_100_nested.html:
934 * Layout/floats_20_100.html:
935 * Layout/floats_20_100_nested.html:
936 * Layout/floats_2_100.html:
937 * Layout/floats_2_100_nested.html:
938 * Layout/floats_50_100.html:
939 * Layout/floats_50_100_nested.html:
940 * Parser/html-parser.html:
941 * Parser/html5-full-render.html:
942 * SVG/SvgCubics.html:
943 * SVG/SvgHitTesting.html:
944 * resources/runner.js:
946 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
948 PerformanceTests/CSS/StyleSheetInsert.html has a time-dependent non-Gaussian distribution
949 https://bugs.webkit.org/show_bug.cgi?id=97741
951 Reviewed by Antti Koivisto.
953 Reset the content in the iframe in each run so that the runtime from each run follows a normal distribution.
954 We can cleanup this code once my patch to replace the argument list of run by an object is landed.
956 * CSS/StyleSheetInsert.html:
958 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
960 Unreviewed. Minor appearance tweaks after r129813.
962 * resources/results-template.html:
964 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
966 Results page should warn about time-dependent distributions
967 https://bugs.webkit.org/show_bug.cgi?id=97818
969 Reviewed by Ojan Vafai.
971 Add a simple linear regression analysis on results page to detect time-dependent distributions.
972 We add a warning sign (inline SVG) when the regression gave us a slope of at least 0.01 and a R^2 of at least 0.6.
973 Also added time-series graphs per run under the bar graphs so that humans can manually inspect them.
975 A nice follow up would be to add some normality test (e.g. Shapiro-Wilk) to detect bi-modal distributions
976 but we probably need to restructure the code to run it asynchronously since normality tests are slow.
978 * resources/results-template.html:
980 2012-09-26 Ryosuke Niwa <rniwa@webkit.org>
982 Use runPerSecond in PerformanceTests/Bindings/typed-array* and event-target-wrapper
983 https://bugs.webkit.org/show_bug.cgi?id=97625
985 Reviewed by Eric Seidel.
987 Use PerfTestRunner.runPerSecond instead of PerfTestRunner.run. Also reduce the fixed number of
988 elements and iterations in these tests by a factor of 10 since runPerSecond can dynamically
989 adjust the number of function calls.
991 * Bindings/event-target-wrapper.html:
992 * Bindings/typed-array-construct-from-array.html:
993 * Bindings/typed-array-construct-from-same-type.html:
994 * Bindings/typed-array-construct-from-typed.html:
995 * Bindings/typed-array-set-from-typed.html:
997 2012-09-25 Antti Koivisto <antti@apple.com>
999 Optimize stylesheet insertions
1000 https://bugs.webkit.org/show_bug.cgi?id=97627
1002 Reviewed by Andreas Kling.
1004 Add synthetic performance test for avoiding style recalcs on stylesheet inserts.
1006 * CSS/StyleSheetInsert.html: Added.
1008 2012-09-25 Ryosuke Niwa <rniwa@webkit.org>
1010 Skip Dromaeo/jslib-modify-jquery.html per bug 95376.
1011 It runs out of memory on Chromium port, and it takes unreasonably long time (~5 minutes)
1012 to run on other ports.
1016 2012-09-20 Ryosuke Niwa <rniwa@webkit.org>
1018 Results page should show indivisual value
1019 https://bugs.webkit.org/show_bug.cgi?id=97178
1021 Reviewed by Tony Chang.
1023 Show indivisual values instead of statistics (min, max, stdev).
1025 * resources/results-template.html:
1027 2012-09-20 Ryosuke Niwa <rniwa@webkit.org>
1029 run-perf-tests should record individual value instead of statistics
1030 https://bugs.webkit.org/show_bug.cgi?id=97155
1032 Reviewed by Hajime Morita.
1034 Report the list of values as "values" so that run-perf-tests can parse them.
1036 * resources/runner.js:
1037 (PerfTestRunner.computeStatistics):
1038 (PerfTestRunner.printStatistics):
1040 2012-09-20 Sheriff Bot <webkit.review.bot@gmail.com>
1042 Unreviewed, rolling out r129091.
1043 http://trac.webkit.org/changeset/129091
1044 https://bugs.webkit.org/show_bug.cgi?id=97205
1046 It broke perf tests everywhere (Requested by Ossy on #webkit).
1048 * resources/runner.js:
1049 (PerfTestRunner.computeStatistics):
1050 (PerfTestRunner.printStatistics):
1052 2012-09-19 Ryosuke Niwa <rniwa@webkit.org>
1054 run-perf-tests should record indivisual value instead of statistics
1055 https://bugs.webkit.org/show_bug.cgi?id=97155
1057 Reviewed by Hajime Morita.
1059 Report the list of values as "values" so that run-perf-tests can parse them.
1061 * resources/runner.js:
1062 (PerfTestRunner.computeStatistics):
1063 (PerfTestRunner.printStatistics):
1065 2012-09-17 Ryosuke Niwa <rniwa@webkit.org>
1067 Perf test results is incomprehensive
1068 https://bugs.webkit.org/show_bug.cgi?id=94668
1070 Reviewed by Eric Seidel.
1072 Overhauled the results page to have a tabular view. Clicking on each row shows a flot graph we used to have.
1073 For each run and test, we show the mean value with the standard deviation along with the percent difference
1074 against the reference run chosen by the user if the difference is statistically significant; it also indicates
1075 whether the new value is progression or not.
1077 The unit of each test is adjusted automatically using SI prefixes (Kilo, Mega, Milli), and rows can be sorted
1078 by each column. Time and memory results are separated into two tabs.
1080 * resources/jquery.tablesorter.min.js: Added.
1081 * resources/results-template.html:
1083 2012-09-14 Ryosuke Niwa <rniwa@webkit.org>
1085 Use performance.webkitNow in PerfTestRunner
1086 https://bugs.webkit.org/show_bug.cgi?id=92826
1088 Reviewed by Eric Seidel.
1090 Use performance.webkitNow with Date.now as a fallback for more accurate time measurements.
1092 * resources/runner.js:
1093 (PerfTestRunner._runner):
1094 (PerfTestRunner._perSecondRunnerIterator):
1096 2012-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
1098 Unreviewed, rolling out r128562.
1099 http://trac.webkit.org/changeset/128562
1100 https://bugs.webkit.org/show_bug.cgi?id=96747
1102 It broke perf tests on Qt and Chromium (Requested by Ossy on
1105 * resources/runner.js:
1106 (PerfTestRunner._runner):
1107 (PerfTestRunner._perSecondRunnerIterator):
1109 2012-09-14 Ryosuke Niwa <rniwa@webkit.org>
1111 Use performance.webkitNow in PerfTestRunner
1112 https://bugs.webkit.org/show_bug.cgi?id=92826
1114 Reviewed by Eric Seidel.
1116 Use performance.webkitNow with Date.now as a fallback for more acurate time measurements.
1118 * resources/runner.js:
1119 (PerfTestRunner._runner):
1120 (PerfTestRunner._perSecondRunnerIterator):
1122 2012-08-23 Ilya Tikhonovsky <loislo@chromium.org>
1124 WebInspector: unreviewed single line test fix.
1126 The test has to open profiles panel explicitly because it is creating lazily.
1128 * inspector/heap-snapshot-performance-test.js:
1130 2012-08-15 Scott Graham <scottmg@chromium.org>
1132 Rename window.internals.fastMallocStatistics to mallocStatistics
1133 https://bugs.webkit.org/show_bug.cgi?id=94033
1135 Reviewed by Adam Barth.
1137 * resources/runner.js:
1138 (PerfTestRunner.storeHeapResults):
1139 (PerfTestRunner.getUsedMallocHeap):
1140 (PerfTestRunner.getAndPrintMemoryStatistics):
1141 (PerfTestRunner.initAndStartLoop):
1143 2012-08-10 Ryosuke Niwa <rniwa@webkit.org>
1145 Unreviewed; fix an insanely silly typo.
1147 * resources/results-template.html:
1149 2012-08-09 Ryosuke Niwa <rniwa@webkit.org>
1151 Another build fix after r125178.
1153 * resources/runner.js:
1155 2012-08-09 Zoltan Horvath <zoltan@webkit.org>
1157 Add memory measurement to balls.html and dromaeorunner.js
1158 https://bugs.webkit.org/show_bug.cgi?id=93617
1160 Reviewed by Adam Barth.
1162 Since we added memory measurement support to performance tests we need to modify these tests.
1164 * Animation/balls.html:
1165 * Dromaeo/resources/dromaeorunner.js:
1167 2012-08-09 Zoltan Horvath <zoltan@webkit.org>
1169 JSHeap and FastMallocStatistics based memory measurement for performance-tests
1170 https://bugs.webkit.org/show_bug.cgi?id=90858
1172 Reviewed Ryosuke Niwa.
1174 Measure the memory usage of the performancetests with the help of the windows.memory.usedJSHeapSize
1175 object and the window.internals.fastMallocStatistics() function call.
1177 * resources/runner.js:
1178 (PerfTestRunner.logStatistics):
1179 (PerfTestRunner.printStatistics):
1180 (PerfTestRunner.storeHeapResults):
1181 (PerfTestRunner.getUsedFastMallocHeap):
1182 (PerfTestRunner.getUsedJSHeap):
1183 (PerfTestRunner.getAndPrintMemoryStatistics):
1184 (PerfTestRunner.ignoreWarmUpAndLog):
1185 (PerfTestRunner.initAndStartLoop):
1187 2012-08-08 Benjamin Poulain <benjamin@webkit.org>
1189 Calling internals from the performance test runner prevents manual running
1190 https://bugs.webkit.org/show_bug.cgi?id=93527
1192 Reviewed by Ryosuke Niwa.
1194 Since r125065, it is impossible to run the Performance tests manually. The problem is
1195 "internals" is not defined when running outside the test runner, so the whole script
1198 * resources/runner.js: Verify is window.internals is available before invoking something on it.
1200 2012-08-08 Zoltan Horvath <zoltan@webkit.org>
1202 Set access to MemoryInfo enabled for the performance tests
1203 https://bugs.webkit.org/show_bug.cgi?id=92498
1205 Reviewed by Ryosuke Niwa.
1207 We need access to console.memory for the memory measurements.
1209 * resources/runner.js:
1211 2012-08-07 Ryosuke Niwa <rniwa@webkit.org>
1213 run-perf-tests should support --no-show-results
1214 https://bugs.webkit.org/show_bug.cgi?id=93409
1216 Reviewed by Dirk Pranke.
1218 Add a flot as a separate file and load it as an external resource.
1220 Also include scripts as external resources from both local filesystem and webkit.org
1221 so that it continues to work regardless of where you put it.
1223 It breaks when someone else receives the file and save it somewhere and doesn't have
1224 a network connection but that seems like a scenario we don't care that much.
1226 * resources/jquery.flot.min.js: Added.
1227 * resources/results-template.html:
1229 2012-08-06 Ryosuke Niwa <rniwa@webkit.org>
1231 run-webkit-tests should have ability to add description to its JSON output
1232 https://bugs.webkit.org/show_bug.cgi?id=93296
1234 Reviewed by Dirk Pranke.
1236 Parse description and show it with the WebKit revision on the results page. Also use bar graphs
1237 instead of line graphs since we're not depicting the time series here per arv's suggestion.
1238 Finally, add the ability to adjust y-axis between the adjusted value and 0 (plot even doesn't adjust
1239 y-axis automatically now) by a mouse click.
1241 * resources/results-template.html:
1243 2012-08-04 Ryosuke Niwa <rniwa@webkit.org>
1245 Use testRunner instead of layoutTestController in performance tests
1246 https://bugs.webkit.org/show_bug.cgi?id=93184
1248 Reviewed by Adam Barth.
1250 * Animation/balls.html:
1251 * Dromaeo/resources/dromaeorunner.js:
1252 * inspector/console-300-lines.html:
1253 * inspector/inspector-startup-time.html:
1254 * inspector/network-append-30-requests.html.broken:
1255 * inspector/show-panel.html.broken:
1256 * resources/runner.js:
1257 (PerfTestRunner.logInfo):
1258 (PerfTestRunner.initAndStartLoop):
1260 2012-08-02 Arnaud Renevier <a.renevier@sisa.samsung.com>
1262 TypedArray set method is slow when called with another typed array
1263 https://bugs.webkit.org/show_bug.cgi?id=92556
1265 Reviewed by Kenneth Russell.
1267 * Bindings/typed-array-set-from-typed.html: Added.
1269 2012-07-28 Ryosuke Niwa <rniwa@webkit.org>
1271 run-perf-tests should generate a results page
1272 https://bugs.webkit.org/show_bug.cgi?id=92575
1274 Reviewed by Eric Seidel.
1276 Add a results page template. This page includes flot and flot.fillbetween.
1277 jQuery and the json that contains test results are injected by run-perf-tests.
1279 * resources/results-template.html: Added.
1281 2012-07-27 Arnaud Renevier <a.renevier@sisa.samsung.com>
1283 use createUninitialized when creating TypedArray from another array
1284 https://bugs.webkit.org/show_bug.cgi?id=92518
1286 Reviewed by Kenneth Russell.
1288 * Bindings/typed-array-construct-from-array.html: Added.
1290 2012-07-27 Ryosuke Niwa <rniwa@webkit.org>
1292 Add more Russian replay performance tests
1293 https://bugs.webkit.org/show_bug.cgi?id=92462
1295 Reviewed by Tony Chang.
1297 Add more Russian sites as suggested by loislo.
1299 * Replay/Russian/lenta.ru.replay: Added.
1300 * Replay/Russian/www.ixbt.com.replay: Added.
1301 * Replay/Russian/www.kp.ru.replay: Added.
1302 * Replay/Russian/www.liveinternet.ru.replay: Added.
1303 * Replay/Russian/www.pravda.ru.replay: Added.
1305 2012-07-26 Arnaud Renevier <a.renevier@sisa.samsung.com>
1307 constructing TypedArray from another TypedArray is slow
1308 https://bugs.webkit.org/show_bug.cgi?id=90838
1310 Reviewed by Kenneth Russell.
1312 * Bindings/typed-array-construct-from-same-type.html: Added.
1313 * Bindings/typed-array-construct-from-typed.html: Added.
1315 2012-07-25 Ryosuke Niwa <rniwa@webkit.org>
1317 Import more replay performance tests from Mozilla's Tp5 test suite
1318 https://bugs.webkit.org/show_bug.cgi?id=92229
1320 Reviewed by Andreas Kling.
1322 Add more replay tests based on Mozilla's Tp5 test suite [1]. Unfortunately,
1323 we cannot import all URLs because some of them are not archived on archive.org
1324 and others do not replay well on web-page-replay. Nonethless, we're still adding
1325 60+ URLs in this patch.
1327 [1] http://people.mozilla.org/~jmaher/tp5.manifest
1329 * Replay/Chinese: Added.
1330 * Replay/Chinese/chinaz.com.replay: Added.
1331 * Replay/Chinese/www.163.com.replay: Added.
1332 * Replay/Chinese/www.alipay.com.replay: Added.
1333 * Replay/Chinese/www.baidu.com.replay: Added.
1334 * Replay/Chinese/www.csdn.net.replay: Added.
1335 * Replay/Chinese/www.douban.com.replay: Added.
1336 * Replay/Chinese/www.hao123.com.replay: Added.
1337 * Replay/Chinese/www.xinhuanet.com.replay: Added.
1338 * Replay/Chinese/www.xunlei.com.replay: Added.
1339 * Replay/Chinese/www.youku.com.replay: Added.
1340 * Replay/English: Added.
1341 * Replay/English/beatonna.livejournal.com.replay: Added.
1342 * Replay/English/cakewrecks.blogspot.com.replay: Added.
1343 * Replay/English/chemistry.about.com.replay: Added.
1344 * Replay/English/digg.com.replay: Added.
1345 * Replay/English/en.wikipedia.org-rorschach_test.replay: Added.
1346 * Replay/English/icanhascheezburger.com.replay: Added.
1347 * Replay/English/imgur.com-gallery.replay: Added.
1348 * Replay/English/online.wsj.com.replay: Added.
1349 * Replay/English/stockoverflow.com-best-comment.replay: Added.
1350 * Replay/English/www.alibaba.com.replay: Added.
1351 * Replay/English/www.amazon.com-kindle.replay: Added.
1352 * Replay/English/www.apple.com.replay: Added.
1353 * Replay/English/www.cnet.com.replay: Added.
1354 * Replay/English/www.dailymotion.com.replay: Added.
1355 * Replay/English/www.ehow.com-prevent-fire.replay: Added.
1356 * Replay/English/www.filestube.com-amy-adams.replay: Added.
1357 * Replay/English/www.foxnews.replay: Added.
1358 * Replay/English/www.huffingtonpost.com.replay: Added.
1359 * Replay/English/www.imdb.com-twilight.replay: Added.
1360 * Replay/English/www.mozilla.com-all-order.replay: Added.
1361 * Replay/English/www.php.net.replay: Added.
1362 * Replay/English/www.reddit.com.replay: Added.
1363 * Replay/English/www.telegraph.co.uk.replay: Added.
1364 * Replay/English/www.w3.org-htmlcss.replay: Added.
1365 * Replay/English/www.w3schools.com-html.replay: Added.
1366 * Replay/English/www.youtube.com-music.replay: Added.
1367 * Replay/French: Added.
1368 * Replay/French/www.orange.fr.replay: Added.
1369 * Replay/German: Added.
1370 * Replay/Italian: Added.
1371 * Replay/Italian/www.repubblica.it.replay: Added.
1372 * Replay/Japanese/entameblog.seesaa.net.replay: Added.
1373 * Replay/Japanese/www.hatena.ne.jp.replay: Added.
1374 * Replay/Japanese/www.nicovideo.jp.replay: Added.
1375 * Replay/Korean: Added.
1376 * Replay/Korean/www.naver.com.replay: Added.
1377 * Replay/Persian: Added.
1378 * Replay/Persian/blogfa.com.replay: Added.
1379 * Replay/Polish: Added.
1380 * Replay/Polish/www.wp.pl.replay: Added.
1381 * Replay/Portuguese: Added.
1382 * Replay/Portuguese/www.uol.com.br.replay: Added.
1383 * Replay/Russian: Added.
1384 * Replay/Russian/vkontakte.ru-help.replay: Added.
1385 * Replay/Russian/www.rambler.ru.replay: Added.
1386 * Replay/Russian/www.ucoz.ru.replay: Added.
1387 * Replay/Russian/www.yandex.ru.replay: Added.
1388 * Replay/Spanish: Added.
1389 * Replay/Spanish/www.taringa.net.replay: Added.
1391 2012-07-24 Ryosuke Niwa <rniwa@webkit.org>
1393 Add some Japanese and Swedish websites to replay tests
1394 https://bugs.webkit.org/show_bug.cgi?id=92076
1396 Reviewed by Andreas Kling.
1398 Added new replay tests as follows.
1400 * Replay/Japanese: Added.
1401 * Replay/Japanese/2ch.net-newsplus.replay: Added.
1402 * Replay/Japanese/ja.wikipedia.org.replay: Added.
1403 * Replay/Japanese/www.livedoor.com.replay: Added.
1404 * Replay/Japanese/www.rakuten.co.jp.replay: Added.
1405 * Replay/Japanese/www.yahoo.co.jp.replay: Added.
1406 * Replay/Swedish: Added.
1407 * Replay/Swedish/www.flashback.se.replay: Added.
1408 * Replay/Swedish/www.tradera.com.replay: Added.
1409 * Replay/www.techcrunch.com.replay: Added.
1411 2012-07-18 MORITA Hajime <morrita@google.com>
1413 Add window resize benchmark
1414 https://bugs.webkit.org/show_bug.cgi?id=91070
1416 Reviewed by Ryosuke Niwa.
1418 Added window-resize.html which exercise html5.html. This test
1419 resizes the window and forces re-layout repeatedly.
1421 * Interactive/resources/window-resize.js: Added.
1422 * Interactive/window-resize.html: Added.
1423 * Parser/resources/html5.html: Modified to inject driver scripts.
1425 2012-07-11 Philip Rogers <pdr@google.com>
1427 Add a performance test for hit testing in SVG
1428 https://bugs.webkit.org/show_bug.cgi?id=90811
1430 Reviewed by Ryosuke Niwa.
1432 The shape rendering code is changing a lot and I'd like a performance test to
1433 make sure we don't regress, and to track our improvements.
1435 Performance results in my Linux desktop:
1436 RESULT SVG: SvgHitTesting= 105.0 ms
1437 median= 103.5 ms, stdev= 4.60434577329 ms, min= 101.0 ms, max= 116.0 ms
1439 RESULT SVG: SvgHitTesting= 97.8 ms
1440 median= 96.5 ms, stdev= 2.67581763205 ms, min= 95.0 ms, max= 102.0 ms
1442 RESULT SVG: SvgHitTesting= 104.3 ms
1443 median= 104.0 ms, stdev= 1.41774468788 ms, min= 102.0 ms, max= 107.0 ms
1445 RESULT SVG: SvgHitTesting= 103.6 ms
1446 median= 103.5 ms, stdev= 1.2 ms, min= 102.0 ms, max= 106.0 ms
1448 * SVG/SvgHitTesting.html: Added.
1450 2012-07-03 Jan Keromnes <janx@linux.com>
1452 Web Inspector: WebInspector.TextViewer should be renamed WebInspector.TextEditor
1453 https://bugs.webkit.org/show_bug.cgi?id=89939
1455 Reviewed by Vsevolod Vlasov.
1457 * inspector/first-open-scripts.html.broken:
1459 2012-06-22 Philip Rogers <pdr@google.com>
1461 Make SvgCubics performance test more consistent
1462 https://bugs.webkit.org/show_bug.cgi?id=89778
1464 Reviewed by Ryosuke Niwa.
1466 Previously this test ran twice for each iteration, but this led to inconsistent repaints.
1467 This change updates the test to only run once per iteration, and adds even more cubics
1468 so that the test runs consistently in the 80ms range on my Linux desktop.
1470 Performance results on my desktop:
1471 RESULT SVG: SvgCubics= 80.5 ms
1472 median= 82.0 ms, stdev= 3.04138126515 ms, min= 75.0 ms, max= 85.0 ms
1474 RESULT SVG: SvgCubics= 80.1 ms
1475 median= 81.0 ms, stdev= 4.27668095607 ms, min= 74.0 ms, max= 88.0 ms
1477 RESULT SVG: SvgCubics= 81.45 ms
1478 median= 83.0 ms, stdev= 4.01839520207 ms, min= 75.0 ms, max= 89.0 ms
1480 RESULT SVG: SvgCubics= 78.9 ms
1481 median= 80.0 ms, stdev= 4.75289385533 ms, min= 72.0 ms, max= 87.0 ms
1483 * SVG/SvgCubics.html:
1485 2012-06-22 Ilya Tikhonovsky <loislo@chromium.org>
1487 Web Inspector: partially instrument DOM Tree native memory.
1488 https://bugs.webkit.org/show_bug.cgi?id=89568
1490 This patch adds MemoryInstrumentation class that counts all visited
1491 objects and calls reportMemoryUsage.
1493 Reviewed by Yury Semikhatsky.
1495 * inspector/native-memory-snapshot.html:
1497 2012-06-21 Kentaro Hara <haraken@chromium.org>
1499 Add a perf-test for innerHTML setter for a large DOM tree
1500 https://bugs.webkit.org/show_bug.cgi?id=89723
1502 Reviewed by Ryosuke Niwa.
1504 We want a benchmark for innerHTML setter for the following reason:
1506 - innerHTML setter is widely used in the real world.
1507 - I am planning to optimize innerHTML setter in the near future.
1508 - I want to use the innerHTML setter benchmark for the patch of bug 88834.
1510 Performance results in my Linux desktop:
1512 RESULT Parser: innerHTML-setter= 289.782649995 runs/s
1513 median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s
1515 RESULT Parser: innerHTML-setter= 289.020706132 runs/s
1516 median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s
1518 RESULT Parser: innerHTML-setter= 288.912051701 runs/s
1519 median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s
1521 RESULT Parser: innerHTML-setter= 288.644186666 runs/s
1522 median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s
1524 RESULT Parser: innerHTML-setter= 288.698714577 runs/s
1525 median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s
1527 * Parser/innerHTML-setter.html: Added.
1529 2012-06-20 Philip Rogers <pdr@google.com>
1531 Add a performance test for paths in SVG
1532 https://bugs.webkit.org/show_bug.cgi?id=89547
1534 Reviewed by Ryosuke Niwa.
1536 This change adds the first performance test for SVG paths.
1537 In the test we modify complex cubic paths in several ways, testing:
1538 transformations, clipping, d attribute changes, stroke properties,
1539 text on a path, and opacity.
1541 Sample test results on my Linux desktop:
1542 RESULT SVG: SvgCubics= 68.85 ms
1543 median= 69.5 ms, stdev= 4.70398767005 ms, min= 56.0 ms, max= 75.0 ms
1545 RESULT SVG: SvgCubics= 68.4 ms
1546 median= 69.0 ms, stdev= 3.51283361405 ms, min= 59.0 ms, max= 74.0 ms
1548 RESULT SVG: SvgCubics= 66.95 ms
1549 median= 67.0 ms, stdev= 3.4420197559 ms, min= 59.0 ms, max= 74.0 ms
1551 RESULT SVG: SvgCubics= 70.2 ms
1552 median= 71.5 ms, stdev= 3.23419232576 ms, min= 63.0 ms, max= 74.0 ms
1555 * SVG/SvgCubics.html: Added.
1557 2012-06-20 Tom Zakrajsek <tomz@codeaurora.org>
1559 Import themaninblue.com/experiment/AnimationBenchmark/ as performance tests
1560 https://bugs.webkit.org/show_bug.cgi?id=78789
1562 Reviewed by Ryosuke Niwa.
1564 Added PerfTestRunner fixture around it.
1566 * Animation/balls.html: Added.
1568 2012-06-18 Ilya Tikhonovsky <loislo@chromium.org>
1570 Web Inspector: native memory snapshot performance and coverage test implementation.
1571 https://bugs.webkit.org/show_bug.cgi?id=89363
1573 We have to track the performance of MemoryAgent.getProcessMemoryDistribution.
1574 Also this test will work as a burn down chart for Unknown memory metric.
1576 Reviewed by Pavel Feldman.
1578 * inspector/native-memory-snapshot.html: Added.
1579 * inspector/performance-test.js:
1580 (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer):
1581 (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.reportSize):
1582 (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
1583 (initialize_TimeTracker.InspectorTest.runPerformanceTest):
1585 2012-06-05 Alexei Filippov <alexeif@chromium.org>
1587 Web Inspector: serialize edge counts instead of indexes in heap snapshot
1588 https://bugs.webkit.org/show_bug.cgi?id=88324
1590 The serialized node structure currently holds an index
1591 of its first containment edge in the edges array.
1592 The index can be quite big (up to 7 digits for large snapshots).
1593 The patch changes the serialization format to pass
1594 node containment edge count instead. For most nodes the count
1595 is just a single digit number.
1596 This reduces serialized snapshot size and therefore its transfer time.
1598 Reviewed by Yury Semikhatsky.
1600 * inspector/heap-snapshot-performance-test.js:
1602 2012-06-04 Alexei Filippov <alexeif@chromium.org>
1604 Web Inspector: speed up _calculateRetainedSizes function
1605 https://bugs.webkit.org/show_bug.cgi?id=87863
1607 Reviewed by Yury Semikhatsky.
1609 * inspector/heap-snapshot-advanced.html: Added.
1610 * inspector/heap-snapshot-performance-test.js: Copied from PerformanceTests/inspector/heap-snapshot.html.
1611 (test.performanceTest.step0):
1612 (test.performanceTest.step1):
1613 (test.performanceTest.step2):
1614 (test.performanceTest.cleanup):
1615 (test.performanceTest.done):
1616 (test.performanceTest):
1618 * inspector/heap-snapshot.html:
1620 2012-06-03 Kentaro Hara <haraken@chromium.org>
1622 [perf-test] Add a benchmark of querySelector() for an element that appears in the depths in the document
1623 https://bugs.webkit.org/show_bug.cgi?id=88202
1625 Reviewed by Ryosuke Niwa.
1627 query-selector-first.html tests querySelector() for an element
1628 that appears at the head of the document. query-selector-last.html
1629 tests querySelector() for an element that appears at the tail of
1630 the document. In addition, we want a benchmark of querySelector()
1631 for an element that appears in the depths in the document.
1633 Test results in my Linux desktop:
1635 RESULT Parser: query-selector-deep= 460.776980611 runs/s
1636 median= 460.947503201 runs/s, stdev= 1.72274941942 runs/s, min= 455.696202532 runs/s, max= 463.32046332 runs/s
1638 RESULT Parser: query-selector-deep= 458.925050915 runs/s
1639 median= 459.183673469 runs/s, stdev= 1.47930124139 runs/s, min= 454.545454545 runs/s, max= 460.947503201 runs/s
1641 RESULT Parser: query-selector-deep= 461.866981491 runs/s
1642 median= 461.538461538 runs/s, stdev= 1.14613123359 runs/s, min= 459.183673469 runs/s, max= 463.917525773 runs/s
1644 RESULT Parser: query-selector-deep= 453.922010788 runs/s
1645 median= 454.258855898 runs/s, stdev= 1.77279123317 runs/s, min= 447.204968944 runs/s, max= 455.696202532 runs/s
1647 RESULT Parser: query-selector-deep= 454.666321221 runs/s
1648 median= 454.545454545 runs/s, stdev= 1.65775667417 runs/s, min= 451.127819549 runs/s, max= 456.852791878 runs/s
1650 * Parser/query-selector-deep.html: Added.
1652 2012-06-03 Kentaro Hara <haraken@chromium.org>
1654 [perf-test] Make query-selector-last.html more realistic
1655 https://bugs.webkit.org/show_bug.cgi?id=88203
1657 Reviewed by Ryosuke Niwa.
1659 query-selector-last.html tests querySelector() for an element
1660 that appears after 1000 div elements, all of which have the same
1661 id and class. To test the performance of querySelector() under
1662 a lot of ids and classes, we should make the ids and classes of
1663 the 1000 elements different.
1665 This patch degrades the performance of query-selector-last.html
1669 RESULT Parser: query-selector-last= 476.382274152 runs/s
1670 median= 476.821192053 runs/s, stdev= 1.14578875814 runs/s, min= 474.308300395 runs/s, max= 478.087649402 runs/s
1672 RESULT Parser: query-selector-last= 478.423061861 runs/s
1673 median= 478.723404255 runs/s, stdev= 1.54876867255 runs/s, min= 473.684210526 runs/s, max= 481.347773767 runs/s
1675 RESULT Parser: query-selector-last= 479.849287174 runs/s
1676 median= 480.0 runs/s, stdev= 1.69849752498 runs/s, min= 475.561426684 runs/s, max= 481.927710843 runs/s
1678 RESULT Parser: query-selector-last= 476.765438846 runs/s
1679 median= 477.453580902 runs/s, stdev= 1.8724488664 runs/s, min= 471.821756225 runs/s, max= 478.723404255 runs/s
1681 RESULT Parser: query-selector-last= 481.715340644 runs/s
1682 median= 481.637742305 runs/s, stdev= 1.81446361145 runs/s, min= 475.561426684 runs/s, max= 483.675937122 runs/s
1685 RESULT Parser: query-selector-last= 458.866623582 runs/s
1686 median= 459.183673469 runs/s, stdev= 1.48881464737 runs/s, min= 453.972257251 runs/s, max= 460.947503201 runs/s
1688 RESULT Parser: query-selector-last= 460.363532897 runs/s
1689 median= 460.358056266 runs/s, stdev= 1.58512056995 runs/s, min= 456.273764259 runs/s, max= 462.130937099 runs/s
1691 RESULT Parser: query-selector-last= 457.727448451 runs/s
1692 median= 458.015267176 runs/s, stdev= 1.23681915516 runs/s, min= 453.972257251 runs/s, max= 459.183673469 runs/s
1694 RESULT Parser: query-selector-last= 465.57336853 runs/s
1695 median= 465.717981889 runs/s, stdev= 1.6616925374 runs/s, min= 460.947503201 runs/s, max= 467.532467532 runs/s
1697 RESULT Parser: query-selector-last= 459.836252019 runs/s
1698 median= 459.770114943 runs/s, stdev= 1.84485630505 runs/s, min= 455.696202532 runs/s, max= 462.724935733 runs/s
1700 * Parser/query-selector-last.html:
1702 2012-06-01 Ryosuke Niwa <rniwa@webkit.org>
1704 Add public page loading performance tests using web-page-replay
1705 https://bugs.webkit.org/show_bug.cgi?id=84008
1707 Reviewed by Dirk Pranke.
1709 Add replay tests for google.com and youtube.com as examples.
1712 * Replay/www.google.com.replay: Added.
1713 * Replay/www.youtube.com.replay: Added.
1715 2012-05-30 Kentaro Hara <haraken@chromium.org>
1717 [perf-test] Add a benchmark for querySelector()
1718 https://bugs.webkit.org/show_bug.cgi?id=87742
1720 Reviewed by Ryosuke Niwa.
1722 Now I am optimizing querySelector() (bug 87625).
1723 This patch adds a performance test for querySelector().
1724 query-selector-first.html queries an element that appears
1725 at the head of the document. On the other hand,
1726 query-selector-last.html queries an element that appears
1727 at the tail of the document.
1729 Test results in my desktop:
1731 [query-selector-first.html]
1732 RESULT Parser: query-selector-first= 252.339803014 runs/s
1733 median= 253.646265594 runs/s, stdev= 2.32610873209 runs/s, min= 248.138957816 runs/s, max= 254.777070064 runs/s
1735 RESULT Parser: query-selector-first= 252.688468897 runs/s
1736 median= 252.684876579 runs/s, stdev= 3.60008778708 runs/s, min= 246.002460025 runs/s, max= 258.397932817 runs/s
1738 RESULT Parser: query-selector-first= 253.466019656 runs/s
1739 median= 254.129606099 runs/s, stdev= 1.78002675664 runs/s, min= 247.831474597 runs/s, max= 254.777070064 runs/s
1741 RESULT Parser: query-selector-first= 256.245078189 runs/s
1742 median= 257.06940874 runs/s, stdev= 2.84722072201 runs/s, min= 249.687890137 runs/s, max= 259.74025974 runs/s
1744 RESULT Parser: query-selector-first= 252.203100497 runs/s
1745 median= 252.047989175 runs/s, stdev= 1.75233446036 runs/s, min= 248.138957816 runs/s, max= 255.427841635 runs/s
1747 [query-selector-last.html]
1748 RESULT Parser: query-selector-last= 356.009616076 runs/s
1749 median= 355.781448539 runs/s, stdev= 0.841519086864 runs/s, min= 354.430379747 runs/s, max= 358.056265985 runs/s
1751 RESULT Parser: query-selector-last= 360.735271001 runs/s
1752 median= 361.057532424 runs/s, stdev= 1.12253219867 runs/s, min= 358.514724712 runs/s, max= 362.225097025 runs/s
1754 RESULT Parser: query-selector-last= 359.598592463 runs/s
1755 median= 359.435173299 runs/s, stdev= 0.816538258728 runs/s, min= 358.056265985 runs/s, max= 360.824742268 runs/s
1757 RESULT Parser: query-selector-last= 357.260651715 runs/s
1758 median= 357.598978289 runs/s, stdev= 1.17393159885 runs/s, min= 353.982300885 runs/s, max= 358.974358974 runs/s
1760 RESULT Parser: query-selector-last= 351.696240713 runs/s
1761 median= 351.980025916 runs/s, stdev= 1.14200564038 runs/s, min= 348.692403487 runs/s, max= 353.535353535 runs/s
1763 * Parser/query-selector-first.html: Added.
1764 * Parser/query-selector-last.html: Added.
1766 2012-05-25 Ilya Tikhonovsky <loislo@chromium.org>
1768 Web Inspector: HeapSnapshot: introduce performance counter for HeapSnapshotConstructorsDataGrid._aggregatesReceived method.
1769 https://bugs.webkit.org/show_bug.cgi?id=87393
1771 Reviewed by Yury Semikhatsky.
1773 * inspector/heap-snapshot.html:
1775 2012-05-25 Ilya Tikhonovsky <loislo@chromium.org>
1777 Web Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th times.
1778 https://bugs.webkit.org/show_bug.cgi?id=87476
1780 The time tracking wrappers were attaching on each run.
1782 Reviewed by Yury Semikhatsky.
1784 * inspector/heap-snapshot.html:
1786 2012-05-22 Ilya Tikhonovsky <loislo@chromium.org>
1788 Web Inspector: HeapProfiler: upstream retainedSize calculation.
1789 https://bugs.webkit.org/show_bug.cgi?id=87107
1791 This patch upstreams V8::HeapSnapshotGenerator::CalculateRetainedSizes function to front-end.
1792 After that we will be able to drop retainedSize field from the snapshot serialized data.
1793 See meta-bug https://bugs.webkit.org/show_bug.cgi?id=87089
1795 Reviewed by Yury Semikhatsky.
1797 * inspector/heap-snapshot.html: add counter for the _calculateRetainedSize method.
1799 2012-05-21 Kent Tamura <tkent@chromium.org>
1801 Add performance tests for <textarea>
1802 https://bugs.webkit.org/show_bug.cgi?id=86994
1804 Reviewed by Ryosuke Niwa.
1806 * DOM/textarea-dom.html: Added.
1807 * DOM/textarea-edit.html: Added.
1808 * Parser/textarea-parsing.html: Added.
1810 2012-05-18 Ilya Tikhonovsky <loislo@chromium.org>
1812 Web Inspector: upstream build dominators tree procedure from v8.
1813 https://bugs.webkit.org/show_bug.cgi?id=86640
1815 The idea is to reduce transfer size and move all the post-processing steps to the front-end.
1816 The JS implementation is ~1.5 times slower.
1818 Reviewed by Yury Semikhatsky.
1820 Covered by existing tests and performance tests.
1822 * inspector/heap-snapshot.html:
1824 2012-05-18 Kentaro Hara <haraken@chromium.org>
1826 [perf-test] Remove Bindings/dom-attributes.html
1827 https://bugs.webkit.org/show_bug.cgi?id=86820
1829 Reviewed by Ryosuke Niwa.
1831 Bindings/dom-attributes.html is just a collection of random
1832 DOM attributes and methods. Now we've added more reasonable
1833 micro benchmarks by classifying DOM binding call paths, we
1834 can remove Bindings/dom-attributes.html.
1836 * Bindings/dom-attributes.html: Removed.
1838 2012-05-18 Kentaro Hara <haraken@chromium.org>
1840 [perf-test] Add a binding benchmark for getElementById() for an undefined id
1841 https://bugs.webkit.org/show_bug.cgi?id=86812
1843 Reviewed by Ryosuke Niwa.
1845 We should remove Bindings/dom-attributes.html and instead add more
1846 reasonable micro benchmarks by classifying DOM binding call paths.
1848 This patch adds a benchmark for document.getElementById() for an undefined id.
1849 This benchmark covers 'getElementById (not in document)' in Dromaeo/dom-query.html,
1850 and other Node-query methods that return a null.'
1852 (Note: This benchmark is slower than document.getElementById() for a defined id.
1853 We will fix the performance issue soon.)
1855 Test results in my Linux desktop:
1857 RESULT Bindings: undefined-get-element-by-id= 271.945751345 runs/s
1858 median= 273.122389532 runs/s, stdev= 6.78219237299 runs/s, min= 257.4002574 runs/s, max= 281.690140845 runs/s
1860 RESULT Bindings: undefined-get-element-by-id= 269.105872408 runs/s
1861 median= 268.948655257 runs/s, stdev= 5.73707323755 runs/s, min= 257.4002574 runs/s, max= 278.128950695 runs/s
1863 RESULT Bindings: undefined-get-element-by-id= 269.987513372 runs/s
1864 median= 272.952853598 runs/s, stdev= 5.30252336078 runs/s, min= 255.754475703 runs/s, max= 273.97260274 runs/s
1866 RESULT Bindings: undefined-get-element-by-id= 270.169625901 runs/s
1867 median= 271.604938272 runs/s, stdev= 5.29502391906 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
1869 RESULT Bindings: undefined-get-element-by-id= 269.054631422 runs/s
1870 median= 267.966292802 runs/s, stdev= 6.27197240579 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
1872 * Bindings/undefined-get-element-by-id.html: Added.
1874 2012-05-18 Kentaro Hara <haraken@chromium.org>
1876 [perf-test] Add a binding benchmark for getElementsByTagName()
1877 https://bugs.webkit.org/show_bug.cgi?id=86810
1879 Reviewed by Ryosuke Niwa.
1881 We should remove Bindings/dom-attributes.html and instead add more
1882 reasonable micro benchmarks by classifying DOM binding call paths.
1884 This patch adds a benchmark for document.getElementsByTagName().
1885 This benchmark covers 'getElementsByTagName (not in document)',
1886 'getElementsByTagName', 'getElementsByName (not in document)'
1887 and 'getElementsByName' in Dromaeo/dom-query.html, and other DOM
1888 methods that return a NodeList.
1890 Test results in my Linux desktop:
1892 RESULT Bindings: get-elements-by-tag-name= 364.542328875 runs/s
1893 median= 366.972477064 runs/s, stdev= 5.25387955333 runs/s, min= 351.317440402 runs/s, max= 368.421052632 runs/s
1895 RESULT Bindings: get-elements-by-tag-name= 364.341569369 runs/s
1896 median= 366.492146597 runs/s, stdev= 4.867374197 runs/s, min= 352.644836272 runs/s, max= 367.936925099 runs/s
1898 RESULT Bindings: get-elements-by-tag-name= 363.924242967 runs/s
1899 median= 366.013071895 runs/s, stdev= 5.16768212289 runs/s, min= 351.317440402 runs/s, max= 367.936925099 runs/s
1901 RESULT Bindings: get-elements-by-tag-name= 365.332594438 runs/s
1902 median= 367.454068241 runs/s, stdev= 6.17046918572 runs/s, min= 350.0 runs/s, max= 370.37037037 runs/s
1904 RESULT Bindings: get-elements-by-tag-name= 363.999514324 runs/s
1905 median= 366.492146597 runs/s, stdev= 5.31235674905 runs/s, min= 350.877192982 runs/s, max= 368.421052632 runs/s
1907 * Bindings/get-elements-by-tag-name.html: Added.
1909 2012-05-18 Kentaro Hara <haraken@chromium.org>
1911 [perf-test] Add 7 micro benchmarks for DOM bindings
1912 https://bugs.webkit.org/show_bug.cgi?id=86816
1914 Reviewed by Ryosuke Niwa.
1916 We should remove Bindings/dom-attributes.html and instead add more
1917 reasonable micro benchmarks by classifying DOM binding call paths.
1918 This patch adds seven micro benchmarks for DOM bindings.
1920 id-getter.html covers 'element.property' in Dromaeo/dom-attr.html,
1921 'innerHTML' in Dromaeo/dom-modify.html, and other DOM attributes that
1924 id-setter.html covers 'element.property = value' in Dromaeo/dom-attr.html,
1925 and other DOM attributes that sets a String.
1927 undefined-id-getter.html covers undefined DOM attributes that return an empty String.
1929 append-child.html covers 'appendChild' and 'removeChild' in Dromaeo/dom-modify.html.
1931 insert-before.html covers 'insertBefore' in Dromaeo/dom-modify.html and replaceChild().
1933 create-element.html covers 'createElement', 'createTextNode' and 'cloneNode'
1934 in Dromaeo/dom-modify.html, and other DOM methods that return a new Node object.
1936 node-list-access.html covers 'childNodes' in Dromaeo/dom-traverse.html,
1937 and other DOM attributes that access NodeList.
1939 Test results in my Linux desktop:
1942 RESULT Bindings: id-getter= 550.517821097 runs/s
1943 median= 550.688360451 runs/s, stdev= 0.970723739106 runs/s, min= 548.628428928 runs/s, max= 552.070263488 runs/s
1945 RESULT Bindings: id-getter= 550.655839847 runs/s
1946 median= 550.688360451 runs/s, stdev= 1.03312821884 runs/s, min= 549.313358302 runs/s, max= 552.070263488 runs/s
1948 RESULT Bindings: id-getter= 550.277753355 runs/s
1949 median= 550.344180225 runs/s, stdev= 1.19960683464 runs/s, min= 547.945205479 runs/s, max= 552.070263488 runs/s
1951 RESULT Bindings: id-getter= 550.072271009 runs/s
1952 median= 550.344180225 runs/s, stdev= 1.38925152131 runs/s, min= 547.263681592 runs/s, max= 552.070263488 runs/s
1954 RESULT Bindings: id-getter= 548.802050235 runs/s
1955 median= 548.628428928 runs/s, stdev= 1.18244513683 runs/s, min= 545.905707196 runs/s, max= 550.688360451 runs/s
1958 RESULT Bindings: id-setter= 211.370591663 runs/s
1959 median= 210.803689065 runs/s, stdev= 1.4555795889 runs/s, min= 209.973753281 runs/s, max= 214.285714286 runs/s
1961 RESULT Bindings: id-setter= 215.439081352 runs/s
1962 median= 214.797136038 runs/s, stdev= 1.50920388121 runs/s, min= 213.049267643 runs/s, max= 218.446601942 runs/s
1964 RESULT Bindings: id-setter= 216.721698466 runs/s
1965 median= 215.956886352 runs/s, stdev= 1.54090749644 runs/s, min= 214.285714286 runs/s, max= 219.78021978 runs/s
1967 RESULT Bindings: id-setter= 216.343019087 runs/s
1968 median= 215.827338129 runs/s, stdev= 1.46619894553 runs/s, min= 215.053763441 runs/s, max= 218.97810219 runs/s
1970 RESULT Bindings: id-setter= 216.799288017 runs/s
1971 median= 215.956886352 runs/s, stdev= 1.49100776978 runs/s, min= 215.311004785 runs/s, max= 219.78021978 runs/s
1973 [undefined-id-getter]
1974 RESULT Bindings: undefined-id-getter= 494.104255241 runs/s
1975 median= 494.132368875 runs/s, stdev= 1.13092821109 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
1977 RESULT Bindings: undefined-id-getter= 493.921802916 runs/s
1978 median= 493.827160494 runs/s, stdev= 1.25097443119 runs/s, min= 490.196078431 runs/s, max= 495.662949195 runs/s
1980 RESULT Bindings: undefined-id-getter= 491.976485667 runs/s
1981 median= 492.004920049 runs/s, stdev= 0.947090576896 runs/s, min= 490.196078431 runs/s, max= 493.827160494 runs/s
1983 RESULT Bindings: undefined-id-getter= 491.987710185 runs/s
1984 median= 494.132368875 runs/s, stdev= 8.66602543327 runs/s, min= 454.545454545 runs/s, max= 495.662949195 runs/s
1986 RESULT Bindings: undefined-id-getter= 494.195515847 runs/s
1987 median= 494.437577256 runs/s, stdev= 1.06135681702 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
1990 RESULT Bindings: append-child= 260.628237026 runs/s
1991 median= 260.926399352 runs/s, stdev= 2.55231060598 runs/s, min= 256.739409499 runs/s, max= 265.604249668 runs/s
1993 RESULT Bindings: append-child= 280.796193436 runs/s
1994 median= 280.791435348 runs/s, stdev= 2.53961321867 runs/s, min= 277.427490542 runs/s, max= 286.085825748 runs/s
1996 RESULT Bindings: append-child= 279.856209714 runs/s
1997 median= 280.25477707 runs/s, stdev= 2.85447647301 runs/s, min= 275.344180225 runs/s, max= 284.237726098 runs/s
1999 RESULT Bindings: append-child= 280.834502714 runs/s
2000 median= 280.25477707 runs/s, stdev= 2.67738046429 runs/s, min= 277.427490542 runs/s, max= 287.206266319 runs/s
2002 RESULT Bindings: append-child= 274.723872106 runs/s
2003 median= 273.291925466 runs/s, stdev= 3.03671746706 runs/s, min= 272.614622057 runs/s, max= 282.413350449 runs/s
2006 RESULT Bindings: insert-before= 180.986913006 runs/s
2007 median= 180.878552972 runs/s, stdev= 0.758038687299 runs/s, min= 180.18018018 runs/s, max= 183.968462549 runs/s
2009 RESULT Bindings: insert-before= 186.339916144 runs/s
2010 median= 186.170212766 runs/s, stdev= 0.869022097127 runs/s, min= 185.676392573 runs/s, max= 189.798339265 runs/s
2012 RESULT Bindings: insert-before= 189.45344838 runs/s
2013 median= 189.349112426 runs/s, stdev= 0.811854866567 runs/s, min= 187.79342723 runs/s, max= 192.539109507 runs/s
2015 RESULT Bindings: insert-before= 189.363295991 runs/s
2016 median= 189.349112426 runs/s, stdev= 0.75387713097 runs/s, min= 188.014101058 runs/s, max= 192.076830732 runs/s
2018 RESULT Bindings: insert-before= 189.252041642 runs/s
2019 median= 189.349112426 runs/s, stdev= 0.840447225363 runs/s, min= 187.573270809 runs/s, max= 192.076830732 runs/s
2022 RESULT Bindings: create-element= 280.675830077 runs/s
2023 median= 280.701824914 runs/s, stdev= 0.788606343054 runs/s, min= 279.441117764 runs/s, max= 282.542885974 runs/s
2025 RESULT Bindings: create-element= 276.427631436 runs/s
2026 median= 277.227722772 runs/s, stdev= 3.39874667549 runs/s, min= 262.417994377 runs/s, max= 279.162512463 runs/s
2028 RESULT Bindings: create-element= 277.156894411 runs/s
2029 median= 277.227722772 runs/s, stdev= 1.13255119226 runs/s, min= 274.914089347 runs/s, max= 278.884462151 runs/s
2031 RESULT Bindings: create-element= 278.066825356 runs/s
2032 median= 278.191822254 runs/s, stdev= 0.686497782792 runs/s, min= 276.953511375 runs/s, max= 279.162512463 runs/s
2034 RESULT Bindings: create-element= 276.431538109 runs/s
2035 median= 276.406712734 runs/s, stdev= 0.759593662298 runs/s, min= 275.229357798 runs/s, max= 278.053624628 runs/s
2038 RESULT Bindings: node-list-access= 222.747504073 runs/s
2039 median= 222.772277228 runs/s, stdev= 0.789027527555 runs/s, min= 221.674876847 runs/s, max= 224.159402242 runs/s
2041 RESULT Bindings: node-list-access= 220.722448287 runs/s
2042 median= 221.266217576 runs/s, stdev= 1.65463497875 runs/s, min= 217.391304348 runs/s, max= 222.222222222 runs/s
2044 RESULT Bindings: node-list-access= 222.195870443 runs/s
2045 median= 222.222222222 runs/s, stdev= 0.489709262091 runs/s, min= 221.13022113 runs/s, max= 223.048327138 runs/s
2047 RESULT Bindings: node-list-access= 221.431121677 runs/s
2048 median= 221.538545435 runs/s, stdev= 0.608292116087 runs/s, min= 220.048899756 runs/s, max= 222.772277228 runs/s
2050 RESULT Bindings: node-list-access= 219.001367135 runs/s
2051 median= 221.538545435 runs/s, stdev= 4.65773933007 runs/s, min= 209.973753281 runs/s, max= 222.496909765 runs/s
2053 * Bindings/append-child.html: Added.
2054 * Bindings/create-element.html: Added.
2055 * Bindings/id-getter.html: Added.
2056 * Bindings/id-setter.html: Added.
2057 * Bindings/insert-before.html: Added.
2058 * Bindings/node-list-access.html: Added.
2059 * Bindings/undefined-id-getter.html: Added.
2061 2012-05-18 Kentaro Hara <haraken@chromium.org>
2063 [perf-test] Add a binding benchmark for div.setAttribute()
2064 https://bugs.webkit.org/show_bug.cgi?id=86815
2066 Reviewed by Ryosuke Niwa.
2068 We should remove Bindings/dom-attributes.html and instead add more
2069 reasonable micro benchmarks by classifying DOM binding call paths.
2071 This patch adds a benchmark for div.setAttribute(). This benchmark
2072 covers 'setAttribute' in Dromaeo/dom-attr.html and other DOM methods
2073 that return an undefined.
2075 Test results in my Linux desktop:
2077 RESULT Bindings: set-attribute= 793.745073252 runs/s
2078 median= 791.589665765 runs/s, stdev= 6.00467159709 runs/s, min= 785.27607362 runs/s, max= 808.080808081 runs/s
2080 RESULT Bindings: set-attribute= 790.858444164 runs/s
2081 median= 787.918921436 runs/s, stdev= 7.86264953655 runs/s, min= 780.234070221 runs/s, max= 806.04534005 runs/s
2083 RESULT Bindings: set-attribute= 787.277571417 runs/s
2084 median= 784.31372549 runs/s, stdev= 7.45363346657 runs/s, min= 778.588807786 runs/s, max= 804.020100503 runs/s
2086 RESULT Bindings: set-attribute= 782.401393791 runs/s
2087 median= 779.062978802 runs/s, stdev= 6.48250081621 runs/s, min= 777.642770352 runs/s, max= 796.019900498 runs/s
2089 RESULT Bindings: set-attribute= 791.792516608 runs/s
2090 median= 791.556728232 runs/s, stdev= 6.49182980397 runs/s, min= 779.220779221 runs/s, max= 808.080808081 runs/s
2092 * Bindings/set-attribute.html: Added.
2094 2012-05-17 Kentaro Hara <haraken@chromium.org>
2096 [perf-test] Add a binding benchmark for div.getAttribute()
2097 https://bugs.webkit.org/show_bug.cgi?id=86814
2099 Reviewed by Ryosuke Niwa.
2101 We should remove Bindings/dom-attributes.html and instead add more
2102 reasonable micro benchmarks by classifying DOM binding call paths.
2104 This patch adds a benchmark for div.getAttribute(). This benchmark
2105 covers 'getAttribute' in Dromaeo/dom-attr.html, and other DOM methods
2106 that return a String.
2108 Test results in my Linux desktop:
2110 RESULT Bindings: get-attribute= 250.088158538 runs/s
2111 median= 250.469728765 runs/s, stdev= 4.66551901315 runs/s, min= 240.673886883 runs/s, max= 256.739409499 runs/s
2113 RESULT Bindings: get-attribute= 250.209764698 runs/s
2114 median= 250.626959986 runs/s, stdev= 4.12030002477 runs/s, min= 241.254523522 runs/s, max= 255.102040816 runs/s
2116 RESULT Bindings: get-attribute= 248.907532887 runs/s
2117 median= 250.312891114 runs/s, stdev= 3.23173125874 runs/s, min= 240.673886883 runs/s, max= 251.572327044 runs/s
2119 RESULT Bindings: get-attribute= 250.243680844 runs/s
2120 median= 250.783797637 runs/s, stdev= 4.19327170024 runs/s, min= 240.963855422 runs/s, max= 255.102040816 runs/s
2122 RESULT Bindings: get-attribute= 245.329046608 runs/s
2123 median= 244.948040416 runs/s, stdev= 2.24314248534 runs/s, min= 240.384615385 runs/s, max= 248.756218905 runs/s
2125 * Bindings/get-attribute.html: Added.
2127 2012-05-17 Kentaro Hara <haraken@chromium.org>
2129 [perf-test] Add a binding benchmark for getElementById()
2130 https://bugs.webkit.org/show_bug.cgi?id=86808
2132 Reviewed by Ryosuke Niwa.
2134 Currently Bindings/dom-attributes.html is just a collection
2135 of random DOM attributes and methods. We should remove it and
2136 instead add more reasonable micro benchmarks by classifying
2137 DOM binding call paths.
2139 This patch adds a benchmark for document.getElementById(),
2140 which covers other DOM methods that return a Node Object.
2142 The reason why we want to add a benchmark for document.getElementById()
2143 in spite of the fact that Dromaeo/dom-query.html is already testing
2144 document.getElementById(), is that Dromaeo/dom-query.html outputs one
2145 result for several benchmarks (i.e. getElementById().nodeType,
2146 getElementsByTagName()[0].nodeType etc), and thus we cannot observe
2147 regression of getElementById() itself. (Catching regression of
2148 getElementById() would be critical.)
2150 Test results in my Linux desktop:
2152 RESULT Bindings: get-element-by-id= 300.933707795 runs/s
2153 median= 302.267002519 runs/s, stdev= 3.04954648504 runs/s, min= 295.930949445 runs/s, max= 305.34351145 runs/s
2155 RESULT Bindings: get-element-by-id= 302.030324483 runs/s
2156 median= 302.267481977 runs/s, stdev= 1.78518068367 runs/s, min= 298.507462687 runs/s, max= 304.568527919 runs/s
2158 RESULT Bindings: get-element-by-id= 301.993483538 runs/s
2159 median= 302.648171501 runs/s, stdev= 1.87604126626 runs/s, min= 296.662546354 runs/s, max= 304.568527919 runs/s
2161 RESULT Bindings: get-element-by-id= 301.936607982 runs/s
2162 median= 302.45758701 runs/s, stdev= 1.88991087072 runs/s, min= 298.879202989 runs/s, max= 304.955527319 runs/s
2164 RESULT Bindings: get-element-by-id= 301.952234563 runs/s
2165 median= 302.648171501 runs/s, stdev= 1.59929752614 runs/s, min= 299.625468165 runs/s, max= 304.568527919 runs/s
2167 * Bindings/get-element-by-id.html: Added.
2169 2012-05-17 Kentaro Hara <haraken@chromium.org>
2171 [perf-test] Add a benchmark for body.scrollTop
2172 https://bugs.webkit.org/show_bug.cgi?id=86806
2174 Reviewed by Ryosuke Niwa.
2176 Currently Bindings/dom-attributes.html is just a collection of random
2177 DOM attributes and methods. We should remove it and instead add more
2178 reasonable micro benchmarks by classifying DOM binding call paths.
2180 This patch adds a benchmark for body.scrollTop, which covers other
2181 DOM attributes that return small integers.
2183 (Note: Performance optimization for the benchmark will be coming soon.)
2185 Test results in my Linux desktop:
2187 RESULT Bindings: scroll-top= 209.410654239 runs/s
2188 median= 211.64021164 runs/s, stdev= 4.09958741195 runs/s, min= 201.005025126 runs/s, max= 212.483399734 runs/s
2190 RESULT Bindings: scroll-top= 195.651111157 runs/s
2191 median= 196.319018405 runs/s, stdev= 1.77011627406 runs/s, min= 191.846522782 runs/s, max= 197.28729963 runs/s
2192 RESULT Bindings: scroll-top= 200.004907612 runs/s
2193 median= 201.511335013 runs/s, stdev= 3.27455403827 runs/s, min= 193.236714976 runs/s, max= 202.53164557 runs/s
2195 RESULT Bindings: scroll-top= 209.582737512 runs/s
2196 median= 210.803689065 runs/s, stdev= 3.16769655464 runs/s, min= 203.045685279 runs/s, max= 211.920529801 runs/s
2198 RESULT Bindings: scroll-top= 199.924607687 runs/s
2199 median= 201.13144338 runs/s, stdev= 3.11080503619 runs/s, min= 193.003618818 runs/s, max= 202.02020202 runs/s
2201 * Bindings/scroll-top.html: Added.
2203 2012-05-17 Kentaro Hara <haraken@chromium.org>
2205 [perf-test] Add a micro benchmark for div.firstChild getter for an undefined firstChild
2206 https://bugs.webkit.org/show_bug.cgi?id=86725
2208 Reviewed by Ryosuke Niwa.
2210 We are going to remove Bindings/dom-attributes.html and instead add more
2211 reasonable micro benchmarks by classifying DOM binding call paths.
2213 In this bug, we add a micro benchmark for div.firstChild getter for an
2214 undefined firstChild. This benchmark covers other undefined DOM attributes
2217 (Note: In V8, div.firstChild for an undefined firstChild is currently slower
2218 than div.firstChild for a defined firstChild.)
2220 Test results in my Linux desktop:
2222 RESULT Bindings: undefined-first-child= 541.408311042 runs/s
2223 median= 541.205412054 runs/s, stdev= 1.29841219187 runs/s, min= 537.897310513 runs/s, max= 543.209876543 runs/s
2225 RESULT Bindings: undefined-first-child= 541.00750695 runs/s
2226 median= 540.540540541 runs/s, stdev= 0.967521230965 runs/s, min= 539.215686275 runs/s, max= 543.209876543 runs/s
2228 RESULT Bindings: undefined-first-child= 523.630714897 runs/s
2229 median= 523.560209424 runs/s, stdev= 1.01570919645 runs/s, min= 522.193211488 runs/s, max= 525.624178712 runs/s
2231 RESULT Bindings: undefined-first-child= 553.077663588 runs/s
2232 median= 553.459119497 runs/s, stdev= 0.805697397863 runs/s, min= 551.378446115 runs/s, max= 554.156171285 runs/s
2234 RESULT Bindings: undefined-first-child= 541.5401432 runs/s
2235 median= 541.538666618 runs/s, stdev= 0.954301364767 runs/s, min= 539.877300613 runs/s, max= 543.209876543 runs/s
2237 * Bindings/undefined-first-child.html: Added.
2239 2012-05-17 Kentaro Hara <haraken@chromium.org>
2241 [Performance test] Add a micro benchmark for div.firstChild getter
2242 https://bugs.webkit.org/show_bug.cgi?id=86582
2244 Reviewed by Ryosuke Niwa.
2246 We are going to remove Bindings/dom-attributes.html and instead add more
2247 reasonable micro benchmarks by classifying DOM binding call paths.
2249 In this bug, we add a micro benchmark for div.firstChild getter.
2250 This benchmark covers 'firstChild', 'lastChild', 'nextSibling' and
2251 'previousSibling' in Dromaeo/dom-traverse.html, and other DOM attributes
2252 that return a Node object.
2254 Multiple test results in my Linux desktop:
2256 RESULT Bindings: first-child= 798.157160346 runs/s
2257 median= 798.004987531 runs/s, stdev= 1.52006063407 runs/s, min= 796.019900498 runs/s, max= 801.001251564 runs/s
2258 RESULT Bindings: first-child= 797.603608554 runs/s
2259 median= 797.872340426 runs/s, stdev= 2.2522621261 runs/s, min= 791.556728232 runs/s, max= 801.001251564 runs/s
2260 RESULT Bindings: first-child= 798.656295468 runs/s
2261 median= 798.004987531 runs/s, stdev= 1.79367478063 runs/s, min= 797.01120797 runs/s, max= 803.011292346 runs/s
2262 RESULT Bindings: first-child= 797.812784267 runs/s
2263 median= 798.004987531 runs/s, stdev= 2.31766523191 runs/s, min= 791.100123609 runs/s, max= 802.005012531 runs/s
2264 RESULT Bindings: first-child= 797.963311597 runs/s
2265 median= 798.004987531 runs/s, stdev= 2.53014907337 runs/s, min= 789.14919852 runs/s, max= 801.001251564 runs/s
2267 * Bindings/first-child.html: Added.
2269 2012-05-16 Kentaro Hara <haraken@chromium.org>
2271 [Performance test] Support "description" for PerfTestRunner.run and PerfTestRunner.runPerSecond
2272 https://bugs.webkit.org/show_bug.cgi?id=86696
2274 Reviewed by Ryosuke Niwa.
2276 We want to add some description for each PerfTestRunner.run and
2277 PerfTestRunner.runPerSecond, so that people can know what each
2282 $ ./Tools/Scripts/run-perf-tests Bindings/first-child.html
2283 Running Bindings/first-child.html (1 of 1)
2284 DESCRIPTION: Benchmark for DOM attributes that return a Node object.
2285 RESULT Bindings: first-child= 788.359076534 runs/s
2286 median= 797.508097751 runs/s, stdev= 19.0972905207 runs/s, min= 746.666666667 runs/s, max= 801.001251564 runs/s
2288 * resources/runner.js:
2289 (PerfTestRunner.logStatistics):
2290 (PerfTestRunner.printStatistics):
2291 (PerfTestRunner.runPerSecond):
2293 2012-05-16 Yury Semikhatsky <yurys@chromium.org>
2295 Unreviewed. Fix heap profiler performance test after r117234.
2297 * inspector/heap-snapshot.html:
2299 2012-05-14 Ryosuke Niwa <rniwa@webkit.org>
2301 Convert CSS and Parser tests to runs/s tests
2302 https://bugs.webkit.org/show_bug.cgi?id=86399
2304 Reviewed by Ojan Vafai.
2306 Use runPerSecond instead of run to measure results in function calls per second (run/s) instead of time (ms).
2307 This allows us to continue measuring performance reliably even when WebKit's performance improves and results
2308 become too small for Date.now()'s precision (around 15 ms).
2310 It should also reduce perf. bots cycle time for slower tests because we limit the number of function calls by time.
2312 * CSS/CSSPropertySetterGetter.html:
2313 * CSS/CSSPropertyUpdateValue.html:
2314 * Parser/css-parser-yui.html:
2315 * Parser/simple-url.html:
2316 * Parser/tiny-innerHTML.html:
2317 * Parser/url-parser.html:
2318 * Parser/xml-parser.html:
2320 2012-05-14 Dan Bernstein <mitz@apple.com>
2322 Add a line layout performance test
2323 https://bugs.webkit.org/show_bug.cgi?id=86216
2325 Reviewed by Ryosuke Niwa.
2327 * Layout/line-layout.html: Added.
2329 2012-05-14 Tony Chang <tony@chromium.org>
2331 Don't append log lines while perf tests are running.
2332 https://bugs.webkit.org/show_bug.cgi?id=86028
2334 Reviewed by Ryosuke Niwa.
2336 In some tests, the extra DOM nodes can cause the test timing to change.
2337 Avoid adding DOM nodes until the test is over. When running in a browser,
2338 we append nodes as we run so the user can have some feedback.
2340 * resources/runner.js:
2341 (PerfTestRunner.log): Store the log lines in an array until the test is finished.
2343 2012-05-14 Ryosuke Niwa <rniwa@webkit.org>
2345 Build fix. Don't adjust calls per iteration in the second run.
2347 * resources/runner.js:
2348 (PerfTestRunner._perSecondRunner):
2350 2012-05-13 Ryosuke Niwa <rniwa@webkit.org>
2352 performance tests should be able to measure runs/sec rather than time
2353 https://bugs.webkit.org/show_bug.cgi?id=86021
2355 Reviewed by Ojan Vafai.
2357 Add PerfTestRunner.runPerSecond. It uses _runLoop but replaces _runner by _perSecondRunner
2358 to compute runs/s of runFunction.
2360 When _perSecondRunner is called for the first time, i.e. _completedRuns is 0 (notice this is -1
2361 in regular run/_runner), it slowly increases the number of function calls to runFunction between
2362 time measurements in order to discount the time used by new Date() calls themselves until the
2363 total time spent reaches 100 milliseconds.
2365 By default, runPerSecond runs the test for at least 750 milliseconds in each run, and executes
2366 21 runs, yielding the total run time of roughly 18 seconds. This is significantly faster than
2367 most of existing performance tests. Also see http://ejohn.org/blog/accuracy-of-javascript-time/.
2369 Finally, refactored the existing methods of PerfTestRunner to allow "runs/s" unit and share code.
2371 * Layout/flexbox-column-nowrap.html:
2372 * Layout/flexbox-column-wrap.html:
2373 * Layout/flexbox-row-nowrap.html:
2374 * Layout/flexbox-row-wrap.html:
2375 * resources/runner.js:
2376 (PerfTestRunner.computeStatistics): Takes unit.
2377 (PerfTestRunner.logStatistics): Ditto.
2378 (PerfTestRunner._runLoop):
2379 (PerfTestRunner._runner):
2380 (PerfTestRunner.runPerSecond): Added.
2381 (PerfTestRunner._perSecondRunner): Added. Called by _runLoop.
2382 (PerfTestRunner._perSecondRunnerIterator): Added.
2384 2012-05-09 Tony Chang <tony@chromium.org>
2386 add some basic perf-o-matic tests for flexbox
2387 https://bugs.webkit.org/show_bug.cgi?id=86017
2389 Reviewed by Ryosuke Niwa.
2391 Each of these tests take < 3s on my machine.
2393 * Layout/flexbox-column-nowrap.html: Added.
2394 * Layout/flexbox-column-wrap.html: Added.
2395 * Layout/flexbox-row-nowrap.html: Added.
2396 * Layout/flexbox-row-wrap.html: Added.
2398 2012-05-05 Ilya Tikhonovsky <loislo@chromium.org>
2400 Web Inspector: unreviewed followup fix for the performance test after r116218.
2402 * inspector/heap-snapshot.html:
2404 2012-05-02 Tom Zakrajsek <tomz@codeaurora.org>
2406 Need tests for PerfTestRunner.computeStatistics
2407 https://bugs.webkit.org/show_bug.cgi?id=85410
2409 Reviewed by Ryosuke Niwa.
2411 * resources/runner.js:
2413 2012-05-02 Sheriff Bot <webkit.review.bot@gmail.com>
2415 Unreviewed, rolling out r115905.
2416 http://trac.webkit.org/changeset/115905
2417 https://bugs.webkit.org/show_bug.cgi?id=85435
2419 New computeStatistics test is failing on chromium ports
2420 (Requested by tomz on #webkit).
2422 * resources/runner.js:
2424 2012-05-02 Tom Zakrajsek <tomz@codeaurora.org>
2426 Need tests for PerfTestRunner.computeStatistics
2427 https://bugs.webkit.org/show_bug.cgi?id=85410
2429 Reviewed by Ryosuke Niwa.
2431 * resources/runner.js:
2433 2012-04-29 Tom Zakrajsek <tomz@codeaurora.org>
2435 PerfTestRunner.computeStatistics incorrectly calculates min, max and median
2436 https://bugs.webkit.org/show_bug.cgi?id=85111
2438 Reviewed by Ryosuke Niwa.
2440 The sort of the data input was being done alphabetically.
2441 So I provided a numeric compare function.
2443 * resources/runner.js:
2445 2012-04-17 Ilya Tikhonovsky <loislo@chromium.org>
2447 Web Inspector: the fix for test after massive rename in r114271.
2448 https://bugs.webkit.org/show_bug.cgi?id=84147
2450 Drive by fix. The test was renamed to heap-snapshot.html
2452 Reviewed by Yury Semikhatsky.
2454 * inspector/heap-snapshot.html: Renamed from PerformanceTests/inspector/detailed-heapshots-smoke-test.html.
2456 2012-04-16 Yury Semikhatsky <yurys@chromium.org>
2458 Web Inspector: rename heap profiler files and classes DetailedHeapshot* ->HeapSnapshot*
2459 https://bugs.webkit.org/show_bug.cgi?id=84038
2461 A bunch of renames "detailed heapshot" -> "heap snapshot".
2463 Reviewed by Pavel Feldman.
2465 * inspector/detailed-heapshots-smoke-test.html:
2467 2012-04-13 Ryosuke Niwa <rniwa@webkit.org>
2473 2012-04-12 Ryosuke Niwa <rniwa@webkit.org>
2475 Enable SVG page loading performance tests
2476 https://bugs.webkit.org/show_bug.cgi?id=83861
2478 Reviewed by Adam Barth.
2480 Unskip PageLoad directory and skip tests that load too fast (less than 100ms) and are unstable,
2481 and the ones that take too long to load (more than 20s).
2485 2012-04-04 Ilya Tikhonovsky <loislo@chromium.org>
2487 Web Inspector: Unreviewed. temporary disable broken inspector tests.
2489 * inspector/first-open-scripts.html.broken: Renamed from PerformanceTests/inspector/first-open-scripts.html.
2490 * inspector/network-append-30-requests.html.broken: Renamed from PerformanceTests/inspector/network-append-30-requests.html.
2491 * inspector/show-panel.html.broken: Renamed from PerformanceTests/inspector/show-panel.html.
2493 2012-04-04 Ilya Tikhonovsky <loislo@chromium.org>
2495 Web Inspector: linearise aggregate's retaining size calculation.
2496 https://bugs.webkit.org/show_bug.cgi?id=83125
2498 This version is twice as fast as the original and it is non-recursive.
2500 Reviewed by Yury Semikhatsky.
2502 * inspector/detailed-heapshots-smoke-test.html:
2504 2012-03-30 David Barr <davidbarr@chromium.org>
2506 Split up top-level .gitignore and .gitattributes
2507 https://bugs.webkit.org/show_bug.cgi?id=82687
2509 Reviewed by Tor Arne Vestbø.
2511 * .gitattributes: Added.
2513 2012-03-28 Yury Semikhatsky <yurys@chromium.org>
2515 Web Inspector: switch heap profiler front-end to separate storage of nodes and edges
2516 https://bugs.webkit.org/show_bug.cgi?id=82453
2518 Updated heap profiler performance test after heap profiler front-end
2521 Reviewed by Pavel Feldman.
2523 * inspector/detailed-heapshots-smoke-test.html:
2525 2012-03-27 Alexis Menard <alexis.menard@openbossa.org>
2527 Add a perf test which updates the value of an already declared CSS property.
2528 https://bugs.webkit.org/show_bug.cgi?id=82321
2530 Reviewed by Andreas Kling.
2532 This benchmark update CSS existing properties of the style from JS.
2534 * CSS/CSSPropertyUpdateValue.html: Added.
2536 2012-03-15 Kentaro Hara <haraken@chromium.org>
2538 [PerformanceTests] run-perf-tests should output correct units
2539 https://bugs.webkit.org/show_bug.cgi?id=78303
2541 Reviewed by Ryosuke Niwa.
2543 Previously run-perf-tests just supported "ms" for units.
2544 Consequently, Dromaeo perf tests had been reporting runs/s as "ms".
2545 This patch fixes run-perf-tests so that they can support custom units.
2546 The default unit is "ms".
2548 The test result looks like this:
2550 $ ./Tools/Scripts/run-perf-tests Dromaeo/dom-attr.html
2551 RESULT Dromaeo: dom-attr= 6465.9525483 runs/s
2552 median= 0.0 runs/s, stdev= 24.2983433436 runs/s, min= 6435.87649402 runs/s, max= 6515.63693392 runs/s
2554 * Dromaeo/resources/dromaeorunner.js:
2556 * resources/runner.js:
2557 (PerfTestRunner.computeStatistics):
2558 (PerfTestRunner.printStatistics):
2560 2012-03-15 Alexis Menard <alexis.menard@openbossa.org>
2562 Fix the test failing with run-perf-tests.
2564 Rubber stamped by Ryosuke Niwa.
2566 * CSS/CSSPropertySetterGetter.html:
2568 2012-03-14 Alexis Menard <alexis.menard@openbossa.org>
2570 Add a new perf test to benchmark setting and reading CSS properties from JS.
2571 https://bugs.webkit.org/show_bug.cgi?id=81155
2573 Reviewed by Ryosuke Niwa.
2575 This benchmark read and set CSS properties from JS. It contains a list
2576 of common CSS properties.
2578 * CSS/CSSPropertySetterGetter.html: Added.
2580 2012-03-14 Alexandru Chiculita <achicu@adobe.com>
2582 Layout/floats.html should be runnable by run-perf-tests
2583 https://bugs.webkit.org/show_bug.cgi?id=77051
2585 Reviewed by Ryosuke Niwa.
2587 I've split Layout/floats.html into multiple tests for each button in the original manual test.
2588 Some tests take longer to run and I've changed the number of iterations, so that each tests finishes under 30s per run.
2590 * DOM/resources/dom-perf.js:
2591 * Layout/floats.html: Removed.
2592 * Layout/floats_100_100.html: Added.
2593 * Layout/floats_100_100_nested.html: Added.
2594 * Layout/floats_20_100.html: Added.
2595 * Layout/floats_20_100_nested.html: Added.
2596 * Layout/floats_2_100.html: Added.
2597 * Layout/floats_2_100_nested.html: Added.
2598 * Layout/floats_50_100.html: Added.
2599 * Layout/floats_50_100_nested.html: Added.
2600 * Layout/resources/floats.css: Added.
2605 * Layout/resources/floats.js: Added.
2608 * resources/runner.js:
2609 (PerfTestRunner.resetRandomSeed):
2610 (PerfTestRunner.random):
2612 Moved the Math.random to runner.js to be used by all tests.
2613 Added resetRandomSeed to bring the randomizer back to initial seed.
2614 It is useful to get the same results at every run and minimize the
2615 differences between runs.
2617 2012-03-14 Sheriff Bot <webkit.review.bot@gmail.com>
2619 Unreviewed, rolling out r110559.
2620 http://trac.webkit.org/changeset/110559
2621 https://bugs.webkit.org/show_bug.cgi?id=81142
2623 Broke Dromaeo tests (Requested by rniwa on #webkit).
2625 * Dromaeo/resources/dromaeorunner.js:
2628 2012-03-13 Kentaro Hara <haraken@chromium.org>
2630 Dromaeo perf-tests results are wrong
2631 https://bugs.webkit.org/show_bug.cgi?id=80974
2633 Reviewed by Hajime Morita.
2635 Dromaeo perf-tests had reported the sum of runs/seconds as "ms".
2636 This patch fixes them to report the execution time per run.
2638 At present, they report "0.0ms" for "stdev". This is because
2639 dromaeorunner.js can just know stdev of "runs/seconds"
2640 and cannot calculate stdev of "ms" from that. We can fix it later.
2642 * Dromaeo/resources/dromaeorunner.js:
2645 2012-03-12 Ilya Tikhonovsky <loislo@chromium.org>
2647 Web Inspector: chromium: increase heap snapshot performance coverage.
2648 https://bugs.webkit.org/show_bug.cgi?id=80829
2650 Reviewed by Yury Semikhatsky.
2652 * inspector/detailed-heapshots-smoke-test.html:
2653 * inspector/performance-test.js:
2654 (initialize_TimeTracker.InspectorTest.measureFunction):
2656 2012-03-06 Kentaro Hara <haraken@chromium.org>
2658 [Perf tests] Reduce the number of loops in dom-attributes.html
2659 https://bugs.webkit.org/show_bug.cgi?id=80077
2661 Reviewed by Ryosuke Niwa.
2663 dom-attributes.html takes 100~ seconds in the perf bots. This patch reduces
2664 the time by reducing the number of loops.
2666 This is just a temporary fix. After more detailed investigation, I will reduce
2667 the number of tests in dom-attributes.html, and revert back the number of loops
2668 to guarantee the reliability of the perf test results.
2670 * Bindings/dom-attributes.html:
2672 2012-03-06 Ilya Tikhonovsky <loislo@chromium.org>
2674 Web Inspector: Heap Snapshot test: split overal time metric into separate metrics.
2675 https://bugs.webkit.org/show_bug.cgi?id=80409
2677 Reviewed by Yury Semikhatsky.
2679 * inspector/detailed-heapshots-smoke-test.html:
2681 2012-03-05 Ilya Tikhonovsky <loislo@chromium.org>
2683 Web Inspector: [chromium] introduce HeapSnapshot performance test.
2684 https://bugs.webkit.org/show_bug.cgi?id=80280
2686 Reviewed by Pavel Feldman.
2688 * inspector/detailed-heapshots-smoke-test.html: Added.
2690 2012-03-01 Ryosuke Niwa <rniwa@webkit.org>
2692 DOM tests take too long to run
2693 https://bugs.webkit.org/show_bug.cgi?id=80082
2695 Reviewed by Eric Seidel.
2697 Reduce benchmark.timeToRun from 500ms to 100ms. Doesn't seem to affect test results much
2698 (except DOM/DOMTable.html) but significantly reduces the runtime of tests.
2700 * DOM/resources/dom-perf.js:
2701 (BenchmarkSuite.prototype.RunSingle):
2703 2012-02-26 Kentaro Hara <haraken@chromium.org>
2705 [Performance Tests] [Chromium] Bindings/dom-attributes.html is timing out
2706 https://bugs.webkit.org/show_bug.cgi?id=79593
2708 Reviewed by Adam Barth.
2710 This patch halves the execution time of Bindings/dom-attributes.html
2711 in order to avoid timeout in Chromium. The reason for the timeout is that
2712 V8 DOM bindings are too much slower than JSC bindings.
2713 I am a bit afraid that this patch will reduce the accuracy of the
2714 perf test results, but it would make sense to reduce the execution time
2715 until we fix the performance issue in V8 DOM bindings.
2717 * Bindings/dom-attributes.html:
2719 2012-02-24 Ryosuke Niwa <rniwa@webkit.org>
2721 Rename dom*_*attributes.html to dom*-*attributes.html to follow the WebKit convention.
2723 * Bindings/dom-attributes.html: Copied from PerformanceTests/Bindings/dom_attributes.html.
2724 * Bindings/dom_attributes.html: Removed.
2726 2012-02-24 Kentaro Hara <haraken@chromium.org>
2728 Unreviewed, rolling out r108477.
2729 http://trac.webkit.org/changeset/108477
2730 https://bugs.webkit.org/show_bug.cgi?id=79209
2732 The perf tests committed in r108748 covers the perf tests
2733 committed in r108477. So I'll roll out r108477.
2735 * Bindings/dom_attributes_id_getter.html: Removed.
2736 * Bindings/dom_attributes_id_setter.html: Removed.
2737 * Bindings/resources/dom_attributes_common.js: Removed.
2739 2012-02-24 Kentaro Hara <haraken@chromium.org>
2741 Add performance tests for DOM attribute getters and setters
2742 https://bugs.webkit.org/show_bug.cgi?id=79208
2744 Reviewed by Ryosuke Niwa.
2746 This patch adds performance micro-benchmarks for DOM attribute
2747 getters and setters. We selected DOM attributes from HTMLElement,
2748 Element and Node which will most impact on the DOM performance
2749 in the real Web and which have different call-paths from another
2752 The perf test result in my local Chromium/Linux environment is as follows:
2753 median= 14967.0 ms, stdev= 85.2385476178 ms, min= 14861.0 ms, max= 15155.0 ms
2755 If we run the test with DumpRenderTree, we can get the following test results:
2756 Info: [HTMLElement.id] avg=65.76ms, median=65.00ms, stdev=2.14ms, min=63, max=70
2757 Info: [HTMLElement.title] avg=64.05ms, median=63.00ms, stdev=1.50ms, min=63, max=67
2758 Info: [HTMLElement.lang] avg=64.19ms, median=63.00ms, stdev=1.82ms, min=62, max=67
2759 Info: [HTMLElement.dir] avg=64.10ms, median=63.00ms, stdev=1.72ms, min=62, max=68
2760 Info: [HTMLElement.className] avg=63.33ms, median=63.00ms, stdev=0.89ms, min=63, max=67
2761 Info: [HTMLElement.classList] avg=1946.00ms, median=1945.00ms, stdev=38.22ms, min=1921, max=2110
2762 Info: [HTMLElement.tabIndex] avg=83.52ms, median=80.00ms, stdev=6.00ms, min=79, max=94
2763 Info: [HTMLElement.draggable] avg=78.14ms, median=81.00ms, stdev=3.51ms, min=74, max=82
2764 Info: [HTMLElement.webkitdropzone] avg=64.33ms, median=63.00ms, stdev=1.98ms, min=63, max=68
2765 Info: [HTMLElement.hidden] avg=65.57ms, median=64.00ms, stdev=3.27ms, min=63, max=71
2766 Info: [HTMLElement.accessKey] avg=64.43ms, median=63.00ms, stdev=2.11ms, min=62, max=68
2767 Info: [HTMLElement.children] avg=130.76ms, median=128.00ms, stdev=9.75ms, min=109, max=143
2768 Info: [HTMLElement.isContentEditable] avg=74.29ms, median=75.00ms, stdev=2.00ms, min=71, max=77
2769 Info: [HTMLElement.spellcheck] avg=79.52ms, median=80.00ms, stdev=2.52ms, min=76, max=82
2770 Info: [HTMLElement.innerHTML] avg=279.05ms, median=279.00ms, stdev=1.96ms, min=276, max=283
2771 Info: [HTMLElement.innerText] avg=204.14ms, median=203.00ms, stdev=2.95ms, min=200, max=210
2772 Info: [HTMLElement.outerHTML] avg=1544.10ms, median=1546.00ms, stdev=15.56ms, min=1514, max=1568
2773 Info: [HTMLElement.outerText] avg=216.05ms, median=207.00ms, stdev=18.19ms, min=201, max=247
2774 Info: [HTMLElement.contentEditable] avg=334.24ms, median=323.00ms, stdev=36.06ms, min=318, max=446
2775 Info: [HTMLElement.id="foo"] avg=53.19ms, median=53.00ms, stdev=1.76ms, min=52, max=58
2776 Info: [HTMLElement.title="foo"] avg=63.14ms, median=63.00ms, stdev=0.35ms, min=63, max=64
2777 Info: [HTMLElement.lang="foo"] avg=60.86ms, median=61.00ms, stdev=0.56ms, min=60, max=62
2778 Info: [HTMLElement.dir="foo"] avg=53.57ms, median=54.00ms, stdev=0.58ms, min=53, max=55
2779 Info: [HTMLElement.className="foo"] avg=64.52ms, median=64.00ms, stdev=0.91ms, min=63, max=66
2780 Info: [HTMLElement.tabIndex="foo"] avg=367.86ms, median=369.00ms, stdev=8.06ms, min=352, max=380
2781 Info: [HTMLElement.draggable="foo"] avg=79.43ms, median=79.00ms, stdev=0.58ms, min=79, max=81
2782 Info: [HTMLElement.webkitdropzone="foo"] avg=62.14ms, median=62.00ms, stdev=0.35ms, min=62, max=63
2783 Info: [HTMLElement.hidden="foo"] avg=61.67ms, median=62.00ms, stdev=0.71ms, min=61, max=64
2784 Info: [HTMLElement.accessKey="foo"] avg=61.86ms, median=62.00ms, stdev=0.56ms, min=61, max=63
2785 Info: [HTMLElement.spellcheck="foo"] avg=79.57ms, median=80.00ms, stdev=0.58ms, min=78, max=80
2786 Info: [HTMLElement.innerHTML="foo"] avg=1176.67ms, median=1169.00ms, stdev=26.60ms, min=1146, max=1246
2787 Info: [HTMLElement.innerText="foo"] avg=51.62ms, median=52.00ms, stdev=0.72ms, min=50, max=53
2788 Info: [Element.tagName] avg=79.52ms, median=80.00ms, stdev=1.05ms, min=78, max=81
2789 Info: [Element.style] avg=126.19ms, median=126.00ms, stdev=10.40ms, min=104, max=161
2790 Info: [Element.offsetLeft] avg=98.95ms, median=104.00ms, stdev=4.01ms, min=100, max=99
2791 Info: [Element.clientLeft] avg=98.33ms, median=102.00ms, stdev=2.59ms, min=100, max=99
2792 Info: [Element.scrollLeft] avg=103.29ms, median=96.00ms, stdev=15.63ms, min=100, max=97
2793 Info: [Element.dataset] avg=2448.62ms, median=2441.00ms, stdev=20.43ms, min=2426, max=2503
2794 Info: [Element.firstElementChild] avg=58.71ms, median=58.00ms, stdev=2.37ms, min=57, max=65
2795 Info: [Element.lastElementChild] avg=56.33ms, median=55.00ms, stdev=1.83ms, min=54, max=59
2796 Info: [Element.previousElementSibling] avg=52.95ms, median=52.00ms, stdev=1.70ms, min=52, max=57
2797 Info: [Element.nextElementSibling] avg=58.48ms, median=58.00ms, stdev=1.79ms, min=57, max=63
2798 Info: [Element.childElementCount] avg=64.57ms, median=64.00ms, stdev=1.81ms, min=63, max=71
2799 Info: [Element.onload] avg=98.38ms, median=98.00ms, stdev=0.49ms, min=98, max=99
2800 Info: [Element.scrollLeft="foo"] avg=95.24ms, median=95.00ms, stdev=0.92ms, min=94, max=98
2801 Info: [Element.onload="foo"] avg=67.14ms, median=67.00ms, stdev=0.56ms, min=66, max=68
2802 Info: [Node.nodeName] avg=76.29ms, median=76.00ms, stdev=0.63ms, min=75, max=77
2803 Info: [Node.nodeType] avg=53.05ms, median=52.00ms, stdev=2.61ms, min=52, max=61
2804 Info: [Node.parentNode] avg=53.52ms, median=53.00ms, stdev=1.22ms, min=52, max=56
2805 Info: [Node.childNodes] avg=118.33ms, median=123.00ms, stdev=8.85ms, min=107, max=129
2806 Info: [Node.firstChild] avg=53.62ms, median=53.00ms, stdev=1.13ms, min=51, max=55
2807 Info: [Node.lastChild] avg=53.14ms, median=53.00ms, stdev=1.21ms, min=52, max=55
2808 Info: [Node.previousSibling] avg=51.86ms, median=51.00ms, stdev=1.55ms, min=50, max=54
2809 Info: [Node.nextSibling] avg=52.86ms, median=54.00ms, stdev=1.81ms, min=50, max=55
2810 Info: [Node.attributes] avg=2027.71ms, median=2026.00ms, stdev=10.48ms, min=2010, max=2051
2811 Info: [Node.ownerDocument] avg=152.14ms, median=152.00ms, stdev=1.73ms, min=149, max=155
2812 Info: [Node.namespaceURI] avg=60.86ms, median=59.00ms, stdev=3.85ms, min=56, max=66
2813 Info: [Node.localName] avg=60.00ms, median=59.00ms, stdev=2.71ms, min=57, max=66
2814 Info: [Node.baseURI] avg=671.10ms, median=668.00ms, stdev=10.66ms, min=659, max=706
2815 Info: [Node.parentElement] avg=55.05ms, median=56.00ms, stdev=2.15ms, min=52, max=58
2816 Info: [Node.nodeValue] avg=61.24ms, median=60.00ms, stdev=2.56ms, min=59, max=68
2817 Info: [Node.prefix] avg=60.90ms, median=58.00ms, stdev=4.26ms, min=57, max=68
2818 Info: [Node.textContent] avg=149.71ms, median=149.00ms, stdev=1.12ms, min=148, max=152
2819 Info: [Node.nodeValue="foo"] avg=23.62ms, median=23.00ms, stdev=0.72ms, min=23, max=25
2820 Info: [Node.prefix="foo"] avg=49.57ms, median=49.00ms, stdev=0.73ms, min=49, max=51
2821 Info: [Node.textContent="foo"] avg=145.81ms, median=140.00ms, stdev=17.43ms, min=138, max=199
2823 * Bindings/dom_attributes.html: Added.
2824 * resources/runner.js:
2825 (PerfTestRunner.info):
2827 2012-02-22 Kentaro Hara <haraken@chromium.org>
2829 Add performance tests for the Element.id getter and setter
2830 https://bugs.webkit.org/show_bug.cgi?id=79209
2832 Reviewed by Adam Barth.
2834 This patch adds performance tests for the Element.id getter and setter.
2836 The results of 10 runs in my local Chromium/Linux are as follows:
2838 dom_attributes_id_getter.html:
2839 median= 92.0 ms, stdev= 1.65151445649 ms, min= 89.0 ms, max= 96.0 ms
2840 median= 87.5 ms, stdev= 1.84390889146 ms, min= 85.0 ms, max= 92.0 ms
2841 median= 94.0 ms, stdev= 1.46543508898 ms, min= 90.0 ms, max= 95.0 ms
2842 median= 86.0 ms, stdev= 1.66958078571 ms, min= 84.0 ms, max= 91.0 ms
2843 median= 94.0 ms, stdev= 2.25610283454 ms, min= 103.0 ms, max= 98.0 ms
2844 median= 86.0 ms, stdev= 1.49666295471 ms, min= 84.0 ms, max= 91.0 ms
2845 median= 86.0 ms, stdev= 1.5321553446 ms, min= 84.0 ms, max= 90.0 ms
2846 median= 86.0 ms, stdev= 2.20227155455 ms, min= 84.0 ms, max= 94.0 ms
2847 median= 96.0 ms, stdev= 1.74570902501 ms, min= 101.0 ms, max= 99.0 ms
2848 median= 86.0 ms, stdev= 1.63935963108 ms, min= 84.0 ms, max= 90.0 ms
2849 median= 94.0 ms, stdev= 1.49248115566 ms, min= 90.0 ms, max= 95.0 ms
2850 median= 88.0 ms, stdev= 5.20192272146 ms, min= 84.0 ms, max= 98.0 ms
2851 median= 86.0 ms, stdev= 1.41067359797 ms, min= 84.0 ms, max= 89.0 ms
2852 median= 86.0 ms, stdev= 1.48660687473 ms, min= 84.0 ms, max= 89.0 ms
2853 median= 94.0 ms, stdev= 1.58113883008 ms, min= 93.0 ms, max= 97.0 ms
2854 median= 86.0 ms, stdev= 1.95959179423 ms, min= 84.0 ms, max= 93.0 ms
2855 median= 86.0 ms, stdev= 1.8547236991 ms, min= 84.0 ms, max= 92.0 ms
2856 median= 86.0 ms, stdev= 1.39283882772 ms, min= 84.0 ms, max= 89.0 ms
2857 median= 88.0 ms, stdev= 1.48660687473 ms, min= 85.0 ms, max= 90.0 ms
2858 median= 86.5 ms, stdev= 2.3 ms, min= 84.0 ms, max= 93.0 ms
2860 dom_attributes_id_setter.html:
2861 median= 123.0 ms, stdev= 2.06397674406 ms, min= 119.0 ms, max= 128.0 ms
2862 median= 119.0 ms, stdev= 1.92028643697 ms, min= 117.0 ms, max= 123.0 ms
2863 median= 121.0 ms, stdev= 1.8781639971 ms, min= 118.0 ms, max= 123.0 ms
2864 median= 123.0 ms, stdev= 2.21585198062 ms, min= 119.0 ms, max= 130.0 ms
2865 median= 124.5 ms, stdev= 2.36378933071 ms, min= 119.0 ms, max= 129.0 ms
2866 median= 122.0 ms, stdev= 2.4474476501 ms, min= 118.0 ms, max= 128.0 ms
2867 median= 123.0 ms, stdev= 1.76351920885 ms, min= 118.0 ms, max= 125.0 ms
2868 median= 119.0 ms, stdev= 1.79652442232 ms, min= 117.0 ms, max= 125.0 ms
2869 median= 121.0 ms, stdev= 1.49916643506 ms, min= 119.0 ms, max= 123.0 ms
2870 median= 119.5 ms, stdev= 1.85135085816 ms, min= 117.0 ms, max= 125.0 ms
2871 median= 124.0 ms, stdev= 1.43090880213 ms, min= 120.0 ms, max= 124.0 ms
2872 median= 122.0 ms, stdev= 1.45859521458 ms, min= 118.0 ms, max= 123.0 ms
2873 median= 123.0 ms, stdev= 1.50332963784 ms, min= 120.0 ms, max= 124.0 ms
2874 median= 123.0 ms, stdev= 1.3638181697 ms, min= 120.0 ms, max= 125.0 ms
2875 median= 119.0 ms, stdev= 1.43527000944 ms, min= 117.0 ms, max= 121.0 ms
2876 median= 122.5 ms, stdev= 1.71682847134 ms, min= 118.0 ms, max= 124.0 ms
2877 median= 121.0 ms, stdev= 1.44481832768 ms, min= 118.0 ms, max= 123.0 ms
2878 median= 120.0 ms, stdev= 1.40978721799 ms, min= 117.0 ms, max= 122.0 ms
2879 median= 122.0 ms, stdev= 1.68522995464 ms, min= 119.0 ms, max= 125.0 ms
2880 median= 122.0 ms, stdev= 1.55804364509 ms, min= 118.0 ms, max= 123.0 ms
2883 * Bindings/dom_attributes_id_getter.html: Added.
2884 * Bindings/dom_attributes_id_setter.html: Added.
2885 * Bindings/resources/dom_attributes_common.js: Added.
2887 2012-02-16 Alexis Menard <alexis.menard@openbossa.org>
2889 Add a perf test for the CSS parser.
2890 https://bugs.webkit.org/show_bug.cgi?id=78114
2892 Reviewed by Ryosuke Niwa.
2894 Add a perf test for the CSS parser. It load a big CSS chunk
2895 which contains some snippets of the YUI library from Yahoo!.
2897 * Parser/css-parser-yui.html: Added.
2899 2012-02-08 Hajime Morrita <morrita@chromium.org>
2901 [PerformanceTests] sunspider-crypto-md5.html and sunspider-crypto-sha1.html are timing out on cr-mac perf bot
2902 https://bugs.webkit.org/show_bug.cgi?id=78174
2904 Reviewed by Ryosuke Niwa.
2906 Pulled back removed files.
2908 * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-md5.html: Added.
2909 * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-sha1.html: Added.
2911 2012-02-02 Hajime Morrita <morrita@chromium.org>
2913 [PerformanceTests] Each Dromaeo test needs its landing html.
2914 https://bugs.webkit.org/show_bug.cgi?id=77504
2916 Reviewed by Ryosuke Niwa.
2918 - Added landing pages for each test which are listed in MANIFEST.json
2919 - Removed some tests which depends on the library whose license is incompatible to WebKit.
2920 - Added local copy of corresponding library. And replace the references to the remote sources
2921 to the local copies.
2922 - Removed old library files under Dromaeo/resources/dromaeo/web/lib/.
2923 - Skipped Sunsupier and v8 test. Such JS centric test should have its own test instead of
2924 running as a part of Dromaeo.
2926 * Dromaeo/cssquery-dojo.html: Added.
2927 * Dromaeo/cssquery-jquery.html: Added.
2928 * Dromaeo/cssquery-prototype.html: Added.
2929 * Dromaeo/dom-attr.html: Added.
2930 * Dromaeo/dom-modify.html: Added.
2931 * Dromaeo/dom-traverse.html: Added.
2932 * Dromaeo/dromaeo-3d-cube.html: Added.
2933 * Dromaeo/dromaeo-core-eval.html: Added.
2934 * Dromaeo/dromaeo-object-array.html: Added.
2935 * Dromaeo/dromaeo-object-regexp.html: Added.
2936 * Dromaeo/dromaeo-object-string.html: Added.
2937 * Dromaeo/dromaeo-string-base64.html: Added.
2938 * Dromaeo/jslib-attr-jquery.html: Added.
2939 * Dromaeo/jslib-attr-prototype.html: Added.
2940 * Dromaeo/jslib-event-jquery.html: Added.
2941 * Dromaeo/jslib-event-prototype.html: Added.
2942 * Dromaeo/jslib-modify-jquery.html: Added.
2943 * Dromaeo/jslib-modify-prototype.html: Added.
2944 * Dromaeo/jslib-style-jquery.html: Added.
2945 * Dromaeo/jslib-style-prototype.html: Added.
2946 * Dromaeo/jslib-traverse-jquery.html: Added.
2947 * Dromaeo/jslib-traverse-prototype.html: Added.
2948 * Dromaeo/resources/dromaeo/web/lib/dojo.js: Removed.
2949 * Dromaeo/resources/dromaeo/web/lib/dojo-1.6.1.js: Added.
2950 * Dromaeo/resources/dromaeo/web/lib/jquery.js: Removed.
2951 * Dromaeo/resources/dromaeo/web/lib/jquery-1.6.4.js: Added.
2952 * Dromaeo/resources/dromaeo/web/lib/mootools.js: Removed.
2953 * Dromaeo/resources/dromaeo/web/lib/prototype.js: Removed.
2954 * Dromaeo/resources/dromaeo/web/lib/prototype-1.7.js: Added.
2955 * Dromaeo/resources/dromaeo/web/tests/cssquery-dojo.html:
2956 * Dromaeo/resources/dromaeo/web/tests/cssquery-jquery.html:
2957 * Dromaeo/resources/dromaeo/web/tests/cssquery-mootools.html: Removed.
2958 * Dromaeo/resources/dromaeo/web/tests/cssquery-prototype.html:
2959 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-jquery.html:
2960 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-prototype.html:
2961 * Dromaeo/resources/dromaeo/web/tests/jslib-event-jquery.html:
2962 * Dromaeo/resources/dromaeo/web/tests/jslib-event-prototype.html:
2963 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-jquery.html:
2964 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-prototype.html:
2965 * Dromaeo/resources/dromaeo/web/tests/jslib-style-jquery.html:
2966 * Dromaeo/resources/dromaeo/web/tests/jslib-style-prototype.html:
2967 * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-jquery.html:
2968 * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-prototype.html:
2969 * Dromaeo/sunspider-3d-morph.html: Added.
2970 * Dromaeo/sunspider-3d-raytrace.html: Added.
2971 * Dromaeo/sunspider-access-binary-trees.html: Added.
2972 * Dromaeo/sunspider-access-fannkuch.html: Added.
2973 * Dromaeo/sunspider-access-nbody.html: Added.
2974 * Dromaeo/sunspider-access-nsieve.html: Added.
2975 * Dromaeo/sunspider-bitops-3bit-bits-in-byte.html: Added.
2976 * Dromaeo/sunspider-bitops-bits-in-byte.html: Added.
2977 * Dromaeo/sunspider-bitops-bitwise-and.html: Added.
2978 * Dromaeo/sunspider-bitops-nsieve-bits.html: Added.
2979 * Dromaeo/sunspider-controlflow-recursive.html: Added.
2980 * Dromaeo/sunspider-crypto-aes.html: Added.
2981 * Dromaeo/sunspider-crypto-md5.html: Added.
2982 * Dromaeo/sunspider-crypto-sha1.html: Added.
2983 * Dromaeo/sunspider-date-format-tofte.html: Added.
2984 * Dromaeo/sunspider-date-format-xparb.html: Added.
2985 * Dromaeo/sunspider-math-cordic.html: Added.
2986 * Dromaeo/sunspider-math-partial-sums.html: Added.
2987 * Dromaeo/sunspider-math-spectral-norm.html: Added.
2988 * Dromaeo/sunspider-regexp-dna.html: Added.
2989 * Dromaeo/sunspider-string-fasta.html: Added.
2990 * Dromaeo/sunspider-string-tagcloud.html: Added.
2991 * Dromaeo/sunspider-string-unpack-code.html: Added.
2992 * Dromaeo/sunspider-string-validate-input.html: Added.
2993 * Dromaeo/v8-crypto.html: Added.
2994 * Dromaeo/v8-deltablue.html: Added.
2995 * Dromaeo/v8-earley-boyer.html: Added.
2996 * Dromaeo/v8-raytrace.html: Added.
2997 * Dromaeo/v8-richards.html: Added.
3000 2012-02-02 Sheriff Bot <webkit.review.bot@gmail.com>
3002 Unreviewed, rolling out r106543.
3003 http://trac.webkit.org/changeset/106543
3004 https://bugs.webkit.org/show_bug.cgi?id=77671
3006 Made tests less stable (Requested by rniwa on #webkit).
3008 * resources/init.html: Removed.
3010 2012-02-02 Ryosuke Niwa <rniwa@webkit.org>
3012 [PerformanceTests] tests have dependencies
3013 https://bugs.webkit.org/show_bug.cgi?id=77506
3015 Reviewed by Hajime Morita.
3017 * resources/init.html: Added.
3019 2012-02-01 Ryosuke Niwa <rniwa@webkit.org>
3021 Fix after r106386. The empty anchor element was generating an erroneous whitespace.
3023 * Bindings/event-target-wrapper.html:
3025 2012-02-01 Ryosuke Niwa <rniwa@webkit.org>
3027 Another fix after r106379.
3029 * Parser/html5-full-render.html:
3031 2012-01-31 Hajime Morrita <morrita@chromium.org>
3033 Import Dromaeo to WebKit repository.
3034 https://bugs.webkit.org/show_bug.cgi?id=77328
3036 Reviewed by Ryosuke Niwa.
3038 Imported a modified version of Dromaeo which is able to
3041 The imported version originally came from:
3042 https://github.com/omo/dromaeo/commit/c942a1452109cdd5f759b3c4aee8d68d490d44a2
3044 * Dromaeo/resources/dromaeo/web/application.css: Added.
3045 * Dromaeo/resources/dromaeo/web/favicon.ico: Added.
3046 * Dromaeo/resources/dromaeo/web/favicon.png: Added.
3047 * Dromaeo/resources/dromaeo/web/htmlrunner.js: Added.
3048 * Dromaeo/resources/dromaeo/web/ie.css: Added.
3049 * Dromaeo/resources/dromaeo/web/images/bg.png: Added.
3050 * Dromaeo/resources/dromaeo/web/images/clouds.png: Added.
3051 * Dromaeo/resources/dromaeo/web/images/clouds2.png: Added.
3052 * Dromaeo/resources/dromaeo/web/images/comets.png: Added.
3053 * Dromaeo/resources/dromaeo/web/images/dino1.png: Added.
3054 * Dromaeo/resources/dromaeo/web/images/dino2.png: Added.
3055 * Dromaeo/resources/dromaeo/web/images/dino3.png: Added.
3056 * Dromaeo/resources/dromaeo/web/images/dino4.png: Added.
3057 * Dromaeo/resources/dromaeo/web/images/dino5.png: Added.
3058 * Dromaeo/resources/dromaeo/web/images/dino6.png: Added.
3059 * Dromaeo/resources/dromaeo/web/images/dino7.png: Added.
3060 * Dromaeo/resources/dromaeo/web/images/dino8.png: Added.
3061 * Dromaeo/resources/dromaeo/web/images/left.png: Added.
3062 * Dromaeo/resources/dromaeo/web/images/logo.png: Added.
3063 * Dromaeo/resources/dromaeo/web/images/logo2.png: Added.
3064 * Dromaeo/resources/dromaeo/web/images/logo3.png: Added.
3065 * Dromaeo/resources/dromaeo/web/images/right.png: Added.
3066 * Dromaeo/resources/dromaeo/web/images/top.png: Added.
3067 * Dromaeo/resources/dromaeo/web/images/water.png: Added.
3068 * Dromaeo/resources/dromaeo/web/index.html: Added.
3069 * Dromaeo/resources/dromaeo/web/jquery.js: Added.
3070 * Dromaeo/resources/dromaeo/web/lib/dojo.js: Added.
3071 * Dromaeo/resources/dromaeo/web/lib/jquery.js: Added.
3072 * Dromaeo/resources/dromaeo/web/lib/mootools.js: Added.
3073 * Dromaeo/resources/dromaeo/web/lib/prototype.js: Added.
3074 * Dromaeo/resources/dromaeo/web/pngfix.js: Added.
3075 * Dromaeo/resources/dromaeo/web/reset.css: Added.
3076 * Dromaeo/resources/dromaeo/web/test-head.html: Added.
3077 * Dromaeo/resources/dromaeo/web/test-head.js: Added.
3078 * Dromaeo/resources/dromaeo/web/test-tail.html: Added.
3079 * Dromaeo/resources/dromaeo/web/test-tail.js: Added.
3080 * Dromaeo/resources/dromaeo/web/tests/MANIFEST.json: Added.
3081 * Dromaeo/resources/dromaeo/web/tests/cssquery-dojo.html: Added.
3082 * Dromaeo/resources/dromaeo/web/tests/cssquery-jquery.html: Added.
3083 * Dromaeo/resources/dromaeo/web/tests/cssquery-mootools.html: Added.
3084 * Dromaeo/resources/dromaeo/web/tests/cssquery-prototype.html: Added.
3085 * Dromaeo/resources/dromaeo/web/tests/cssquery-yui.html: Added.
3086 * Dromaeo/resources/dromaeo/web/tests/dom-attr.html: Added.
3087 * Dromaeo/resources/dromaeo/web/tests/dom-modify.html: Added.
3088 * Dromaeo/resources/dromaeo/web/tests/dom-query.html: Added.
3089 * Dromaeo/resources/dromaeo/web/tests/dom-traverse.html: Added.
3090 * Dromaeo/resources/dromaeo/web/tests/dromaeo-3d-cube.html: Added.
3091 * Dromaeo/resources/dromaeo/web/tests/dromaeo-core-eval.html: Added.
3092 * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-array.html: Added.
3093 * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-regexp.html: Added.
3094 * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-string.html: Added.
3095 * Dromaeo/resources/dromaeo/web/tests/dromaeo-string-base64.html: Added.
3096 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-jquery.html: Added.
3097 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-prototype.html: Added.
3098 * Dromaeo/resources/dromaeo/web/tests/jslib-event-jquery.html: Added.
3099 * Dromaeo/resources/dromaeo/web/tests/jslib-event-prototype.html: Added.
3100 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-jquery.html: Added.
3101 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-prototype.html: Added.
3102 * Dromaeo/resources/dromaeo/web/tests/jslib-style-jquery.html: Added.
3103 * Dromaeo/resources/dromaeo/web/tests/jslib-style-prototype.html: Added.
3104 * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-jquery.html: Added.
3105 * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-prototype.html: Added.
3106 * Dromaeo/resources/dromaeo/web/tests/sunspider-3d-morph.html: Added.
3107 * Dromaeo/resources/dromaeo/web/tests/sunspider-3d-raytrace.html: Added.
3108 * Dromaeo/resources/dromaeo/web/tests/sunspider-access-binary-trees.html: Added.
3109 * Dromaeo/resources/dromaeo/web/tests/sunspider-access-fannkuch.html: Added.
3110 * Dromaeo/resources/dromaeo/web/tests/sunspider-access-nbody.html: Added.
3111 * Dromaeo/resources/dromaeo/web/tests/sunspider-access-nsieve.html: Added.
3112 * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-3bit-bits-in-byte.html: Added.
3113 * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-bits-in-byte.html: Added.
3114 * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-bitwise-and.html: Added.
3115 * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-nsieve-bits.html: Added.
3116 * Dromaeo/resources/dromaeo/web/tests/sunspider-controlflow-recursive.html: Added.
3117 * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-aes.html: Added.
3118 * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-md5.html: Added.
3119 * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-sha1.html: Added.
3120 * Dromaeo/resources/dromaeo/web/tests/sunspider-date-format-tofte.html: Added.
3121 * Dromaeo/resources/dromaeo/web/tests/sunspider-date-format-xparb.html: Added.
3122 * Dromaeo/resources/dromaeo/web/tests/sunspider-math-cordic.html: Added.
3123 * Dromaeo/resources/dromaeo/web/tests/sunspider-math-partial-sums.html: Added.
3124 * Dromaeo/resources/dromaeo/web/tests/sunspider-math-spectral-norm.html: Added.
3125 * Dromaeo/resources/dromaeo/web/tests/sunspider-regexp-dna.html: Added.
3126 * Dromaeo/resources/dromaeo/web/tests/sunspider-string-fasta.html: Added.
3127 * Dromaeo/resources/dromaeo/web/tests/sunspider-string-tagcloud.html: Added.
3128 * Dromaeo/resources/dromaeo/web/tests/sunspider-string-unpack-code.html: Added.
3129 * Dromaeo/resources/dromaeo/web/tests/sunspider-string-validate-input.html: Added.
3130 * Dromaeo/resources/dromaeo/web/tests/v8-crypto.html: Added.
3131 * Dromaeo/resources/dromaeo/web/tests/v8-deltablue.html: Added.
3132 * Dromaeo/resources/dromaeo/web/tests/v8-earley-boyer.html: Added.
3133 * Dromaeo/resources/dromaeo/web/tests/v8-raytrace.html: Added.
3134 * Dromaeo/resources/dromaeo/web/tests/v8-richards.html: Added.
3135 * Dromaeo/resources/dromaeo/web/tests/72px.png: Added.
3136 * Dromaeo/resources/dromaeo/web/web-style.css: Added.
3137 * Dromaeo/resources/dromaeo/web/webrunner.js: Added.
3138 * Skipped: Unskip the dromaeo driver.
3140 2012-01-31 Ryosuke Niwa <rniwa@webkit.org>
3142 Fix Parser/html5-full-render.html after r106379.
3144 * Parser/html5-full-render.html:
3146 2012-01-31 Ryosuke Niwa <rniwa@webkit.org>
3148 PerfTestRunner should automatically create pre#log
3149 https://bugs.webkit.org/show_bug.cgi?id=77469
3151 Reviewed by Tony Chang.
3153 Automatically generate <pre id="log"></pre> if there isn't one.
3155 * Bindings/event-target-wrapper.html:
3156 * DOM/Accessors.html:
3157 * DOM/CloneNodes.html:
3158 * DOM/CreateNodes.html:
3159 * DOM/DOMDivWalk.html:
3160 * DOM/DOMTable.html:
3163 * DOM/GetElement.html:
3164 * DOM/GridSort.html:
3165 * DOM/Template.html:
3166 * Dromaeo/dom-query.html:
3167 * Dromaeo/resources/dromaeorunner.js:
3168 * Parser/html-parser.html:
3169 * Parser/html5-full-render.html:
3170 * Parser/simple-url.html:
3171 * Parser/tiny-innerHTML.html:
3172 * Parser/url-parser.html:
3173 * Parser/xml-parser.html:
3174 * resources/runner.js:
3175 (PerfTestRunner.log):
3176 (PerfTestRunner.printStatistics):
3178 2012-01-31 Ryosuke Niwa <rniwa@webkit.org>
3180 runner.js in performance tests should define a class
3181 https://bugs.webkit.org/show_bug.cgi?id=77074
3183 Reviewed by Eric Seidel.
3185 Wrap all functions in runner.js by PerfTestRunner and update tests that runner.js accordingly.
3186 Also replace compute* functions in runner.js by more robust code from dom-perf.js.
3188 * Bindings/event-target-wrapper.html:
3189 * DOM/DOMTable.html:
3190 * DOM/resources/dom-perf.js:
3191 (BenchmarkSuite.prototype.RunSingle):
3192 (runBenchmarkSuite):
3193 * Mutation/append-child-deep.html:
3194 * Mutation/append-child.html:
3195 * Mutation/inner-html.html:
3196 * Mutation/remove-child-deep.html:
3197 * Mutation/remove-child.html:
3198 * Parser/html-parser.html:
3199 * Parser/html5-full-render.html:
3200 * Parser/simple-url.html:
3201 * Parser/tiny-innerHTML.html:
3202 * Parser/url-parser.html:
3203 * Parser/xml-parser.html:
3204 * resources/runner.js:
3205 (PerfTestRunner.log):
3206 (PerfTestRunner.logInfo):
3207 (PerfTestRunner.loadFile):
3208 (PerfTestRunner.computeStatistics):
3209 (PerfTestRunner.logStatistics):
3210 (PerfTestRunner._runLoop.else):
3211 (PerfTestRunner._runLoop):
3212 (PerfTestRunner._runner):
3214 2012-01-31 Hajime Morrita <morrita@chromium.org>
3216 [PerformanceTests] Add landing html for Dromaeo dom-query test
3217 https://bugs.webkit.org/show_bug.cgi?id=77329
3219 Reviewed by Ryosuke Niwa.
3221 Added a "landing html" which includes actual dromaemo page and
3222 send messages to interact with it. The landing html also dumps the
3223 score in run-perf-tests friendly format.
3225 This test isn't enabled until Dromaemo itself is available for run-perf-tests.
3226 It will happen in a separate change.
3228 * Dromaeo/dom-query.html: Added.
3229 * Dromaeo/resources/dromaeorunner.js: Added.
3230 * Skipped: Skipping this for now.
3232 2012-01-30 Ryosuke Niwa <rniwa@webkit.org>
3234 Skip inspector tests since they have been timing out.
3238 2012-01-29 Ryosuke Niwa <rniwa@webkit.org>
3240 DOM/DOMDivWalk.html result is unreliable
3241 https://bugs.webkit.org/show_bug.cgi?id=77313
3243 Reviewed by Adam Barth.
3245 Trigger garbage collection manually between test runs to avoid GC
3246 to occur in the middle of runs.
3248 * DOM/resources/dom-perf.js:
3249 (BenchmarkSuite.prototype.RunSingle):
3250 * resources/runner.js:
3255 2012-01-26 Ryosuke Niwa <rniwa@webkit.org>
3257 Import Chromium's dom_perf test
3258 https://bugs.webkit.org/show_bug.cgi?id=77175
3260 Reviewed by Adam Barth.
3264 Note resources/dom/suites.js isn't used by any html file yet but it will be used by Chromium port
3265 once its perf bots start pulling test files from WebKit repository instead of Google's internal repository.
3268 * DOM/Accessors.html: Added.
3269 * DOM/CloneNodes.html: Added.
3270 * DOM/CreateNodes.html: Added.
3271 * DOM/DOMDivWalk.html: Added.
3272 * DOM/DOMTable.html: Added.
3273 * DOM/DOMWalk.html: Added.
3274 * DOM/Events.html: Added.
3275 * DOM/GetElement.html: Added.
3276 * DOM/GridSort.html: Added.
3277 * DOM/Template.html: Added.
3278 * DOM/resources: Added.
3279 * DOM/resources/dom-perf.js: Added.
3280 * DOM/resources/dom-perf: Added.
3281 * DOM/resources/dom-perf/accessors.js: Added.
3282 * DOM/resources/dom-perf/clonenodes.js: Added.
3283 * DOM/resources/dom-perf/createnodes.js: Added.
3284 * DOM/resources/dom-perf/domdivwalk.js: Added.
3285 * DOM/resources/dom-perf/domtable.js: Added.
3286 * DOM/resources/dom-perf/domwalk.js: Added.
3287 * DOM/resources/dom-perf/events.js: Added.
3288 * DOM/resources/dom-perf/getelement.js: Added.
3289 * DOM/resources/dom-perf/gridsort.js: Added.
3290 * DOM/resources/dom-perf/suites.js: Added.
3291 * DOM/resources/dom-perf/template.js: Added.
3292 * resources/runner.js:
3294 2012-01-25 Ryosuke Niwa <rniwa@webkit.org>
3296 html5-full-render.html fails due to a log
3297 https://bugs.webkit.org/show_bug.cgi?id=77046
3299 Reviewed by Adam Barth.
3301 Replace the call to log() in html5-full-render.html by a call to newly added logInfo(),
3302 which doesn't print anything inside DRT.
3304 * Parser/html5-full-render.html:
3305 * resources/runner.js:
3308 2012-01-19 Adam Barth <abarth@webkit.org>
3310 PerformanceTests's runner.js shouldn't be Parser-specific
3311 https://bugs.webkit.org/show_bug.cgi?id=76670
3313 Reviewed by Ryosuke Niwa.
3315 This runner script is used by a bunch of difference performance tests.
3316 It shouldn't be in the Parser directory anymore.
3318 * Bindings/event-target-wrapper.html:
3319 * Mutation/append-child-deep.html:
3320 * Mutation/append-child.html:
3321 * Mutation/inner-html.html:
3322 * Mutation/remove-child-deep.html:
3323 * Mutation/remove-child.html:
3324 * Parser/html-parser.html:
3325 * Parser/html5-full-render.html:
3326 * Parser/resources/runner.js: Removed.
3327 * Parser/simple-url.html:
3328 * Parser/tiny-innerHTML.html:
3329 * Parser/url-parser.html:
3330 * Parser/xml-parser.html:
3332 * resources/runner.js: Copied from PerformanceTests/Parser/resources/runner.js.
3334 2012-01-19 Ryosuke Niwa <rniwa@webkit.org>
3336 Some perf tests time out when ran by run-perf-tests
3337 https://bugs.webkit.org/show_bug.cgi?id=76612
3339 Reviewed by Dirk Pranke and Eric Seidel.
3341 Replace all images in html5.html by geenbox.png to avoid accessing whatwg.org when
3342 running the parser tests. Also call dumpAsText, waitUntilDone, and notifyDone automatically
3343 inside runner.js to avoid having to call them in individual tests.
3345 * Bindings/event-target-wrapper.html: Removed calls to layoutTestController methods since
3346 they are now called by runner.js automatically.
3347 * Parser/resources/greenbox.png: Copied from LayoutTests/fast/css/resources/greenbox.png.
3348 * Parser/resources/html5.html:
3349 * Parser/resources/runner.js:
3352 2012-01-18 Ryosuke Niwa <rniwa@webkit.org>
3354 run-perf-tests should support Skipped list
3355 https://bugs.webkit.org/show_bug.cgi?id=76594
3357 Reviewed by Adam Barth.
3359 Add Skipped list to be used by run-perf-tests as it can only runs tests in
3360 Bindings, Parser, and inspector at the moment.
3364 2012-01-12 Ilya Tikhonovsky <loislo@chromium.org>
3366 Web Inspector: performance: restore 'log 300 messages into console' test.
3367 https://bugs.webkit.org/show_bug.cgi?id=76170
3369 It was removed in order of transition from layout tests to perf tests.
3371 Reviewed by Yury Semikhatsky.
3373 * inspector/console-300-lines.html: Added.
3375 2012-01-12 Ilya Tikhonovsky <loislo@chromium.org>
3377 Web Inspector: performance tests: fix memory leak in first-open-resources test.
3378 https://bugs.webkit.org/show_bug.cgi?id=76049
3380 first-open-resources doesn't reset resource panel properly after test run.
3382 Reviewed by Yury Semikhatsky.
3384 * inspector/first-open-resources.html:
3386 2012-01-10 Ilya Tikhonovsky <loislo@chromium.org>
3388 Unreviewed. WebInspector: Remove unnecessary logging from the test.
3390 * inspector/first-open-resources.html:
3392 2012-01-10 Ilya Tikhonovsky <loislo@chromium.org>
3394 Unreviewed. Restore test that was removed during migration from LayoutTests folder.
3396 * inspector/first-open-resources.html: Added.
3398 2012-01-09 Ilya Tikhonovsky <loislo@chromium.org>
3400 Unreviewed test fix after r103683.
3402 * inspector/first-open-scripts.html:
3403 * inspector/show-panel.html:
3405 2012-01-03 Adam Barth <abarth@webkit.org>
3407 html-parser.html takes too long to run
3408 https://bugs.webkit.org/show_bug.cgi?id=75515
3410 Reviewed by Eric Seidel.
3412 In working on runner.js, we introduced a factor of 10 increase to the
3413 running time of this benchmark. This patch dials down the number of
3414 iterations to something more user-friendly.
3416 * Parser/html-parser.html:
3418 2011-12-18 Ilya Tikhonovsky <loislo@chromium.org>
3420 Web Inspector: move heap data stats to separate tab.
3421 https://bugs.webkit.org/show_bug.cgi?id=74704
3423 Reviewed by Pavel Feldman.
3425 * inspector/performance-test.js:
3426 (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
3427 (initialize_TimeTracker.InspectorTest.runPerformanceTest):
3429 2011-12-01 Ilya Tikhonovsky <loislo@chromium.org>
3431 Web Inspector: chromium: move and adapt Inspector's performance tests for running with run-inspector-perf-tests.py.
3432 https://bugs.webkit.org/show_bug.cgi?id=72260
3434 Reviewed by Pavel Feldman.
3436 * inspector/first-open-elements.html: Renamed from LayoutTests/inspector/performance/resources/first-open-elements.html.
3437 * inspector/first-open-scripts.html: Renamed from LayoutTests/inspector/performance/resources/first-open-scripts.html.
3438 * inspector/inspector-startup-time.html: Renamed from LayoutTests/inspector/performance/resources/inspector-startup-time.html.