Turn PageLoad tests into simple performancetests, commit #2
[WebKit-https.git] / PerformanceTests / ChangeLog
1 2012-10-24  Zoltan Horvath  <zoltan@webkit.org>
2
3         Turn PageLoad tests into simple performancetests, commit #2 
4         https://bugs.webkit.org/show_bug.cgi?id=99899
5
6         Reviewed by Ryosuke Niwa.
7
8         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
9         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
10         to their new location and adds html/js wrappers for them.
11
12         This is the #2 commit of the whole patch.
13
14         * PageLoad/svg/files/cacuts_01.svg: Removed.
15         * PageLoad/svg/files/cowboy.svg: Removed.
16         * PageLoad/svg/files/crawfish2_ganson.svg: Removed.
17         * SVG/Cactus.html: Added.
18         * SVG/Cowboy.html: Added.
19         * SVG/CrawFishGanson.html: Added.
20         * SVG/resources/Cactus.svg: Copied from PerformanceTests/PageLoad/svg/files/cacuts_01.svg.
21         * SVG/resources/Cowboy.svg: Copied from PerformanceTests/PageLoad/svg/files/cowboy.svg.
22         * SVG/resources/CrawFishGanson.svg: Copied from PerformanceTests/PageLoad/svg/files/crawfish2_ganson.svg.
23         * Skipped: Remove az-lizard_benji_park_01.svg from the skipped list.
24
25 2012-10-24  Zoltan Horvath  <zoltan@webkit.org>
26
27         Turn PageLoad tests into simple performancetests, commit #1 
28         https://bugs.webkit.org/show_bug.cgi?id=99899
29
30         Reviewed by Ryosuke Niwa.
31
32         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
33         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
34         to their new location and adds html/js wrappers for them.
35
36         This is the #1 commit of the whole patch.
37
38         * PageLoad/svg/files/az-lizard_benji_park_01.svg: Removed.
39         * PageLoad/svg/files/bamboo_01.svg: Removed.
40         * SVG/AzLizardBenjiPark.html: Added.
41         * SVG/Bamboo.html: Added.
42         * SVG/resources: Added.
43         * SVG/resources/AzLizardBenjiPark.svg: Copied from PerformanceTests/PageLoad/svg/files/az-lizard_benji_park_01.svg.
44         * SVG/resources/Bamboo.svg: Copied from PerformanceTests/PageLoad/svg/files/bamboo_01.svg.
45
46 2012-10-24  Zoltan Horvath  <zoltan@webkit.org>
47
48         REGRESSION(r131982): Skip SVG/SvgNestedUse.html performancetest since it is crashing
49         https://bugs.webkit.org/show_bug.cgi?id=100262
50
51         Unreviewed.
52
53         Skip until proper fix.
54
55         * Skipped: Add SVG/SvgNestedUse.html
56
57 2012-10-23  Zoltan Horvath  <zoltan@webkit.org>
58
59         Store the loaded file locally in measurePageLoadTime
60         https://bugs.webkit.org/show_bug.cgi?id=100172
61
62         Reviewed by Csaba Osztrogonác.
63
64         Store the loaded file as a local variable instead of attaching it to the test object.
65         Handle chunkSize inside test.run.
66
67         * resources/runner.js:
68         (.):
69
70 2012-10-23  Zoltan Horvath  <zoltan@webkit.org>
71
72         Add measurePageLoadTime function to PerfTestRunner
73         https://bugs.webkit.org/show_bug.cgi?id=100029
74
75         Reviewed by Ryosuke Niwa.
76
77         Adopt chunk based loading logic from html5-full-render.html into measurePageLoadTime function,
78         this is needed to measure the performance and the memory consumption of the PageLoadTests as
79         we do it for all other performancetests.
80
81         * Parser/html5-full-render.html: Move the behavior to runner.js.
82         * resources/runner.js:
83         (.): Add measurePageLoadTime function.
84
85 2012-10-22  Adam Barth  <abarth@webkit.org>
86
87         [V8] Vastly simplify V8GCController's NodeVisitor
88         https://bugs.webkit.org/show_bug.cgi?id=99884
89
90         Reviewed by Kentaro Hara.
91
92         Adds some performance tests for the garbage collector.
93
94         * Bindings/gc-forest.html: Added.
95         * Bindings/gc-mini-tree.html: Added.
96         * Bindings/gc-tree.html: Added.
97
98 2012-10-17  Ryosuke Niwa  <rniwa@webkit.org>
99
100         Bump up the number of iterations of html5-full-render to 5
101         https://bugs.webkit.org/show_bug.cgi?id=99657
102
103         Reviewed by Andreas Kling.
104
105         Now that html5-full-render.html runs in less than 15 seconds after r131553,
106         we can afford to get 5 instead of 2 samples.
107
108         * Parser/html5-full-render.html:
109
110 2012-10-17  Ryosuke Niwa  <rniwa@webkit.org>
111
112         Rename PerfTestRunner.runPerSecond to PerfTestRunner.measureRunsPerSecond for consistency
113         https://bugs.webkit.org/show_bug.cgi?id=99642
114
115         Reviewed by Dirk Pranke.
116
117         Renamed the method.
118
119         * Bindings/append-child.html:
120         * Bindings/create-element.html:
121         * Bindings/event-target-wrapper.html:
122         * Bindings/first-child.html:
123         * Bindings/get-attribute.html:
124         * Bindings/get-element-by-id.html:
125         * Bindings/get-elements-by-tag-name.html:
126         * Bindings/id-getter.html:
127         * Bindings/id-setter.html:
128         * Bindings/insert-before.html:
129         * Bindings/node-list-access.html:
130         * Bindings/scroll-top.html:
131         * Bindings/set-attribute.html:
132         * Bindings/typed-array-construct-from-array.html:
133         * Bindings/typed-array-construct-from-same-type.html:
134         * Bindings/typed-array-construct-from-typed.html:
135         * Bindings/typed-array-set-from-typed.html:
136         * Bindings/undefined-first-child.html:
137         * Bindings/undefined-get-element-by-id.html:
138         * Bindings/undefined-id-getter.html:
139         * CSS/CSSPropertySetterGetter.html:
140         * CSS/CSSPropertyUpdateValue.html:
141         * CSS/PseudoClassSelectors.html:
142         * DOM/textarea-dom.html:
143         * DOM/textarea-edit.html:
144         * Interactive/resources/window-resize.js:
145         * Layout/flexbox-column-nowrap.html:
146         * Layout/flexbox-column-wrap.html:
147         * Layout/flexbox-row-nowrap.html:
148         * Layout/flexbox-row-wrap.html:
149         * Layout/line-layout.html:
150         * Parser/css-parser-yui.html:
151         * Parser/innerHTML-setter.html:
152         * Parser/query-selector-deep.html:
153         * Parser/query-selector-first.html:
154         * Parser/query-selector-last.html:
155         * Parser/simple-url.html:
156         * Parser/textarea-parsing.html:
157         * Parser/tiny-innerHTML.html:
158         * Parser/url-parser.html:
159         * Parser/xml-parser.html:
160         * SVG/SvgNestedUse.html:
161         * resources/runner.js:
162
163 2012-10-17  Ryosuke Niwa  <rniwa@webkit.org>
164
165         Performance test should support asynchronous tests
166         https://bugs.webkit.org/show_bug.cgi?id=95668
167
168         Reviewed by Dirk Pranke.
169
170         Added PerfTestRunner.prepareToMeasureValuesAsync and PerfTestRunner.measureValueAsync,
171         and deployed it in Animation/balls.
172
173         * Animation/balls.html:
174         * resources/runner.js:
175
176 2012-10-16  Elliott Sprehn  <esprehn@chromium.org>
177
178         html5-full-render.html test uses substring but meant substr
179         https://bugs.webkit.org/show_bug.cgi?id=99495
180
181         Reviewed by Adam Barth.
182
183         This test intended to chunk up the HTML5 spec into chunks of 500k chars, but used
184         substring(to,from) instead of substr(from,length) so it actually loaded 5x more
185         content than was in the HTML5 spec.
186
187         * Parser/html5-full-render.html:
188
189 2012-10-11  James Simonsen  <simonjam@chromium.org>
190
191         unprefix window.performance.webkitNow()
192         https://bugs.webkit.org/show_bug.cgi?id=88278
193
194         Reviewed by Tony Gentilcore.
195
196         * resources/runner.js: Bind to proper object to avoid invalid invocation errors.
197
198 2012-10-08  Ryosuke Niwa  <rniwa@webkit.org>
199
200         Skip Layout/subtree-detaching.html temporarily as it's very noisy and
201         takes 112s to run on Chromium Mac. This is tracked by the bug 98708.
202
203         * Skipped:
204
205 2012-10-08  Ryosuke Niwa  <rniwa@webkit.org>
206
207         Perf. test results page is broken when runs have different sets of tests
208         https://bugs.webkit.org/show_bug.cgi?id=98691
209
210         Reviewed by Daniel Bates.
211
212         Add "missing" columns for tests that are missing some runs.
213
214         Also fix regressions from the previous patch:
215         - Make reference run switch work again
216         - Load jquery plugins from the remote server when the jquery is loaded from the remote server.
217
218         * resources/results-template.html:
219
220 2012-10-08  Ryosuke Niwa  <rniwa@webkit.org>
221
222         Perf test pesults page takes forever to load on a machine with a slow Internet connection
223         https://bugs.webkit.org/show_bug.cgi?id=98561
224
225         Reviewed by Ojan Vafai.
226
227         Try loading jquery both locally and remotely, and use the same method to load the remaining
228         jquery plugins when either one succeeds.
229
230         * resources/results-template.html:
231
232 2012-10-04  Hayato Ito  <hayato@chromium.org>
233
234         [Refactoring] Introduce a traversal strategy in SelectorChecker
235         https://bugs.webkit.org/show_bug.cgi?id=97298
236
237         Reviewed by Antti Koivisto.
238
239         Introduces querySelector() performance tests to check SelectorChecker performance.
240
241         * CSS/PseudoClassSelectors.html: Added.
242
243 2012-10-03  Philip Rogers  <pdr@google.com>
244
245         Force GC between PageLoad tests.
246         https://bugs.webkit.org/show_bug.cgi?id=98203
247
248         Reviewed by Ryosuke Niwa.
249
250         Previously, our PageLoad PerfTests had multi-modal distributions,
251         typically with a small cluster at 1-2x the median. This turned out
252         to be caused by not garbage collecting between tests!
253
254         This patch adds a new file, force-gc.html, and loads this file between
255         PageLoad tests to force a GC. I manually verified that this cleans up
256         our perf test outliers.
257
258         * resources/force-gc.html: Added.
259
260 2012-10-03  Julien Chaffraix  <jchaffraix@webkit.org>
261
262         Add a performance test for subtree detaching
263         https://bugs.webkit.org/show_bug.cgi?id=98281
264
265         Reviewed by Eric Seidel.
266
267         The new test tries to stress detaching on a heavy subtree (2 levels deep but with 1,000 nodes per level).
268         We set display: none on the root and measure the time it takes to update the tree. Note that we will also
269         measure the time taken by recalcStyle and relayout but I don't think we can avoid that.
270
271         * Layout/subtree-detaching.html: Added.
272
273 2012-10-02  Ryosuke Niwa  <rniwa@webkit.org>
274
275         Build fix after r130135. Dromaeo tests only report single memory value,
276         and computeStatistics should report variance as 0 in such cases.
277
278         * resources/runner.js:
279
280 2012-10-02  Philip Rogers  <pdr@google.com>
281
282         Fix PerfTest standard deviation calculation.
283         https://bugs.webkit.org/show_bug.cgi?id=98115
284
285         Reviewed by Ryosuke Niwa.
286
287         Previously our standard deviation calculation was incorrect. This patch
288         updates perftest.py's algorithm to calculate the sample standard deviation
289         (with Bessel's correction) using Knuth's online algorithm:
290         http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Online_algorithm
291         An existing test has been modified to prove our new results.
292
293         This patch also updates runner.js to use Bessel's correction in
294         its sample standard deviation calculation, which is more accurate
295         for small sample sizes.
296
297         Additionally, runner.js has been modified to not calculate
298         the 'sum' statistic, which was not very useful.
299
300         * resources/runner.js:
301         (PerfTestRunner.computeStatistics):
302
303 2012-10-01  Ryosuke Niwa  <rniwa@webkit.org>
304
305         PerfTestRunner: Move all functions into the closure and always use double quotation for string literals
306         https://bugs.webkit.org/show_bug.cgi?id=98093
307
308         Reviewed by Ojan Vafai.
309
310         Move all methods of PerfTestRunner into the closure that defines it.
311         Also always use double quotations for string literals for consistency.
312
313         * resources/runner.js:
314
315 2012-10-01  Ryosuke Niwa  <rniwa@webkit.org>
316
317         Encapsulate private properties in PerfTestRunner better
318         https://bugs.webkit.org/show_bug.cgi?id=97833
319
320         Reviewed by Ojan Vafai.
321
322         This patch moves "private" methods and properties of PerfTestRunner into a closure so that they're
323         inaccssible from outside. Also catch exceptions from test.run, test.done, and other runner code
324         to ensure we call notifyDone() even if we broke tests. Otherwise DRT will timeout and we end up
325         waiting for 10 minutes per each broken test on bots.
326
327         * resources/runner.js:
328         (PerfTestRunner.gc):
329         (logInDocument): Extracted from PerfTestRunner.log.
330         (PerfTestRunner.log): Moved.
331         (logFatalError): Added.
332         (start): Renamed from PerfTestRunner._start.
333         (scheduleNextRun): Extracted from PerfTestRunner._runLoop. Also catch any exceptions that happen
334         in the runner and ignoreWarmUpAndLog so that we don't end up timing out. We call logFatalError in
335         such cases, which in turn ensures notifyDone() is called.
336         (ignoreWarmUpAndLog): Renamed from PerfTestRunner._ignoreWarmUpAndLog.
337         (finish): Extracted from PerfTestRunner._runLoop.
338         (PerfTestRunner.measureTime): Moved. The initialization of runCount is moved into start().
339         (measureTimeOnce): Renamed from PerfTestRunner._measureTimeOnce.
340         (PerfTestRunner.runPerSecond): Moved. Ditto about runCount.
341         (measureRunsPerSecondOnce): Renamed from PerfTestRunner._measureRunsPerSecondOnce.
342         (callRunAndMeasureTime): Renamed from PerfTestRunner._perSecondRunnerIterator.
343
344 2012-10-01  Florin Malita  <fmalita@chromium.org>
345
346         Add a performance test for nested <use> elements
347         https://bugs.webkit.org/show_bug.cgi?id=98047
348
349         Reviewed by Ryosuke Niwa.
350
351         Currently at ~5 runs per second on my workstation, but should go up significantly (100+)
352         after landing a fix for https://bugs.webkit.org/show_bug.cgi?id=97905.
353
354         * SVG/SvgNestedUse.html: Added.
355
356 2012-09-28  Ryosuke Niwa  <rniwa@webkit.org>
357
358         Add back test.runCount for runPerSecond as it's used by tests in fast/harness/perftests.
359
360         * resources/runner.js:
361         (PerfTestRunner.runPerSecond):
362
363 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
364
365         Build fix after r129824.
366
367         * DOM/resources/dom-perf.js:
368         (runBenchmarkSuite):
369
370 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
371
372         Remove unused features and reduce code duplications in PerfTestRunner
373         https://bugs.webkit.org/show_bug.cgi?id=97852
374
375         Reviewed by Kentaro Hara.
376
377         Made the following refactoring changes:
378         - Remove PerfTestRunner.info since it's never used.
379         - Moved the js heap/malloc related functions up to where they belong.
380         - Moved the initialization of _callsPerIteration, _test, and -description into _start,
381           and stopped initializing _runFunction and _doneFunction since both test times now
382           use _test object.
383         - Made _measureTimeOnce and _measureRunsPerSecondOnce return the measured value
384           instead of calling ignoreWarmUpAndLog and _runLoop to share the code; they're now
385           called in _measureRunsPerSecondOnce.
386
387         * resources/runner.js:
388         (PerfTestRunner.storeHeapResults): Moved.
389         (PerfTestRunner.getUsedMallocHeap): Moved.
390         (PerfTestRunner.getUsedJSHeap): Moved.
391         (PerfTestRunner.getAndPrintMemoryStatistics): Moved.
392         (PerfTestRunner._scheduleNextMeasurementOrNotifyDone): Renamed from _runLoop. Calls
393         ignoreWarmUpAndLog and schedules the next call.
394         (PerfTestRunner._measureTimeOnce): Renamed from _runner.
395         (PerfTestRunner._start): Renamed from initAndStartLoop.
396         (PerfTestRunner.measureTime):
397         (PerfTestRunner.runPerSecond):
398         (PerfTestRunner._measureRunsPerSecondOnce): Renamed from _measureRunsPerSecondOnce.
399         (PerfTestRunner._perSecondRunnerIterator):
400
401 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
402
403         PerfTestRunner.run should take an object
404         https://bugs.webkit.org/show_bug.cgi?id=97743
405
406         Reviewed by Kentaro Hara.
407
408         Rename PerfTestRunner.run to PerfTestRunner.measureTime and make it take an object instead of
409         5 arguments. Also get rid of PerfTestRunner._loopsPerRun since it's no longer used (it's always 1).
410
411         * CSS/StyleSheetInsert.html:
412         * DOM/resources/dom-perf.js:
413         * Layout/floats_100_100.html:
414         * Layout/floats_100_100_nested.html:
415         * Layout/floats_20_100.html:
416         * Layout/floats_20_100_nested.html:
417         * Layout/floats_2_100.html:
418         * Layout/floats_2_100_nested.html:
419         * Layout/floats_50_100.html:
420         * Layout/floats_50_100_nested.html:
421         * Parser/html-parser.html:
422         * Parser/html5-full-render.html:
423         * SVG/SvgCubics.html:
424         * SVG/SvgHitTesting.html:
425         * resources/runner.js:
426
427 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
428
429         PerformanceTests/CSS/StyleSheetInsert.html has a time-dependent non-Gaussian distribution
430         https://bugs.webkit.org/show_bug.cgi?id=97741
431
432         Reviewed by Antti Koivisto.
433
434         Reset the content in the iframe in each run so that the runtime from each run follows a normal distribution.
435         We can cleanup this code once my patch to replace the argument list of run by an object is landed.
436
437         * CSS/StyleSheetInsert.html:
438
439 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
440
441         Unreviewed. Minor appearance tweaks after r129813.
442
443         * resources/results-template.html:
444
445 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
446
447         Results page should warn about time-dependent distributions
448         https://bugs.webkit.org/show_bug.cgi?id=97818
449
450         Reviewed by Ojan Vafai.
451
452         Add a simple linear regression analysis on results page to detect time-dependent distributions.
453         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.
454         Also added time-series graphs per run under the bar graphs so that humans can manually inspect them.
455
456         A nice follow up would be to add some normality test (e.g. Shapiro-Wilk) to detect bi-modal distributions
457         but we probably need to restructure the code to run it asynchronously since normality tests are slow.
458
459         * resources/results-template.html:
460
461 2012-09-26  Ryosuke Niwa  <rniwa@webkit.org>
462
463         Use runPerSecond in PerformanceTests/Bindings/typed-array* and event-target-wrapper
464         https://bugs.webkit.org/show_bug.cgi?id=97625
465
466         Reviewed by Eric Seidel.
467
468         Use PerfTestRunner.runPerSecond instead of PerfTestRunner.run. Also reduce the fixed number of
469         elements and iterations in these tests by a factor of 10 since runPerSecond can dynamically
470         adjust the number of function calls.
471
472         * Bindings/event-target-wrapper.html:
473         * Bindings/typed-array-construct-from-array.html:
474         * Bindings/typed-array-construct-from-same-type.html:
475         * Bindings/typed-array-construct-from-typed.html:
476         * Bindings/typed-array-set-from-typed.html:
477
478 2012-09-25  Antti Koivisto  <antti@apple.com>
479
480         Optimize stylesheet insertions
481         https://bugs.webkit.org/show_bug.cgi?id=97627
482
483         Reviewed by Andreas Kling.
484
485         Add synthetic performance test for avoiding style recalcs on stylesheet inserts.
486
487         * CSS/StyleSheetInsert.html: Added.
488
489 2012-09-25  Ryosuke Niwa  <rniwa@webkit.org>
490
491         Skip Dromaeo/jslib-modify-jquery.html per bug 95376.
492         It runs out of memory on Chromium port, and it takes unreasonably long time (~5 minutes)
493         to run on other ports.
494
495         * Skipped:
496
497 2012-09-20  Ryosuke Niwa  <rniwa@webkit.org>
498
499         Results page should show indivisual value
500         https://bugs.webkit.org/show_bug.cgi?id=97178
501
502         Reviewed by Tony Chang.
503
504         Show indivisual values instead of statistics (min, max, stdev).
505
506         * resources/results-template.html:
507
508 2012-09-20  Ryosuke Niwa  <rniwa@webkit.org>
509
510         run-perf-tests should record individual value instead of statistics
511         https://bugs.webkit.org/show_bug.cgi?id=97155
512
513         Reviewed by Hajime Morita.
514
515         Report the list of values as "values" so that run-perf-tests can parse them.
516
517         * resources/runner.js:
518         (PerfTestRunner.computeStatistics):
519         (PerfTestRunner.printStatistics):
520
521 2012-09-20  Sheriff Bot  <webkit.review.bot@gmail.com>
522
523         Unreviewed, rolling out r129091.
524         http://trac.webkit.org/changeset/129091
525         https://bugs.webkit.org/show_bug.cgi?id=97205
526
527         It broke perf tests everywhere (Requested by Ossy on #webkit).
528
529         * resources/runner.js:
530         (PerfTestRunner.computeStatistics):
531         (PerfTestRunner.printStatistics):
532
533 2012-09-19  Ryosuke Niwa  <rniwa@webkit.org>
534
535         run-perf-tests should record indivisual value instead of statistics
536         https://bugs.webkit.org/show_bug.cgi?id=97155
537
538         Reviewed by Hajime Morita.
539
540         Report the list of values as "values" so that run-perf-tests can parse them.
541
542         * resources/runner.js:
543         (PerfTestRunner.computeStatistics):
544         (PerfTestRunner.printStatistics):
545
546 2012-09-17  Ryosuke Niwa  <rniwa@webkit.org>
547
548         Perf test results is incomprehensive
549         https://bugs.webkit.org/show_bug.cgi?id=94668
550
551         Reviewed by Eric Seidel.
552
553         Overhauled the results page to have a tabular view. Clicking on each row shows a flot graph we used to have.
554         For each run and test, we show the mean value with the standard deviation along with the percent difference
555         against the reference run chosen by the user if the difference is statistically significant; it also indicates
556         whether the new value is progression or not.
557
558         The unit of each test is adjusted automatically using SI prefixes (Kilo, Mega, Milli), and rows can be sorted
559         by each column. Time and memory results are separated into two tabs.
560
561         * resources/jquery.tablesorter.min.js: Added.
562         * resources/results-template.html:
563
564 2012-09-14  Ryosuke Niwa  <rniwa@webkit.org>
565
566         Use performance.webkitNow in PerfTestRunner
567         https://bugs.webkit.org/show_bug.cgi?id=92826
568
569         Reviewed by Eric Seidel.
570
571         Use performance.webkitNow with Date.now as a fallback for more accurate time measurements.
572
573         * resources/runner.js:
574         (PerfTestRunner._runner):
575         (PerfTestRunner._perSecondRunnerIterator):
576
577 2012-09-14  Sheriff Bot  <webkit.review.bot@gmail.com>
578
579         Unreviewed, rolling out r128562.
580         http://trac.webkit.org/changeset/128562
581         https://bugs.webkit.org/show_bug.cgi?id=96747
582
583         It broke perf tests on Qt and Chromium (Requested by Ossy on
584         #webkit).
585
586         * resources/runner.js:
587         (PerfTestRunner._runner):
588         (PerfTestRunner._perSecondRunnerIterator):
589
590 2012-09-14  Ryosuke Niwa  <rniwa@webkit.org>
591
592         Use performance.webkitNow in PerfTestRunner
593         https://bugs.webkit.org/show_bug.cgi?id=92826
594
595         Reviewed by Eric Seidel.
596
597         Use performance.webkitNow with Date.now as a fallback for more acurate time measurements.
598
599         * resources/runner.js:
600         (PerfTestRunner._runner):
601         (PerfTestRunner._perSecondRunnerIterator):
602
603 2012-08-23  Ilya Tikhonovsky  <loislo@chromium.org>
604
605         WebInspector: unreviewed single line test fix.
606
607         The test has to open profiles panel explicitly because it is creating lazily.
608
609         * inspector/heap-snapshot-performance-test.js:
610
611 2012-08-15  Scott Graham  <scottmg@chromium.org>
612
613         Rename window.internals.fastMallocStatistics to mallocStatistics
614         https://bugs.webkit.org/show_bug.cgi?id=94033
615
616         Reviewed by Adam Barth.
617
618         * resources/runner.js:
619         (PerfTestRunner.storeHeapResults):
620         (PerfTestRunner.getUsedMallocHeap):
621         (PerfTestRunner.getAndPrintMemoryStatistics):
622         (PerfTestRunner.initAndStartLoop):
623
624 2012-08-10  Ryosuke Niwa  <rniwa@webkit.org>
625
626         Unreviewed; fix an insanely silly typo.
627
628         * resources/results-template.html:
629
630 2012-08-09  Ryosuke Niwa  <rniwa@webkit.org>
631
632         Another build fix after r125178.
633
634         * resources/runner.js:
635
636 2012-08-09  Zoltan Horvath  <zoltan@webkit.org>
637
638         Add memory measurement to balls.html and dromaeorunner.js
639         https://bugs.webkit.org/show_bug.cgi?id=93617
640
641         Reviewed by Adam Barth.
642
643         Since we added memory measurement support to performance tests we need to modify these tests.
644
645         * Animation/balls.html:
646         * Dromaeo/resources/dromaeorunner.js:
647
648 2012-08-09  Zoltan Horvath  <zoltan@webkit.org>
649
650         JSHeap and FastMallocStatistics based memory measurement for performance-tests
651         https://bugs.webkit.org/show_bug.cgi?id=90858
652
653         Reviewed Ryosuke Niwa.
654
655         Measure the memory usage of the performancetests with the help of the windows.memory.usedJSHeapSize
656         object and the window.internals.fastMallocStatistics() function call.
657
658         * resources/runner.js:
659         (PerfTestRunner.logStatistics):
660         (PerfTestRunner.printStatistics):
661         (PerfTestRunner.storeHeapResults):
662         (PerfTestRunner.getUsedFastMallocHeap):
663         (PerfTestRunner.getUsedJSHeap):
664         (PerfTestRunner.getAndPrintMemoryStatistics):
665         (PerfTestRunner.ignoreWarmUpAndLog):
666         (PerfTestRunner.initAndStartLoop):
667
668 2012-08-08  Benjamin Poulain  <benjamin@webkit.org>
669
670         Calling internals from the performance test runner prevents manual running
671         https://bugs.webkit.org/show_bug.cgi?id=93527
672
673         Reviewed by Ryosuke Niwa.
674
675         Since r125065, it is impossible to run the Performance tests manually. The problem is
676         "internals" is not defined when running outside the test runner, so the whole script
677         evaluation fails.
678
679         * resources/runner.js: Verify is window.internals is available before invoking something on it.
680
681 2012-08-08  Zoltan Horvath  <zoltan@webkit.org>
682
683         Set access to MemoryInfo enabled for the performance tests
684         https://bugs.webkit.org/show_bug.cgi?id=92498
685
686         Reviewed by Ryosuke Niwa.
687
688         We need access to console.memory for the memory measurements.
689
690         * resources/runner.js:
691
692 2012-08-07  Ryosuke Niwa  <rniwa@webkit.org>
693
694         run-perf-tests should support --no-show-results
695         https://bugs.webkit.org/show_bug.cgi?id=93409
696
697         Reviewed by Dirk Pranke.
698
699         Add a flot as a separate file and load it as an external resource.
700
701         Also include scripts as external resources from both local filesystem and webkit.org
702         so that it continues to work regardless of where you put it.
703
704         It breaks when someone else receives the file and save it somewhere and doesn't have
705         a network connection but that seems like a scenario we don't care that much.
706
707         * resources/jquery.flot.min.js: Added.
708         * resources/results-template.html:
709
710 2012-08-06  Ryosuke Niwa  <rniwa@webkit.org>
711
712         run-webkit-tests should have ability to add description to its JSON output
713         https://bugs.webkit.org/show_bug.cgi?id=93296
714
715         Reviewed by Dirk Pranke.
716
717         Parse description and show it with the WebKit revision on the results page. Also use bar graphs
718         instead of line graphs since we're not depicting the time series here per arv's suggestion.
719         Finally, add the ability to adjust y-axis between the adjusted value and 0 (plot even doesn't adjust
720         y-axis automatically now) by a mouse click.
721
722         * resources/results-template.html:
723
724 2012-08-04  Ryosuke Niwa  <rniwa@webkit.org>
725
726         Use testRunner instead of layoutTestController in performance tests
727         https://bugs.webkit.org/show_bug.cgi?id=93184
728
729         Reviewed by Adam Barth.
730
731         * Animation/balls.html:
732         * Dromaeo/resources/dromaeorunner.js:
733         * inspector/console-300-lines.html:
734         * inspector/inspector-startup-time.html:
735         * inspector/network-append-30-requests.html.broken:
736         * inspector/show-panel.html.broken:
737         * resources/runner.js:
738         (PerfTestRunner.logInfo):
739         (PerfTestRunner.initAndStartLoop):
740
741 2012-08-02  Arnaud Renevier  <a.renevier@sisa.samsung.com>
742
743         TypedArray set method is slow when called with another typed array
744         https://bugs.webkit.org/show_bug.cgi?id=92556
745
746         Reviewed by Kenneth Russell.
747
748         * Bindings/typed-array-set-from-typed.html: Added.
749
750 2012-07-28  Ryosuke Niwa  <rniwa@webkit.org>
751
752         run-perf-tests should generate a results page
753         https://bugs.webkit.org/show_bug.cgi?id=92575
754
755         Reviewed by Eric Seidel.
756
757         Add a results page template. This page includes flot and flot.fillbetween.
758         jQuery and the json that contains test results are injected by run-perf-tests.
759
760         * resources/results-template.html: Added.
761
762 2012-07-27  Arnaud Renevier  <a.renevier@sisa.samsung.com>
763
764         use createUninitialized when creating TypedArray from another array
765         https://bugs.webkit.org/show_bug.cgi?id=92518
766
767         Reviewed by Kenneth Russell.
768
769         * Bindings/typed-array-construct-from-array.html: Added.
770
771 2012-07-27  Ryosuke Niwa  <rniwa@webkit.org>
772
773         Add more Russian replay performance tests
774         https://bugs.webkit.org/show_bug.cgi?id=92462
775
776         Reviewed by Tony Chang.
777
778         Add more Russian sites as suggested by loislo.
779
780         * Replay/Russian/lenta.ru.replay: Added.
781         * Replay/Russian/www.ixbt.com.replay: Added.
782         * Replay/Russian/www.kp.ru.replay: Added.
783         * Replay/Russian/www.liveinternet.ru.replay: Added.
784         * Replay/Russian/www.pravda.ru.replay: Added.
785
786 2012-07-26  Arnaud Renevier  <a.renevier@sisa.samsung.com>
787
788         constructing TypedArray from another TypedArray is slow
789         https://bugs.webkit.org/show_bug.cgi?id=90838
790
791         Reviewed by Kenneth Russell.
792
793         * Bindings/typed-array-construct-from-same-type.html: Added.
794         * Bindings/typed-array-construct-from-typed.html: Added.
795
796 2012-07-25  Ryosuke Niwa  <rniwa@webkit.org>
797
798         Import more replay performance tests from Mozilla's Tp5 test suite
799         https://bugs.webkit.org/show_bug.cgi?id=92229
800
801         Reviewed by Andreas Kling.
802
803         Add more replay tests based on Mozilla's Tp5 test suite [1]. Unfortunately,
804         we cannot import all URLs because some of them are not archived on archive.org
805         and others do not replay well on web-page-replay. Nonethless, we're still adding
806         60+ URLs in this patch.
807
808         [1] http://people.mozilla.org/~jmaher/tp5.manifest
809
810         * Replay/Chinese: Added.
811         * Replay/Chinese/chinaz.com.replay: Added.
812         * Replay/Chinese/www.163.com.replay: Added.
813         * Replay/Chinese/www.alipay.com.replay: Added.
814         * Replay/Chinese/www.baidu.com.replay: Added.
815         * Replay/Chinese/www.csdn.net.replay: Added.
816         * Replay/Chinese/www.douban.com.replay: Added.
817         * Replay/Chinese/www.hao123.com.replay: Added.
818         * Replay/Chinese/www.xinhuanet.com.replay: Added.
819         * Replay/Chinese/www.xunlei.com.replay: Added.
820         * Replay/Chinese/www.youku.com.replay: Added.
821         * Replay/English: Added.
822         * Replay/English/beatonna.livejournal.com.replay: Added.
823         * Replay/English/cakewrecks.blogspot.com.replay: Added.
824         * Replay/English/chemistry.about.com.replay: Added.
825         * Replay/English/digg.com.replay: Added.
826         * Replay/English/en.wikipedia.org-rorschach_test.replay: Added.
827         * Replay/English/icanhascheezburger.com.replay: Added.
828         * Replay/English/imgur.com-gallery.replay: Added.
829         * Replay/English/online.wsj.com.replay: Added.
830         * Replay/English/stockoverflow.com-best-comment.replay: Added.
831         * Replay/English/www.alibaba.com.replay: Added.
832         * Replay/English/www.amazon.com-kindle.replay: Added.
833         * Replay/English/www.apple.com.replay: Added.
834         * Replay/English/www.cnet.com.replay: Added.
835         * Replay/English/www.dailymotion.com.replay: Added.
836         * Replay/English/www.ehow.com-prevent-fire.replay: Added.
837         * Replay/English/www.filestube.com-amy-adams.replay: Added.
838         * Replay/English/www.foxnews.replay: Added.
839         * Replay/English/www.huffingtonpost.com.replay: Added.
840         * Replay/English/www.imdb.com-twilight.replay: Added.
841         * Replay/English/www.mozilla.com-all-order.replay: Added.
842         * Replay/English/www.php.net.replay: Added.
843         * Replay/English/www.reddit.com.replay: Added.
844         * Replay/English/www.telegraph.co.uk.replay: Added.
845         * Replay/English/www.w3.org-htmlcss.replay: Added.
846         * Replay/English/www.w3schools.com-html.replay: Added.
847         * Replay/English/www.youtube.com-music.replay: Added.
848         * Replay/French: Added.
849         * Replay/French/www.orange.fr.replay: Added.
850         * Replay/German: Added.
851         * Replay/Italian: Added.
852         * Replay/Italian/www.repubblica.it.replay: Added.
853         * Replay/Japanese/entameblog.seesaa.net.replay: Added.
854         * Replay/Japanese/www.hatena.ne.jp.replay: Added.
855         * Replay/Japanese/www.nicovideo.jp.replay: Added.
856         * Replay/Korean: Added.
857         * Replay/Korean/www.naver.com.replay: Added.
858         * Replay/Persian: Added.
859         * Replay/Persian/blogfa.com.replay: Added.
860         * Replay/Polish: Added.
861         * Replay/Polish/www.wp.pl.replay: Added.
862         * Replay/Portuguese: Added.
863         * Replay/Portuguese/www.uol.com.br.replay: Added.
864         * Replay/Russian: Added.
865         * Replay/Russian/vkontakte.ru-help.replay: Added.
866         * Replay/Russian/www.rambler.ru.replay: Added.
867         * Replay/Russian/www.ucoz.ru.replay: Added.
868         * Replay/Russian/www.yandex.ru.replay: Added.
869         * Replay/Spanish: Added.
870         * Replay/Spanish/www.taringa.net.replay: Added.
871
872 2012-07-24  Ryosuke Niwa  <rniwa@webkit.org>
873
874         Add some Japanese and Swedish websites to replay tests
875         https://bugs.webkit.org/show_bug.cgi?id=92076
876
877         Reviewed by Andreas Kling.
878
879         Added new replay tests as follows.
880
881         * Replay/Japanese: Added.
882         * Replay/Japanese/2ch.net-newsplus.replay: Added.
883         * Replay/Japanese/ja.wikipedia.org.replay: Added.
884         * Replay/Japanese/www.livedoor.com.replay: Added.
885         * Replay/Japanese/www.rakuten.co.jp.replay: Added.
886         * Replay/Japanese/www.yahoo.co.jp.replay: Added.
887         * Replay/Swedish: Added.
888         * Replay/Swedish/www.flashback.se.replay: Added.
889         * Replay/Swedish/www.tradera.com.replay: Added.
890         * Replay/www.techcrunch.com.replay: Added.
891
892 2012-07-18  MORITA Hajime  <morrita@google.com>
893
894         Add window resize benchmark
895         https://bugs.webkit.org/show_bug.cgi?id=91070
896
897         Reviewed by Ryosuke Niwa.
898
899         Added window-resize.html which exercise html5.html. This test
900         resizes the window and forces re-layout repeatedly.
901
902         * Interactive/resources/window-resize.js: Added.
903         * Interactive/window-resize.html: Added.
904         * Parser/resources/html5.html: Modified to inject driver scripts.
905
906 2012-07-11  Philip Rogers  <pdr@google.com>
907
908         Add a performance test for hit testing in SVG
909         https://bugs.webkit.org/show_bug.cgi?id=90811
910
911         Reviewed by Ryosuke Niwa.
912
913         The shape rendering code is changing a lot and I'd like a performance test to
914         make sure we don't regress, and to track our improvements.
915
916         Performance results in my Linux desktop:
917             RESULT SVG: SvgHitTesting= 105.0 ms
918             median= 103.5 ms, stdev= 4.60434577329 ms, min= 101.0 ms, max= 116.0 ms
919
920             RESULT SVG: SvgHitTesting= 97.8 ms
921             median= 96.5 ms, stdev= 2.67581763205 ms, min= 95.0 ms, max= 102.0 ms
922
923             RESULT SVG: SvgHitTesting= 104.3 ms
924             median= 104.0 ms, stdev= 1.41774468788 ms, min= 102.0 ms, max= 107.0 ms
925
926             RESULT SVG: SvgHitTesting= 103.6 ms
927             median= 103.5 ms, stdev= 1.2 ms, min= 102.0 ms, max= 106.0 ms
928
929         * SVG/SvgHitTesting.html: Added.
930
931 2012-07-03  Jan Keromnes  <janx@linux.com>
932
933         Web Inspector: WebInspector.TextViewer should be renamed WebInspector.TextEditor
934         https://bugs.webkit.org/show_bug.cgi?id=89939
935
936         Reviewed by Vsevolod Vlasov.
937
938         * inspector/first-open-scripts.html.broken:
939
940 2012-06-22  Philip Rogers  <pdr@google.com>
941
942         Make SvgCubics performance test more consistent
943         https://bugs.webkit.org/show_bug.cgi?id=89778
944
945         Reviewed by Ryosuke Niwa.
946
947         Previously this test ran twice for each iteration, but this led to inconsistent repaints.
948         This change updates the test to only run once per iteration, and adds even more cubics
949         so that the test runs consistently in the 80ms range on my Linux desktop.
950
951         Performance results on my desktop:
952             RESULT SVG: SvgCubics= 80.5 ms
953             median= 82.0 ms, stdev= 3.04138126515 ms, min= 75.0 ms, max= 85.0 ms
954
955             RESULT SVG: SvgCubics= 80.1 ms
956             median= 81.0 ms, stdev= 4.27668095607 ms, min= 74.0 ms, max= 88.0 ms
957
958             RESULT SVG: SvgCubics= 81.45 ms
959             median= 83.0 ms, stdev= 4.01839520207 ms, min= 75.0 ms, max= 89.0 ms
960
961             RESULT SVG: SvgCubics= 78.9 ms
962             median= 80.0 ms, stdev= 4.75289385533 ms, min= 72.0 ms, max= 87.0 ms
963
964         * SVG/SvgCubics.html:
965
966 2012-06-22  Ilya Tikhonovsky  <loislo@chromium.org>
967
968         Web Inspector: partially instrument DOM Tree native memory.
969         https://bugs.webkit.org/show_bug.cgi?id=89568
970
971         This patch adds MemoryInstrumentation class that counts all visited
972         objects and calls reportMemoryUsage.
973
974         Reviewed by Yury Semikhatsky.
975
976         * inspector/native-memory-snapshot.html:
977
978 2012-06-21  Kentaro Hara  <haraken@chromium.org>
979
980         Add a perf-test for innerHTML setter for a large DOM tree
981         https://bugs.webkit.org/show_bug.cgi?id=89723
982
983         Reviewed by Ryosuke Niwa.
984
985         We want a benchmark for innerHTML setter for the following reason:
986
987         - innerHTML setter is widely used in the real world.
988         - I am planning to optimize innerHTML setter in the near future.
989         - I want to use the innerHTML setter benchmark for the patch of bug 88834.
990
991         Performance results in my Linux desktop:
992
993         RESULT Parser: innerHTML-setter= 289.782649995 runs/s
994         median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s
995
996         RESULT Parser: innerHTML-setter= 289.020706132 runs/s
997         median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s
998
999         RESULT Parser: innerHTML-setter= 288.912051701 runs/s
1000         median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s
1001
1002         RESULT Parser: innerHTML-setter= 288.644186666 runs/s
1003         median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s
1004
1005         RESULT Parser: innerHTML-setter= 288.698714577 runs/s
1006         median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s
1007
1008         * Parser/innerHTML-setter.html: Added.
1009
1010 2012-06-20  Philip Rogers  <pdr@google.com>
1011
1012         Add a performance test for paths in SVG
1013         https://bugs.webkit.org/show_bug.cgi?id=89547
1014
1015         Reviewed by Ryosuke Niwa.
1016
1017         This change adds the first performance test for SVG paths.
1018         In the test we modify complex cubic paths in several ways, testing:
1019         transformations, clipping, d attribute changes, stroke properties,
1020         text on a path, and opacity.
1021
1022         Sample test results on my Linux desktop:
1023             RESULT SVG: SvgCubics= 68.85 ms
1024             median= 69.5 ms, stdev= 4.70398767005 ms, min= 56.0 ms, max= 75.0 ms
1025
1026             RESULT SVG: SvgCubics= 68.4 ms
1027             median= 69.0 ms, stdev= 3.51283361405 ms, min= 59.0 ms, max= 74.0 ms
1028
1029             RESULT SVG: SvgCubics= 66.95 ms
1030             median= 67.0 ms, stdev= 3.4420197559 ms, min= 59.0 ms, max= 74.0 ms
1031
1032             RESULT SVG: SvgCubics= 70.2 ms
1033             median= 71.5 ms, stdev= 3.23419232576 ms, min= 63.0 ms, max= 74.0 ms
1034
1035         * SVG: Added.
1036         * SVG/SvgCubics.html: Added.
1037
1038 2012-06-20  Tom Zakrajsek  <tomz@codeaurora.org>
1039
1040         Import themaninblue.com/experiment/AnimationBenchmark/ as performance tests
1041         https://bugs.webkit.org/show_bug.cgi?id=78789
1042
1043         Reviewed by Ryosuke Niwa.
1044
1045         Added PerfTestRunner fixture around it.
1046
1047         * Animation/balls.html: Added.
1048
1049 2012-06-18  Ilya Tikhonovsky  <loislo@chromium.org>
1050
1051         Web Inspector: native memory snapshot performance and coverage test implementation.
1052         https://bugs.webkit.org/show_bug.cgi?id=89363
1053
1054         We have to track the performance of MemoryAgent.getProcessMemoryDistribution.
1055         Also this test will work as a burn down chart for Unknown memory metric.
1056
1057         Reviewed by Pavel Feldman.
1058
1059         * inspector/native-memory-snapshot.html: Added.
1060         * inspector/performance-test.js:
1061         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer):
1062         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.reportSize):
1063         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
1064         (initialize_TimeTracker.InspectorTest.runPerformanceTest):
1065
1066 2012-06-05  Alexei Filippov  <alexeif@chromium.org>
1067
1068         Web Inspector: serialize edge counts instead of indexes in heap snapshot
1069         https://bugs.webkit.org/show_bug.cgi?id=88324
1070
1071         The serialized node structure currently holds an index
1072         of its first containment edge in the edges array.
1073         The index can be quite big (up to 7 digits for large snapshots).
1074         The patch changes the serialization format to pass
1075         node containment edge count instead. For most nodes the count
1076         is just a single digit number.
1077         This reduces serialized snapshot size and therefore its transfer time.
1078
1079         Reviewed by Yury Semikhatsky.
1080
1081         * inspector/heap-snapshot-performance-test.js:
1082
1083 2012-06-04  Alexei Filippov  <alexeif@chromium.org>
1084
1085         Web Inspector: speed up _calculateRetainedSizes function
1086         https://bugs.webkit.org/show_bug.cgi?id=87863
1087
1088         Reviewed by Yury Semikhatsky.
1089
1090         * inspector/heap-snapshot-advanced.html: Added.
1091         * inspector/heap-snapshot-performance-test.js: Copied from PerformanceTests/inspector/heap-snapshot.html.
1092         (test.performanceTest.step0):
1093         (test.performanceTest.step1):
1094         (test.performanceTest.step2):
1095         (test.performanceTest.cleanup):
1096         (test.performanceTest.done):
1097         (test.performanceTest):
1098         (test):
1099         * inspector/heap-snapshot.html:
1100
1101 2012-06-03  Kentaro Hara  <haraken@chromium.org>
1102
1103         [perf-test] Add a benchmark of querySelector() for an element that appears in the depths in the document
1104         https://bugs.webkit.org/show_bug.cgi?id=88202
1105
1106         Reviewed by Ryosuke Niwa.
1107
1108         query-selector-first.html tests querySelector() for an element
1109         that appears at the head of the document. query-selector-last.html
1110         tests querySelector() for an element that appears at the tail of
1111         the document. In addition, we want a benchmark of querySelector()
1112         for an element that appears in the depths in the document.
1113
1114         Test results in my Linux desktop:
1115
1116         RESULT Parser: query-selector-deep= 460.776980611 runs/s
1117         median= 460.947503201 runs/s, stdev= 1.72274941942 runs/s, min= 455.696202532 runs/s, max= 463.32046332 runs/s
1118
1119         RESULT Parser: query-selector-deep= 458.925050915 runs/s
1120         median= 459.183673469 runs/s, stdev= 1.47930124139 runs/s, min= 454.545454545 runs/s, max= 460.947503201 runs/s
1121
1122         RESULT Parser: query-selector-deep= 461.866981491 runs/s
1123         median= 461.538461538 runs/s, stdev= 1.14613123359 runs/s, min= 459.183673469 runs/s, max= 463.917525773 runs/s
1124
1125         RESULT Parser: query-selector-deep= 453.922010788 runs/s
1126         median= 454.258855898 runs/s, stdev= 1.77279123317 runs/s, min= 447.204968944 runs/s, max= 455.696202532 runs/s
1127
1128         RESULT Parser: query-selector-deep= 454.666321221 runs/s
1129         median= 454.545454545 runs/s, stdev= 1.65775667417 runs/s, min= 451.127819549 runs/s, max= 456.852791878 runs/s
1130
1131         * Parser/query-selector-deep.html: Added.
1132
1133 2012-06-03  Kentaro Hara  <haraken@chromium.org>
1134
1135         [perf-test] Make query-selector-last.html more realistic
1136         https://bugs.webkit.org/show_bug.cgi?id=88203
1137
1138         Reviewed by Ryosuke Niwa.
1139
1140         query-selector-last.html tests querySelector() for an element
1141         that appears after 1000 div elements, all of which have the same
1142         id and class. To test the performance of querySelector() under
1143         a lot of ids and classes, we should make the ids and classes of
1144         the 1000 elements different.
1145
1146         This patch degrades the performance of query-selector-last.html
1147         by 3.6%.
1148
1149         [Before]
1150         RESULT Parser: query-selector-last= 476.382274152 runs/s
1151         median= 476.821192053 runs/s, stdev= 1.14578875814 runs/s, min= 474.308300395 runs/s, max= 478.087649402 runs/s
1152
1153         RESULT Parser: query-selector-last= 478.423061861 runs/s
1154         median= 478.723404255 runs/s, stdev= 1.54876867255 runs/s, min= 473.684210526 runs/s, max= 481.347773767 runs/s
1155
1156         RESULT Parser: query-selector-last= 479.849287174 runs/s
1157         median= 480.0 runs/s, stdev= 1.69849752498 runs/s, min= 475.561426684 runs/s, max= 481.927710843 runs/s
1158
1159         RESULT Parser: query-selector-last= 476.765438846 runs/s
1160         median= 477.453580902 runs/s, stdev= 1.8724488664 runs/s, min= 471.821756225 runs/s, max= 478.723404255 runs/s
1161
1162         RESULT Parser: query-selector-last= 481.715340644 runs/s
1163         median= 481.637742305 runs/s, stdev= 1.81446361145 runs/s, min= 475.561426684 runs/s, max= 483.675937122 runs/s
1164
1165         [After]
1166         RESULT Parser: query-selector-last= 458.866623582 runs/s
1167         median= 459.183673469 runs/s, stdev= 1.48881464737 runs/s, min= 453.972257251 runs/s, max= 460.947503201 runs/s
1168
1169         RESULT Parser: query-selector-last= 460.363532897 runs/s
1170         median= 460.358056266 runs/s, stdev= 1.58512056995 runs/s, min= 456.273764259 runs/s, max= 462.130937099 runs/s
1171
1172         RESULT Parser: query-selector-last= 457.727448451 runs/s
1173         median= 458.015267176 runs/s, stdev= 1.23681915516 runs/s, min= 453.972257251 runs/s, max= 459.183673469 runs/s
1174
1175         RESULT Parser: query-selector-last= 465.57336853 runs/s
1176         median= 465.717981889 runs/s, stdev= 1.6616925374 runs/s, min= 460.947503201 runs/s, max= 467.532467532 runs/s
1177
1178         RESULT Parser: query-selector-last= 459.836252019 runs/s
1179         median= 459.770114943 runs/s, stdev= 1.84485630505 runs/s, min= 455.696202532 runs/s, max= 462.724935733 runs/s
1180
1181         * Parser/query-selector-last.html:
1182
1183 2012-06-01  Ryosuke Niwa  <rniwa@webkit.org>
1184
1185         Add public page loading performance tests using web-page-replay
1186         https://bugs.webkit.org/show_bug.cgi?id=84008
1187
1188         Reviewed by Dirk Pranke.
1189
1190         Add replay tests for google.com and youtube.com as examples.
1191
1192         * Replay: Added.
1193         * Replay/www.google.com.replay: Added.
1194         * Replay/www.youtube.com.replay: Added.
1195
1196 2012-05-30  Kentaro Hara  <haraken@chromium.org>
1197
1198         [perf-test] Add a benchmark for querySelector()
1199         https://bugs.webkit.org/show_bug.cgi?id=87742
1200
1201         Reviewed by Ryosuke Niwa.
1202
1203         Now I am optimizing querySelector() (bug 87625).
1204         This patch adds a performance test for querySelector().
1205         query-selector-first.html queries an element that appears
1206         at the head of the document. On the other hand,
1207         query-selector-last.html queries an element that appears
1208         at the tail of the document.
1209
1210         Test results in my desktop:
1211
1212         [query-selector-first.html]
1213         RESULT Parser: query-selector-first= 252.339803014 runs/s
1214         median= 253.646265594 runs/s, stdev= 2.32610873209 runs/s, min= 248.138957816 runs/s, max= 254.777070064 runs/s
1215
1216         RESULT Parser: query-selector-first= 252.688468897 runs/s
1217         median= 252.684876579 runs/s, stdev= 3.60008778708 runs/s, min= 246.002460025 runs/s, max= 258.397932817 runs/s
1218
1219         RESULT Parser: query-selector-first= 253.466019656 runs/s
1220         median= 254.129606099 runs/s, stdev= 1.78002675664 runs/s, min= 247.831474597 runs/s, max= 254.777070064 runs/s
1221
1222         RESULT Parser: query-selector-first= 256.245078189 runs/s
1223         median= 257.06940874 runs/s, stdev= 2.84722072201 runs/s, min= 249.687890137 runs/s, max= 259.74025974 runs/s
1224
1225         RESULT Parser: query-selector-first= 252.203100497 runs/s
1226         median= 252.047989175 runs/s, stdev= 1.75233446036 runs/s, min= 248.138957816 runs/s, max= 255.427841635 runs/s
1227
1228         [query-selector-last.html]
1229         RESULT Parser: query-selector-last= 356.009616076 runs/s
1230         median= 355.781448539 runs/s, stdev= 0.841519086864 runs/s, min= 354.430379747 runs/s, max= 358.056265985 runs/s
1231
1232         RESULT Parser: query-selector-last= 360.735271001 runs/s
1233         median= 361.057532424 runs/s, stdev= 1.12253219867 runs/s, min= 358.514724712 runs/s, max= 362.225097025 runs/s
1234
1235         RESULT Parser: query-selector-last= 359.598592463 runs/s
1236         median= 359.435173299 runs/s, stdev= 0.816538258728 runs/s, min= 358.056265985 runs/s, max= 360.824742268 runs/s
1237
1238         RESULT Parser: query-selector-last= 357.260651715 runs/s
1239         median= 357.598978289 runs/s, stdev= 1.17393159885 runs/s, min= 353.982300885 runs/s, max= 358.974358974 runs/s
1240
1241         RESULT Parser: query-selector-last= 351.696240713 runs/s
1242         median= 351.980025916 runs/s, stdev= 1.14200564038 runs/s, min= 348.692403487 runs/s, max= 353.535353535 runs/s
1243
1244         * Parser/query-selector-first.html: Added.
1245         * Parser/query-selector-last.html: Added.
1246
1247 2012-05-25  Ilya Tikhonovsky  <loislo@chromium.org>
1248
1249         Web Inspector: HeapSnapshot: introduce performance counter for HeapSnapshotConstructorsDataGrid._aggregatesReceived method.
1250         https://bugs.webkit.org/show_bug.cgi?id=87393
1251
1252         Reviewed by Yury Semikhatsky.
1253
1254         * inspector/heap-snapshot.html:
1255
1256 2012-05-25  Ilya Tikhonovsky  <loislo@chromium.org>
1257
1258         Web Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th times.
1259         https://bugs.webkit.org/show_bug.cgi?id=87476
1260
1261         The time tracking wrappers were attaching on each run.
1262
1263         Reviewed by Yury Semikhatsky.
1264
1265         * inspector/heap-snapshot.html:
1266
1267 2012-05-22  Ilya Tikhonovsky  <loislo@chromium.org>
1268
1269         Web Inspector: HeapProfiler: upstream retainedSize calculation.
1270         https://bugs.webkit.org/show_bug.cgi?id=87107
1271
1272         This patch upstreams V8::HeapSnapshotGenerator::CalculateRetainedSizes function to front-end.
1273         After that we will be able to drop retainedSize field from the snapshot serialized data.
1274         See meta-bug https://bugs.webkit.org/show_bug.cgi?id=87089
1275
1276         Reviewed by Yury Semikhatsky.
1277
1278         * inspector/heap-snapshot.html: add counter for the _calculateRetainedSize method.
1279
1280 2012-05-21  Kent Tamura  <tkent@chromium.org>
1281
1282         Add performance tests for <textarea>
1283         https://bugs.webkit.org/show_bug.cgi?id=86994
1284
1285         Reviewed by Ryosuke Niwa.
1286
1287         * DOM/textarea-dom.html: Added.
1288         * DOM/textarea-edit.html: Added.
1289         * Parser/textarea-parsing.html: Added.
1290
1291 2012-05-18  Ilya Tikhonovsky  <loislo@chromium.org>
1292
1293         Web Inspector: upstream build dominators tree procedure from v8.
1294         https://bugs.webkit.org/show_bug.cgi?id=86640
1295
1296         The idea is to reduce transfer size and move all the post-processing steps to the front-end.
1297         The JS implementation is ~1.5 times slower.
1298
1299         Reviewed by Yury Semikhatsky.
1300
1301         Covered by existing tests and performance tests.
1302
1303         * inspector/heap-snapshot.html:
1304
1305 2012-05-18  Kentaro Hara  <haraken@chromium.org>
1306
1307         [perf-test] Remove Bindings/dom-attributes.html
1308         https://bugs.webkit.org/show_bug.cgi?id=86820
1309
1310         Reviewed by Ryosuke Niwa.
1311
1312         Bindings/dom-attributes.html is just a collection of random
1313         DOM attributes and methods. Now we've added more reasonable
1314         micro benchmarks by classifying DOM binding call paths, we
1315         can remove Bindings/dom-attributes.html.
1316
1317         * Bindings/dom-attributes.html: Removed.
1318
1319 2012-05-18  Kentaro Hara  <haraken@chromium.org>
1320
1321         [perf-test] Add a binding benchmark for getElementById() for an undefined id
1322         https://bugs.webkit.org/show_bug.cgi?id=86812
1323
1324         Reviewed by Ryosuke Niwa.
1325
1326         We should remove Bindings/dom-attributes.html and instead add more
1327         reasonable micro benchmarks by classifying DOM binding call paths.
1328
1329         This patch adds a benchmark for document.getElementById() for an undefined id.
1330         This benchmark covers 'getElementById (not in document)' in Dromaeo/dom-query.html,
1331         and other Node-query methods that return a null.'
1332
1333         (Note: This benchmark is slower than document.getElementById() for a defined id.
1334         We will fix the performance issue soon.)
1335
1336         Test results in my Linux desktop:
1337
1338         RESULT Bindings: undefined-get-element-by-id= 271.945751345 runs/s
1339         median= 273.122389532 runs/s, stdev= 6.78219237299 runs/s, min= 257.4002574 runs/s, max= 281.690140845 runs/s
1340
1341         RESULT Bindings: undefined-get-element-by-id= 269.105872408 runs/s
1342         median= 268.948655257 runs/s, stdev= 5.73707323755 runs/s, min= 257.4002574 runs/s, max= 278.128950695 runs/s
1343
1344         RESULT Bindings: undefined-get-element-by-id= 269.987513372 runs/s
1345         median= 272.952853598 runs/s, stdev= 5.30252336078 runs/s, min= 255.754475703 runs/s, max= 273.97260274 runs/s
1346
1347         RESULT Bindings: undefined-get-element-by-id= 270.169625901 runs/s
1348         median= 271.604938272 runs/s, stdev= 5.29502391906 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
1349
1350         RESULT Bindings: undefined-get-element-by-id= 269.054631422 runs/s
1351         median= 267.966292802 runs/s, stdev= 6.27197240579 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
1352
1353         * Bindings/undefined-get-element-by-id.html: Added.
1354
1355 2012-05-18  Kentaro Hara  <haraken@chromium.org>
1356
1357         [perf-test] Add a binding benchmark for getElementsByTagName()
1358         https://bugs.webkit.org/show_bug.cgi?id=86810
1359
1360         Reviewed by Ryosuke Niwa.
1361
1362         We should remove Bindings/dom-attributes.html and instead add more
1363         reasonable micro benchmarks by classifying DOM binding call paths.
1364
1365         This patch adds a benchmark for document.getElementsByTagName().
1366         This benchmark covers 'getElementsByTagName (not in document)',
1367         'getElementsByTagName', 'getElementsByName (not in document)'
1368         and 'getElementsByName' in Dromaeo/dom-query.html, and other DOM
1369         methods that return a NodeList.
1370
1371         Test results in my Linux desktop:
1372
1373         RESULT Bindings: get-elements-by-tag-name= 364.542328875 runs/s
1374         median= 366.972477064 runs/s, stdev= 5.25387955333 runs/s, min= 351.317440402 runs/s, max= 368.421052632 runs/s
1375
1376         RESULT Bindings: get-elements-by-tag-name= 364.341569369 runs/s
1377         median= 366.492146597 runs/s, stdev= 4.867374197 runs/s, min= 352.644836272 runs/s, max= 367.936925099 runs/s
1378
1379         RESULT Bindings: get-elements-by-tag-name= 363.924242967 runs/s
1380         median= 366.013071895 runs/s, stdev= 5.16768212289 runs/s, min= 351.317440402 runs/s, max= 367.936925099 runs/s
1381
1382         RESULT Bindings: get-elements-by-tag-name= 365.332594438 runs/s
1383         median= 367.454068241 runs/s, stdev= 6.17046918572 runs/s, min= 350.0 runs/s, max= 370.37037037 runs/s
1384
1385         RESULT Bindings: get-elements-by-tag-name= 363.999514324 runs/s
1386         median= 366.492146597 runs/s, stdev= 5.31235674905 runs/s, min= 350.877192982 runs/s, max= 368.421052632 runs/s
1387
1388         * Bindings/get-elements-by-tag-name.html: Added.
1389
1390 2012-05-18  Kentaro Hara  <haraken@chromium.org>
1391
1392         [perf-test] Add 7 micro benchmarks for DOM bindings
1393         https://bugs.webkit.org/show_bug.cgi?id=86816
1394
1395         Reviewed by Ryosuke Niwa.
1396
1397         We should remove Bindings/dom-attributes.html and instead add more
1398         reasonable micro benchmarks by classifying DOM binding call paths.
1399         This patch adds seven micro benchmarks for DOM bindings.
1400
1401         id-getter.html covers 'element.property' in Dromaeo/dom-attr.html,
1402         'innerHTML' in Dromaeo/dom-modify.html, and other DOM attributes that
1403         return a String.
1404
1405         id-setter.html covers 'element.property = value' in Dromaeo/dom-attr.html,
1406         and other DOM attributes that sets a String.
1407
1408         undefined-id-getter.html covers undefined DOM attributes that return an empty String.
1409
1410         append-child.html covers 'appendChild' and 'removeChild' in Dromaeo/dom-modify.html.
1411
1412         insert-before.html covers 'insertBefore' in Dromaeo/dom-modify.html and replaceChild().
1413
1414         create-element.html covers 'createElement', 'createTextNode' and 'cloneNode'
1415         in Dromaeo/dom-modify.html, and other DOM methods that return a new Node object.
1416
1417         node-list-access.html covers 'childNodes' in Dromaeo/dom-traverse.html,
1418         and other DOM attributes that access NodeList.
1419
1420         Test results in my Linux desktop:
1421
1422         [id-getter]
1423         RESULT Bindings: id-getter= 550.517821097 runs/s
1424         median= 550.688360451 runs/s, stdev= 0.970723739106 runs/s, min= 548.628428928 runs/s, max= 552.070263488 runs/s
1425
1426         RESULT Bindings: id-getter= 550.655839847 runs/s
1427         median= 550.688360451 runs/s, stdev= 1.03312821884 runs/s, min= 549.313358302 runs/s, max= 552.070263488 runs/s
1428
1429         RESULT Bindings: id-getter= 550.277753355 runs/s
1430         median= 550.344180225 runs/s, stdev= 1.19960683464 runs/s, min= 547.945205479 runs/s, max= 552.070263488 runs/s
1431
1432         RESULT Bindings: id-getter= 550.072271009 runs/s
1433         median= 550.344180225 runs/s, stdev= 1.38925152131 runs/s, min= 547.263681592 runs/s, max= 552.070263488 runs/s
1434
1435         RESULT Bindings: id-getter= 548.802050235 runs/s
1436         median= 548.628428928 runs/s, stdev= 1.18244513683 runs/s, min= 545.905707196 runs/s, max= 550.688360451 runs/s
1437
1438         [id-setter]
1439         RESULT Bindings: id-setter= 211.370591663 runs/s
1440         median= 210.803689065 runs/s, stdev= 1.4555795889 runs/s, min= 209.973753281 runs/s, max= 214.285714286 runs/s
1441
1442         RESULT Bindings: id-setter= 215.439081352 runs/s
1443         median= 214.797136038 runs/s, stdev= 1.50920388121 runs/s, min= 213.049267643 runs/s, max= 218.446601942 runs/s
1444
1445         RESULT Bindings: id-setter= 216.721698466 runs/s
1446         median= 215.956886352 runs/s, stdev= 1.54090749644 runs/s, min= 214.285714286 runs/s, max= 219.78021978 runs/s
1447
1448         RESULT Bindings: id-setter= 216.343019087 runs/s
1449         median= 215.827338129 runs/s, stdev= 1.46619894553 runs/s, min= 215.053763441 runs/s, max= 218.97810219 runs/s
1450
1451         RESULT Bindings: id-setter= 216.799288017 runs/s
1452         median= 215.956886352 runs/s, stdev= 1.49100776978 runs/s, min= 215.311004785 runs/s, max= 219.78021978 runs/s
1453
1454         [undefined-id-getter]
1455         RESULT Bindings: undefined-id-getter= 494.104255241 runs/s
1456         median= 494.132368875 runs/s, stdev= 1.13092821109 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
1457
1458         RESULT Bindings: undefined-id-getter= 493.921802916 runs/s
1459         median= 493.827160494 runs/s, stdev= 1.25097443119 runs/s, min= 490.196078431 runs/s, max= 495.662949195 runs/s
1460
1461         RESULT Bindings: undefined-id-getter= 491.976485667 runs/s
1462         median= 492.004920049 runs/s, stdev= 0.947090576896 runs/s, min= 490.196078431 runs/s, max= 493.827160494 runs/s
1463
1464         RESULT Bindings: undefined-id-getter= 491.987710185 runs/s
1465         median= 494.132368875 runs/s, stdev= 8.66602543327 runs/s, min= 454.545454545 runs/s, max= 495.662949195 runs/s
1466
1467         RESULT Bindings: undefined-id-getter= 494.195515847 runs/s
1468         median= 494.437577256 runs/s, stdev= 1.06135681702 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
1469
1470         [append-child]
1471         RESULT Bindings: append-child= 260.628237026 runs/s
1472         median= 260.926399352 runs/s, stdev= 2.55231060598 runs/s, min= 256.739409499 runs/s, max= 265.604249668 runs/s
1473
1474         RESULT Bindings: append-child= 280.796193436 runs/s
1475         median= 280.791435348 runs/s, stdev= 2.53961321867 runs/s, min= 277.427490542 runs/s, max= 286.085825748 runs/s
1476
1477         RESULT Bindings: append-child= 279.856209714 runs/s
1478         median= 280.25477707 runs/s, stdev= 2.85447647301 runs/s, min= 275.344180225 runs/s, max= 284.237726098 runs/s
1479
1480         RESULT Bindings: append-child= 280.834502714 runs/s
1481         median= 280.25477707 runs/s, stdev= 2.67738046429 runs/s, min= 277.427490542 runs/s, max= 287.206266319 runs/s
1482
1483         RESULT Bindings: append-child= 274.723872106 runs/s
1484         median= 273.291925466 runs/s, stdev= 3.03671746706 runs/s, min= 272.614622057 runs/s, max= 282.413350449 runs/s
1485
1486         [insert-before]
1487         RESULT Bindings: insert-before= 180.986913006 runs/s
1488         median= 180.878552972 runs/s, stdev= 0.758038687299 runs/s, min= 180.18018018 runs/s, max= 183.968462549 runs/s
1489
1490         RESULT Bindings: insert-before= 186.339916144 runs/s
1491         median= 186.170212766 runs/s, stdev= 0.869022097127 runs/s, min= 185.676392573 runs/s, max= 189.798339265 runs/s
1492
1493         RESULT Bindings: insert-before= 189.45344838 runs/s
1494         median= 189.349112426 runs/s, stdev= 0.811854866567 runs/s, min= 187.79342723 runs/s, max= 192.539109507 runs/s
1495
1496         RESULT Bindings: insert-before= 189.363295991 runs/s
1497         median= 189.349112426 runs/s, stdev= 0.75387713097 runs/s, min= 188.014101058 runs/s, max= 192.076830732 runs/s
1498
1499         RESULT Bindings: insert-before= 189.252041642 runs/s
1500         median= 189.349112426 runs/s, stdev= 0.840447225363 runs/s, min= 187.573270809 runs/s, max= 192.076830732 runs/s
1501
1502         [create-element]
1503         RESULT Bindings: create-element= 280.675830077 runs/s
1504         median= 280.701824914 runs/s, stdev= 0.788606343054 runs/s, min= 279.441117764 runs/s, max= 282.542885974 runs/s
1505
1506         RESULT Bindings: create-element= 276.427631436 runs/s
1507         median= 277.227722772 runs/s, stdev= 3.39874667549 runs/s, min= 262.417994377 runs/s, max= 279.162512463 runs/s
1508
1509         RESULT Bindings: create-element= 277.156894411 runs/s
1510         median= 277.227722772 runs/s, stdev= 1.13255119226 runs/s, min= 274.914089347 runs/s, max= 278.884462151 runs/s
1511
1512         RESULT Bindings: create-element= 278.066825356 runs/s
1513         median= 278.191822254 runs/s, stdev= 0.686497782792 runs/s, min= 276.953511375 runs/s, max= 279.162512463 runs/s
1514
1515         RESULT Bindings: create-element= 276.431538109 runs/s
1516         median= 276.406712734 runs/s, stdev= 0.759593662298 runs/s, min= 275.229357798 runs/s, max= 278.053624628 runs/s
1517
1518         [node-list-access]
1519         RESULT Bindings: node-list-access= 222.747504073 runs/s
1520         median= 222.772277228 runs/s, stdev= 0.789027527555 runs/s, min= 221.674876847 runs/s, max= 224.159402242 runs/s
1521
1522         RESULT Bindings: node-list-access= 220.722448287 runs/s
1523         median= 221.266217576 runs/s, stdev= 1.65463497875 runs/s, min= 217.391304348 runs/s, max= 222.222222222 runs/s
1524
1525         RESULT Bindings: node-list-access= 222.195870443 runs/s
1526         median= 222.222222222 runs/s, stdev= 0.489709262091 runs/s, min= 221.13022113 runs/s, max= 223.048327138 runs/s
1527
1528         RESULT Bindings: node-list-access= 221.431121677 runs/s
1529         median= 221.538545435 runs/s, stdev= 0.608292116087 runs/s, min= 220.048899756 runs/s, max= 222.772277228 runs/s
1530
1531         RESULT Bindings: node-list-access= 219.001367135 runs/s
1532         median= 221.538545435 runs/s, stdev= 4.65773933007 runs/s, min= 209.973753281 runs/s, max= 222.496909765 runs/s
1533
1534         * Bindings/append-child.html: Added.
1535         * Bindings/create-element.html: Added.
1536         * Bindings/id-getter.html: Added.
1537         * Bindings/id-setter.html: Added.
1538         * Bindings/insert-before.html: Added.
1539         * Bindings/node-list-access.html: Added.
1540         * Bindings/undefined-id-getter.html: Added.
1541
1542 2012-05-18  Kentaro Hara  <haraken@chromium.org>
1543
1544         [perf-test] Add a binding benchmark for div.setAttribute()
1545         https://bugs.webkit.org/show_bug.cgi?id=86815
1546
1547         Reviewed by Ryosuke Niwa.
1548
1549         We should remove Bindings/dom-attributes.html and instead add more
1550         reasonable micro benchmarks by classifying DOM binding call paths.
1551
1552         This patch adds a benchmark for div.setAttribute(). This benchmark
1553         covers 'setAttribute' in Dromaeo/dom-attr.html and other DOM methods
1554         that return an undefined.
1555
1556         Test results in my Linux desktop:
1557
1558         RESULT Bindings: set-attribute= 793.745073252 runs/s
1559         median= 791.589665765 runs/s, stdev= 6.00467159709 runs/s, min= 785.27607362 runs/s, max= 808.080808081 runs/s
1560
1561         RESULT Bindings: set-attribute= 790.858444164 runs/s
1562         median= 787.918921436 runs/s, stdev= 7.86264953655 runs/s, min= 780.234070221 runs/s, max= 806.04534005 runs/s
1563
1564         RESULT Bindings: set-attribute= 787.277571417 runs/s
1565         median= 784.31372549 runs/s, stdev= 7.45363346657 runs/s, min= 778.588807786 runs/s, max= 804.020100503 runs/s
1566
1567         RESULT Bindings: set-attribute= 782.401393791 runs/s
1568         median= 779.062978802 runs/s, stdev= 6.48250081621 runs/s, min= 777.642770352 runs/s, max= 796.019900498 runs/s
1569
1570         RESULT Bindings: set-attribute= 791.792516608 runs/s
1571         median= 791.556728232 runs/s, stdev= 6.49182980397 runs/s, min= 779.220779221 runs/s, max= 808.080808081 runs/s
1572
1573         * Bindings/set-attribute.html: Added.
1574
1575 2012-05-17  Kentaro Hara  <haraken@chromium.org>
1576
1577         [perf-test] Add a binding benchmark for div.getAttribute()
1578         https://bugs.webkit.org/show_bug.cgi?id=86814
1579
1580         Reviewed by Ryosuke Niwa.
1581
1582         We should remove Bindings/dom-attributes.html and instead add more
1583         reasonable micro benchmarks by classifying DOM binding call paths.
1584
1585         This patch adds a benchmark for div.getAttribute(). This benchmark
1586         covers 'getAttribute' in Dromaeo/dom-attr.html, and other DOM methods
1587         that return a String.
1588
1589         Test results in my Linux desktop:
1590
1591         RESULT Bindings: get-attribute= 250.088158538 runs/s
1592         median= 250.469728765 runs/s, stdev= 4.66551901315 runs/s, min= 240.673886883 runs/s, max= 256.739409499 runs/s
1593
1594         RESULT Bindings: get-attribute= 250.209764698 runs/s
1595         median= 250.626959986 runs/s, stdev= 4.12030002477 runs/s, min= 241.254523522 runs/s, max= 255.102040816 runs/s
1596
1597         RESULT Bindings: get-attribute= 248.907532887 runs/s
1598         median= 250.312891114 runs/s, stdev= 3.23173125874 runs/s, min= 240.673886883 runs/s, max= 251.572327044 runs/s
1599
1600         RESULT Bindings: get-attribute= 250.243680844 runs/s
1601         median= 250.783797637 runs/s, stdev= 4.19327170024 runs/s, min= 240.963855422 runs/s, max= 255.102040816 runs/s
1602
1603         RESULT Bindings: get-attribute= 245.329046608 runs/s
1604         median= 244.948040416 runs/s, stdev= 2.24314248534 runs/s, min= 240.384615385 runs/s, max= 248.756218905 runs/s
1605
1606         * Bindings/get-attribute.html: Added.
1607
1608 2012-05-17  Kentaro Hara  <haraken@chromium.org>
1609
1610         [perf-test] Add a binding benchmark for getElementById()
1611         https://bugs.webkit.org/show_bug.cgi?id=86808
1612
1613         Reviewed by Ryosuke Niwa.
1614
1615         Currently Bindings/dom-attributes.html is just a collection
1616         of random DOM attributes and methods. We should remove it and
1617         instead add more reasonable micro benchmarks by classifying
1618         DOM binding call paths.
1619
1620         This patch adds a benchmark for document.getElementById(),
1621         which covers other DOM methods that return a Node Object.
1622
1623         The reason why we want to add a benchmark for document.getElementById()
1624         in spite of the fact that Dromaeo/dom-query.html is already testing
1625         document.getElementById(), is that Dromaeo/dom-query.html outputs one
1626         result for several benchmarks (i.e. getElementById().nodeType,
1627         getElementsByTagName()[0].nodeType etc), and thus we cannot observe
1628         regression of getElementById() itself. (Catching regression of
1629         getElementById() would be critical.)
1630
1631         Test results in my Linux desktop:
1632
1633         RESULT Bindings: get-element-by-id= 300.933707795 runs/s
1634         median= 302.267002519 runs/s, stdev= 3.04954648504 runs/s, min= 295.930949445 runs/s, max= 305.34351145 runs/s
1635
1636         RESULT Bindings: get-element-by-id= 302.030324483 runs/s
1637         median= 302.267481977 runs/s, stdev= 1.78518068367 runs/s, min= 298.507462687 runs/s, max= 304.568527919 runs/s
1638
1639         RESULT Bindings: get-element-by-id= 301.993483538 runs/s
1640         median= 302.648171501 runs/s, stdev= 1.87604126626 runs/s, min= 296.662546354 runs/s, max= 304.568527919 runs/s
1641
1642         RESULT Bindings: get-element-by-id= 301.936607982 runs/s
1643         median= 302.45758701 runs/s, stdev= 1.88991087072 runs/s, min= 298.879202989 runs/s, max= 304.955527319 runs/s
1644
1645         RESULT Bindings: get-element-by-id= 301.952234563 runs/s
1646         median= 302.648171501 runs/s, stdev= 1.59929752614 runs/s, min= 299.625468165 runs/s, max= 304.568527919 runs/s
1647
1648         * Bindings/get-element-by-id.html: Added.
1649
1650 2012-05-17  Kentaro Hara  <haraken@chromium.org>
1651
1652         [perf-test] Add a benchmark for body.scrollTop
1653         https://bugs.webkit.org/show_bug.cgi?id=86806
1654
1655         Reviewed by Ryosuke Niwa.
1656
1657         Currently Bindings/dom-attributes.html is just a collection of random
1658         DOM attributes and methods. We should remove it and instead add more
1659         reasonable micro benchmarks by classifying DOM binding call paths.
1660
1661         This patch adds a benchmark for body.scrollTop, which covers other
1662         DOM attributes that return small integers.
1663
1664         (Note: Performance optimization for the benchmark will be coming soon.)
1665
1666         Test results in my Linux desktop:
1667
1668         RESULT Bindings: scroll-top= 209.410654239 runs/s
1669         median= 211.64021164 runs/s, stdev= 4.09958741195 runs/s, min= 201.005025126 runs/s, max= 212.483399734 runs/s
1670
1671         RESULT Bindings: scroll-top= 195.651111157 runs/s
1672         median= 196.319018405 runs/s, stdev= 1.77011627406 runs/s, min= 191.846522782 runs/s, max= 197.28729963 runs/s
1673         RESULT Bindings: scroll-top= 200.004907612 runs/s
1674         median= 201.511335013 runs/s, stdev= 3.27455403827 runs/s, min= 193.236714976 runs/s, max= 202.53164557 runs/s
1675
1676         RESULT Bindings: scroll-top= 209.582737512 runs/s
1677         median= 210.803689065 runs/s, stdev= 3.16769655464 runs/s, min= 203.045685279 runs/s, max= 211.920529801 runs/s
1678
1679         RESULT Bindings: scroll-top= 199.924607687 runs/s
1680         median= 201.13144338 runs/s, stdev= 3.11080503619 runs/s, min= 193.003618818 runs/s, max= 202.02020202 runs/s
1681
1682         * Bindings/scroll-top.html: Added.
1683
1684 2012-05-17  Kentaro Hara  <haraken@chromium.org>
1685
1686         [perf-test] Add a micro benchmark for div.firstChild getter for an undefined firstChild
1687         https://bugs.webkit.org/show_bug.cgi?id=86725
1688
1689         Reviewed by Ryosuke Niwa.
1690
1691         We are going to remove Bindings/dom-attributes.html and instead add more
1692         reasonable micro benchmarks by classifying DOM binding call paths.
1693
1694         In this bug, we add a micro benchmark for div.firstChild getter for an
1695         undefined firstChild. This benchmark covers other undefined DOM attributes
1696         that return a null.
1697
1698         (Note: In V8, div.firstChild for an undefined firstChild is currently slower
1699         than div.firstChild for a defined firstChild.)
1700
1701         Test results in my Linux desktop:
1702
1703         RESULT Bindings: undefined-first-child= 541.408311042 runs/s
1704         median= 541.205412054 runs/s, stdev= 1.29841219187 runs/s, min= 537.897310513 runs/s, max= 543.209876543 runs/s
1705
1706         RESULT Bindings: undefined-first-child= 541.00750695 runs/s
1707         median= 540.540540541 runs/s, stdev= 0.967521230965 runs/s, min= 539.215686275 runs/s, max= 543.209876543 runs/s
1708
1709         RESULT Bindings: undefined-first-child= 523.630714897 runs/s
1710         median= 523.560209424 runs/s, stdev= 1.01570919645 runs/s, min= 522.193211488 runs/s, max= 525.624178712 runs/s
1711
1712         RESULT Bindings: undefined-first-child= 553.077663588 runs/s
1713         median= 553.459119497 runs/s, stdev= 0.805697397863 runs/s, min= 551.378446115 runs/s, max= 554.156171285 runs/s
1714
1715         RESULT Bindings: undefined-first-child= 541.5401432 runs/s
1716         median= 541.538666618 runs/s, stdev= 0.954301364767 runs/s, min= 539.877300613 runs/s, max= 543.209876543 runs/s
1717
1718         * Bindings/undefined-first-child.html: Added.
1719
1720 2012-05-17  Kentaro Hara  <haraken@chromium.org>
1721
1722         [Performance test] Add a micro benchmark for div.firstChild getter
1723         https://bugs.webkit.org/show_bug.cgi?id=86582
1724
1725         Reviewed by Ryosuke Niwa.
1726
1727         We are going to remove Bindings/dom-attributes.html and instead add more
1728         reasonable micro benchmarks by classifying DOM binding call paths.
1729
1730         In this bug, we add a micro benchmark for div.firstChild getter.
1731         This benchmark covers 'firstChild', 'lastChild', 'nextSibling' and
1732         'previousSibling' in Dromaeo/dom-traverse.html, and other DOM attributes
1733         that return a Node object.
1734
1735         Multiple test results in my Linux desktop:
1736
1737         RESULT Bindings: first-child= 798.157160346 runs/s
1738         median= 798.004987531 runs/s, stdev= 1.52006063407 runs/s, min= 796.019900498 runs/s, max= 801.001251564 runs/s
1739         RESULT Bindings: first-child= 797.603608554 runs/s
1740         median= 797.872340426 runs/s, stdev= 2.2522621261 runs/s, min= 791.556728232 runs/s, max= 801.001251564 runs/s
1741         RESULT Bindings: first-child= 798.656295468 runs/s
1742         median= 798.004987531 runs/s, stdev= 1.79367478063 runs/s, min= 797.01120797 runs/s, max= 803.011292346 runs/s
1743         RESULT Bindings: first-child= 797.812784267 runs/s
1744         median= 798.004987531 runs/s, stdev= 2.31766523191 runs/s, min= 791.100123609 runs/s, max= 802.005012531 runs/s
1745         RESULT Bindings: first-child= 797.963311597 runs/s
1746         median= 798.004987531 runs/s, stdev= 2.53014907337 runs/s, min= 789.14919852 runs/s, max= 801.001251564 runs/s
1747
1748         * Bindings/first-child.html: Added.
1749
1750 2012-05-16  Kentaro Hara  <haraken@chromium.org>
1751
1752         [Performance test] Support "description" for PerfTestRunner.run and PerfTestRunner.runPerSecond
1753         https://bugs.webkit.org/show_bug.cgi?id=86696
1754
1755         Reviewed by Ryosuke Niwa.
1756
1757         We want to add some description for each PerfTestRunner.run and
1758         PerfTestRunner.runPerSecond, so that people can know what each
1759         run is testing.
1760
1761         Output example:
1762
1763         $ ./Tools/Scripts/run-perf-tests Bindings/first-child.html
1764         Running Bindings/first-child.html (1 of 1)
1765         DESCRIPTION: Benchmark for DOM attributes that return a Node object.
1766         RESULT Bindings: first-child= 788.359076534 runs/s
1767         median= 797.508097751 runs/s, stdev= 19.0972905207 runs/s, min= 746.666666667 runs/s, max= 801.001251564 runs/s
1768
1769         * resources/runner.js:
1770         (PerfTestRunner.logStatistics):
1771         (PerfTestRunner.printStatistics):
1772         (PerfTestRunner.runPerSecond):
1773
1774 2012-05-16  Yury Semikhatsky  <yurys@chromium.org>
1775
1776         Unreviewed. Fix heap profiler performance test after r117234.
1777
1778         * inspector/heap-snapshot.html:
1779
1780 2012-05-14  Ryosuke Niwa  <rniwa@webkit.org>
1781
1782         Convert CSS and Parser tests to runs/s tests
1783         https://bugs.webkit.org/show_bug.cgi?id=86399
1784
1785         Reviewed by Ojan Vafai.
1786
1787         Use runPerSecond instead of run to measure results in function calls per second (run/s) instead of time (ms).
1788         This allows us to continue measuring performance reliably even when WebKit's performance improves and results
1789         become too small for Date.now()'s precision (around 15 ms).
1790
1791         It should also reduce perf. bots cycle time for slower tests because we limit the number of function calls by time.
1792
1793         * CSS/CSSPropertySetterGetter.html:
1794         * CSS/CSSPropertyUpdateValue.html:
1795         * Parser/css-parser-yui.html:
1796         * Parser/simple-url.html:
1797         * Parser/tiny-innerHTML.html:
1798         * Parser/url-parser.html:
1799         * Parser/xml-parser.html:
1800
1801 2012-05-14  Dan Bernstein  <mitz@apple.com>
1802
1803         Add a line layout performance test
1804         https://bugs.webkit.org/show_bug.cgi?id=86216
1805
1806         Reviewed by Ryosuke Niwa.
1807
1808         * Layout/line-layout.html: Added.
1809
1810 2012-05-14  Tony Chang  <tony@chromium.org>
1811
1812         Don't append log lines while perf tests are running.
1813         https://bugs.webkit.org/show_bug.cgi?id=86028
1814
1815         Reviewed by Ryosuke Niwa.
1816
1817         In some tests, the extra DOM nodes can cause the test timing to change.
1818         Avoid adding DOM nodes until the test is over. When running in a browser,
1819         we append nodes as we run so the user can have some feedback.
1820
1821         * resources/runner.js:
1822         (PerfTestRunner.log): Store the log lines in an array until the test is finished.
1823
1824 2012-05-14  Ryosuke Niwa  <rniwa@webkit.org>
1825
1826         Build fix. Don't adjust calls per iteration in the second run.
1827
1828         * resources/runner.js:
1829         (PerfTestRunner._perSecondRunner):
1830
1831 2012-05-13  Ryosuke Niwa  <rniwa@webkit.org>
1832
1833         performance tests should be able to measure runs/sec rather than time
1834         https://bugs.webkit.org/show_bug.cgi?id=86021
1835
1836         Reviewed by Ojan Vafai.
1837
1838         Add PerfTestRunner.runPerSecond. It uses _runLoop but replaces _runner by _perSecondRunner
1839         to compute runs/s of runFunction.
1840
1841         When _perSecondRunner is called for the first time, i.e. _completedRuns is 0 (notice this is -1
1842         in regular run/_runner), it slowly increases the number of function calls to runFunction between
1843         time measurements in order to discount the time used by new Date() calls themselves until the
1844         total time spent reaches 100 milliseconds.
1845
1846         By default, runPerSecond runs the test for at least 750 milliseconds in each run, and executes
1847         21 runs, yielding the total run time of roughly 18 seconds. This is significantly faster than
1848         most of existing performance tests. Also see http://ejohn.org/blog/accuracy-of-javascript-time/.
1849
1850         Finally, refactored the existing methods of PerfTestRunner to allow "runs/s" unit and share code.
1851
1852         * Layout/flexbox-column-nowrap.html:
1853         * Layout/flexbox-column-wrap.html:
1854         * Layout/flexbox-row-nowrap.html:
1855         * Layout/flexbox-row-wrap.html:
1856         * resources/runner.js:
1857         (PerfTestRunner.computeStatistics): Takes unit.
1858         (PerfTestRunner.logStatistics): Ditto.
1859         (PerfTestRunner._runLoop):
1860         (PerfTestRunner._runner):
1861         (PerfTestRunner.runPerSecond): Added.
1862         (PerfTestRunner._perSecondRunner): Added. Called by _runLoop.
1863         (PerfTestRunner._perSecondRunnerIterator): Added.
1864
1865 2012-05-09  Tony Chang  <tony@chromium.org>
1866
1867         add some basic perf-o-matic tests for flexbox
1868         https://bugs.webkit.org/show_bug.cgi?id=86017
1869
1870         Reviewed by Ryosuke Niwa.
1871
1872         Each of these tests take < 3s on my machine.
1873
1874         * Layout/flexbox-column-nowrap.html: Added.
1875         * Layout/flexbox-column-wrap.html: Added.
1876         * Layout/flexbox-row-nowrap.html: Added.
1877         * Layout/flexbox-row-wrap.html: Added.
1878
1879 2012-05-05  Ilya Tikhonovsky  <loislo@chromium.org>
1880
1881         Web Inspector: unreviewed followup fix for the performance test after r116218.
1882
1883         * inspector/heap-snapshot.html:
1884
1885 2012-05-02  Tom Zakrajsek  <tomz@codeaurora.org>
1886
1887         Need tests for PerfTestRunner.computeStatistics
1888         https://bugs.webkit.org/show_bug.cgi?id=85410
1889
1890         Reviewed by Ryosuke Niwa.
1891
1892         * resources/runner.js:
1893
1894 2012-05-02  Sheriff Bot  <webkit.review.bot@gmail.com>
1895
1896         Unreviewed, rolling out r115905.
1897         http://trac.webkit.org/changeset/115905
1898         https://bugs.webkit.org/show_bug.cgi?id=85435
1899
1900         New computeStatistics test is failing on chromium ports
1901         (Requested by tomz on #webkit).
1902
1903         * resources/runner.js:
1904
1905 2012-05-02  Tom Zakrajsek  <tomz@codeaurora.org>
1906
1907         Need tests for PerfTestRunner.computeStatistics
1908         https://bugs.webkit.org/show_bug.cgi?id=85410
1909
1910         Reviewed by Ryosuke Niwa.
1911
1912         * resources/runner.js:
1913
1914 2012-04-29  Tom Zakrajsek  <tomz@codeaurora.org>
1915
1916         PerfTestRunner.computeStatistics incorrectly calculates min, max and median
1917         https://bugs.webkit.org/show_bug.cgi?id=85111
1918
1919         Reviewed by Ryosuke Niwa.
1920
1921         The sort of the data input was being done alphabetically.
1922         So I provided a numeric compare function.
1923
1924         * resources/runner.js:
1925
1926 2012-04-17  Ilya Tikhonovsky  <loislo@chromium.org>
1927
1928         Web Inspector: the fix for test after massive rename in r114271.
1929         https://bugs.webkit.org/show_bug.cgi?id=84147
1930
1931         Drive by fix. The test was renamed to heap-snapshot.html
1932
1933         Reviewed by Yury Semikhatsky.
1934
1935         * inspector/heap-snapshot.html: Renamed from PerformanceTests/inspector/detailed-heapshots-smoke-test.html.
1936
1937 2012-04-16  Yury Semikhatsky  <yurys@chromium.org>
1938
1939         Web Inspector: rename heap profiler files and classes DetailedHeapshot* ->HeapSnapshot*
1940         https://bugs.webkit.org/show_bug.cgi?id=84038
1941
1942         A bunch of renames "detailed heapshot" -> "heap snapshot".
1943
1944         Reviewed by Pavel Feldman.
1945
1946         * inspector/detailed-heapshots-smoke-test.html:
1947
1948 2012-04-13  Ryosuke Niwa  <rniwa@webkit.org>
1949
1950         Fix skipped list.
1951
1952         * Skipped:
1953
1954 2012-04-12  Ryosuke Niwa  <rniwa@webkit.org>
1955
1956         Enable SVG page loading performance tests
1957         https://bugs.webkit.org/show_bug.cgi?id=83861
1958
1959         Reviewed by Adam Barth.
1960
1961         Unskip PageLoad directory and skip tests that load too fast (less than 100ms) and are unstable,
1962         and the ones that take too long to load (more than 20s).
1963
1964         * Skipped:
1965
1966 2012-04-04  Ilya Tikhonovsky  <loislo@chromium.org>
1967
1968         Web Inspector: Unreviewed. temporary disable broken inspector tests.
1969
1970         * inspector/first-open-scripts.html.broken: Renamed from PerformanceTests/inspector/first-open-scripts.html.
1971         * inspector/network-append-30-requests.html.broken: Renamed from PerformanceTests/inspector/network-append-30-requests.html.
1972         * inspector/show-panel.html.broken: Renamed from PerformanceTests/inspector/show-panel.html.
1973
1974 2012-04-04  Ilya Tikhonovsky  <loislo@chromium.org>
1975
1976         Web Inspector: linearise aggregate's retaining size calculation.
1977         https://bugs.webkit.org/show_bug.cgi?id=83125
1978
1979         This version is twice as fast as the original and it is non-recursive.
1980
1981         Reviewed by Yury Semikhatsky.
1982
1983         * inspector/detailed-heapshots-smoke-test.html:
1984
1985 2012-03-30  David Barr  <davidbarr@chromium.org>
1986
1987         Split up top-level .gitignore and .gitattributes
1988         https://bugs.webkit.org/show_bug.cgi?id=82687
1989
1990         Reviewed by Tor Arne Vestbø.
1991
1992         * .gitattributes: Added.
1993
1994 2012-03-28  Yury Semikhatsky  <yurys@chromium.org>
1995
1996         Web Inspector: switch heap profiler front-end to separate storage of nodes and edges
1997         https://bugs.webkit.org/show_bug.cgi?id=82453
1998
1999         Updated heap profiler performance test after heap profiler front-end
2000         changes.
2001
2002         Reviewed by Pavel Feldman.
2003
2004         * inspector/detailed-heapshots-smoke-test.html:
2005
2006 2012-03-27  Alexis Menard  <alexis.menard@openbossa.org>
2007
2008         Add a perf test which updates the value of an already declared CSS property.
2009         https://bugs.webkit.org/show_bug.cgi?id=82321
2010
2011         Reviewed by Andreas Kling.
2012
2013         This benchmark update CSS existing properties of the style from JS.
2014
2015         * CSS/CSSPropertyUpdateValue.html: Added.
2016
2017 2012-03-15  Kentaro Hara  <haraken@chromium.org>
2018
2019         [PerformanceTests] run-perf-tests should output correct units
2020         https://bugs.webkit.org/show_bug.cgi?id=78303
2021
2022         Reviewed by Ryosuke Niwa.
2023
2024         Previously run-perf-tests just supported "ms" for units.
2025         Consequently, Dromaeo perf tests had been reporting runs/s as "ms".
2026         This patch fixes run-perf-tests so that they can support custom units.
2027         The default unit is "ms".
2028
2029         The test result looks like this:
2030
2031         $ ./Tools/Scripts/run-perf-tests Dromaeo/dom-attr.html
2032         RESULT Dromaeo: dom-attr= 6465.9525483 runs/s
2033         median= 0.0 runs/s, stdev= 24.2983433436 runs/s, min= 6435.87649402 runs/s, max= 6515.63693392 runs/s
2034
2035         * Dromaeo/resources/dromaeorunner.js:
2036         (.):
2037         * resources/runner.js:
2038         (PerfTestRunner.computeStatistics):
2039         (PerfTestRunner.printStatistics):
2040
2041 2012-03-15  Alexis Menard  <alexis.menard@openbossa.org>
2042
2043         Fix the test failing with run-perf-tests.
2044
2045         Rubber stamped by Ryosuke Niwa.
2046
2047         * CSS/CSSPropertySetterGetter.html:
2048
2049 2012-03-14  Alexis Menard  <alexis.menard@openbossa.org>
2050
2051         Add a new perf test to benchmark setting and reading CSS properties from JS.
2052         https://bugs.webkit.org/show_bug.cgi?id=81155
2053
2054         Reviewed by Ryosuke Niwa.
2055
2056         This benchmark read and set CSS properties from JS. It contains a list
2057         of common CSS properties.
2058
2059         * CSS/CSSPropertySetterGetter.html: Added.
2060
2061 2012-03-14  Alexandru Chiculita  <achicu@adobe.com>
2062
2063         Layout/floats.html should be runnable by run-perf-tests
2064         https://bugs.webkit.org/show_bug.cgi?id=77051
2065
2066         Reviewed by Ryosuke Niwa.
2067
2068         I've split Layout/floats.html into multiple tests for each button in the original manual test.
2069         Some tests take longer to run and I've changed the number of iterations, so that each tests finishes under 30s per run.
2070
2071         * DOM/resources/dom-perf.js:
2072         * Layout/floats.html: Removed.
2073         * Layout/floats_100_100.html: Added.
2074         * Layout/floats_100_100_nested.html: Added.
2075         * Layout/floats_20_100.html: Added.
2076         * Layout/floats_20_100_nested.html: Added.
2077         * Layout/floats_2_100.html: Added.
2078         * Layout/floats_2_100_nested.html: Added.
2079         * Layout/floats_50_100.html: Added.
2080         * Layout/floats_50_100_nested.html: Added.
2081         * Layout/resources/floats.css: Added.
2082         (.container):
2083         (.float):
2084         (.big):
2085         (.float-end):
2086         * Layout/resources/floats.js: Added.
2087         (.):
2088         * Skipped:
2089         * resources/runner.js:
2090         (PerfTestRunner.resetRandomSeed):
2091         (PerfTestRunner.random):
2092         (Math.random):
2093             Moved the Math.random to runner.js to be used by all tests.
2094             Added resetRandomSeed to bring the randomizer back to initial seed.
2095             It is useful to get the same results at every run and minimize the
2096             differences between runs.
2097
2098 2012-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2099
2100         Unreviewed, rolling out r110559.
2101         http://trac.webkit.org/changeset/110559
2102         https://bugs.webkit.org/show_bug.cgi?id=81142
2103
2104         Broke Dromaeo tests (Requested by rniwa on #webkit).
2105
2106         * Dromaeo/resources/dromaeorunner.js:
2107         (.):
2108
2109 2012-03-13  Kentaro Hara  <haraken@chromium.org>
2110
2111         Dromaeo perf-tests results are wrong
2112         https://bugs.webkit.org/show_bug.cgi?id=80974
2113
2114         Reviewed by Hajime Morita.
2115
2116         Dromaeo perf-tests had reported the sum of runs/seconds as "ms".
2117         This patch fixes them to report the execution time per run.
2118
2119         At present, they report "0.0ms" for "stdev". This is because
2120         dromaeorunner.js can just know stdev of "runs/seconds"
2121         and cannot calculate stdev of "ms" from that. We can fix it later.
2122
2123         * Dromaeo/resources/dromaeorunner.js:
2124         (.):
2125
2126 2012-03-12  Ilya Tikhonovsky  <loislo@chromium.org>
2127
2128         Web Inspector: chromium: increase heap snapshot performance coverage.
2129         https://bugs.webkit.org/show_bug.cgi?id=80829
2130
2131         Reviewed by Yury Semikhatsky.
2132
2133         * inspector/detailed-heapshots-smoke-test.html:
2134         * inspector/performance-test.js:
2135         (initialize_TimeTracker.InspectorTest.measureFunction):
2136
2137 2012-03-06  Kentaro Hara  <haraken@chromium.org>
2138
2139         [Perf tests] Reduce the number of loops in dom-attributes.html
2140         https://bugs.webkit.org/show_bug.cgi?id=80077
2141
2142         Reviewed by Ryosuke Niwa.
2143
2144         dom-attributes.html takes 100~ seconds in the perf bots. This patch reduces
2145         the time by reducing the number of loops.
2146
2147         This is just a temporary fix. After more detailed investigation, I will reduce
2148         the number of tests in dom-attributes.html, and revert back the number of loops
2149         to guarantee the reliability of the perf test results.
2150
2151         * Bindings/dom-attributes.html:
2152
2153 2012-03-06  Ilya Tikhonovsky  <loislo@chromium.org>
2154
2155         Web Inspector: Heap Snapshot test: split overal time metric into separate metrics.
2156         https://bugs.webkit.org/show_bug.cgi?id=80409
2157
2158         Reviewed by Yury Semikhatsky.
2159
2160         * inspector/detailed-heapshots-smoke-test.html:
2161
2162 2012-03-05  Ilya Tikhonovsky  <loislo@chromium.org>
2163
2164         Web Inspector: [chromium] introduce HeapSnapshot performance test.
2165         https://bugs.webkit.org/show_bug.cgi?id=80280
2166
2167         Reviewed by Pavel Feldman.
2168
2169         * inspector/detailed-heapshots-smoke-test.html: Added.
2170
2171 2012-03-01  Ryosuke Niwa  <rniwa@webkit.org>
2172
2173         DOM tests take too long to run
2174         https://bugs.webkit.org/show_bug.cgi?id=80082
2175
2176         Reviewed by Eric Seidel.
2177
2178         Reduce benchmark.timeToRun from 500ms to 100ms. Doesn't seem to affect test results much
2179         (except DOM/DOMTable.html) but significantly reduces the runtime of tests.
2180
2181         * DOM/resources/dom-perf.js:
2182         (BenchmarkSuite.prototype.RunSingle):
2183
2184 2012-02-26  Kentaro Hara  <haraken@chromium.org>
2185
2186         [Performance Tests] [Chromium] Bindings/dom-attributes.html is timing out
2187         https://bugs.webkit.org/show_bug.cgi?id=79593
2188
2189         Reviewed by Adam Barth.
2190
2191         This patch halves the execution time of Bindings/dom-attributes.html
2192         in order to avoid timeout in Chromium. The reason for the timeout is that
2193         V8 DOM bindings are too much slower than JSC bindings.
2194         I am a bit afraid that this patch will reduce the accuracy of the
2195         perf test results, but it would make sense to reduce the execution time
2196         until we fix the performance issue in V8 DOM bindings.
2197
2198         * Bindings/dom-attributes.html:
2199
2200 2012-02-24  Ryosuke Niwa  <rniwa@webkit.org>
2201
2202         Rename dom*_*attributes.html to dom*-*attributes.html to follow the WebKit convention.
2203
2204         * Bindings/dom-attributes.html: Copied from PerformanceTests/Bindings/dom_attributes.html.
2205         * Bindings/dom_attributes.html: Removed.
2206
2207 2012-02-24  Kentaro Hara  <haraken@chromium.org>
2208
2209         Unreviewed, rolling out r108477.
2210         http://trac.webkit.org/changeset/108477
2211         https://bugs.webkit.org/show_bug.cgi?id=79209
2212
2213         The perf tests committed in r108748 covers the perf tests
2214         committed in r108477. So I'll roll out r108477.
2215
2216         * Bindings/dom_attributes_id_getter.html: Removed.
2217         * Bindings/dom_attributes_id_setter.html: Removed.
2218         * Bindings/resources/dom_attributes_common.js: Removed.
2219
2220 2012-02-24  Kentaro Hara  <haraken@chromium.org>
2221
2222         Add performance tests for DOM attribute getters and setters
2223         https://bugs.webkit.org/show_bug.cgi?id=79208
2224
2225         Reviewed by Ryosuke Niwa.
2226
2227         This patch adds performance micro-benchmarks for DOM attribute
2228         getters and setters. We selected DOM attributes from HTMLElement,
2229         Element and Node which will most impact on the DOM performance
2230         in the real Web and which have different call-paths from another
2231         DOM attribute.
2232
2233         The perf test result in my local Chromium/Linux environment is as follows:
2234         median= 14967.0 ms, stdev= 85.2385476178 ms, min= 14861.0 ms, max= 15155.0 ms
2235
2236         If we run the test with DumpRenderTree, we can get the following test results:
2237         Info: [HTMLElement.id] avg=65.76ms, median=65.00ms, stdev=2.14ms, min=63, max=70
2238         Info: [HTMLElement.title] avg=64.05ms, median=63.00ms, stdev=1.50ms, min=63, max=67
2239         Info: [HTMLElement.lang] avg=64.19ms, median=63.00ms, stdev=1.82ms, min=62, max=67
2240         Info: [HTMLElement.dir] avg=64.10ms, median=63.00ms, stdev=1.72ms, min=62, max=68
2241         Info: [HTMLElement.className] avg=63.33ms, median=63.00ms, stdev=0.89ms, min=63, max=67
2242         Info: [HTMLElement.classList] avg=1946.00ms, median=1945.00ms, stdev=38.22ms, min=1921, max=2110
2243         Info: [HTMLElement.tabIndex] avg=83.52ms, median=80.00ms, stdev=6.00ms, min=79, max=94
2244         Info: [HTMLElement.draggable] avg=78.14ms, median=81.00ms, stdev=3.51ms, min=74, max=82
2245         Info: [HTMLElement.webkitdropzone] avg=64.33ms, median=63.00ms, stdev=1.98ms, min=63, max=68
2246         Info: [HTMLElement.hidden] avg=65.57ms, median=64.00ms, stdev=3.27ms, min=63, max=71
2247         Info: [HTMLElement.accessKey] avg=64.43ms, median=63.00ms, stdev=2.11ms, min=62, max=68
2248         Info: [HTMLElement.children] avg=130.76ms, median=128.00ms, stdev=9.75ms, min=109, max=143
2249         Info: [HTMLElement.isContentEditable] avg=74.29ms, median=75.00ms, stdev=2.00ms, min=71, max=77
2250         Info: [HTMLElement.spellcheck] avg=79.52ms, median=80.00ms, stdev=2.52ms, min=76, max=82
2251         Info: [HTMLElement.innerHTML] avg=279.05ms, median=279.00ms, stdev=1.96ms, min=276, max=283
2252         Info: [HTMLElement.innerText] avg=204.14ms, median=203.00ms, stdev=2.95ms, min=200, max=210
2253         Info: [HTMLElement.outerHTML] avg=1544.10ms, median=1546.00ms, stdev=15.56ms, min=1514, max=1568
2254         Info: [HTMLElement.outerText] avg=216.05ms, median=207.00ms, stdev=18.19ms, min=201, max=247
2255         Info: [HTMLElement.contentEditable] avg=334.24ms, median=323.00ms, stdev=36.06ms, min=318, max=446
2256         Info: [HTMLElement.id="foo"] avg=53.19ms, median=53.00ms, stdev=1.76ms, min=52, max=58
2257         Info: [HTMLElement.title="foo"] avg=63.14ms, median=63.00ms, stdev=0.35ms, min=63, max=64
2258         Info: [HTMLElement.lang="foo"] avg=60.86ms, median=61.00ms, stdev=0.56ms, min=60, max=62
2259         Info: [HTMLElement.dir="foo"] avg=53.57ms, median=54.00ms, stdev=0.58ms, min=53, max=55
2260         Info: [HTMLElement.className="foo"] avg=64.52ms, median=64.00ms, stdev=0.91ms, min=63, max=66
2261         Info: [HTMLElement.tabIndex="foo"] avg=367.86ms, median=369.00ms, stdev=8.06ms, min=352, max=380
2262         Info: [HTMLElement.draggable="foo"] avg=79.43ms, median=79.00ms, stdev=0.58ms, min=79, max=81
2263         Info: [HTMLElement.webkitdropzone="foo"] avg=62.14ms, median=62.00ms, stdev=0.35ms, min=62, max=63
2264         Info: [HTMLElement.hidden="foo"] avg=61.67ms, median=62.00ms, stdev=0.71ms, min=61, max=64
2265         Info: [HTMLElement.accessKey="foo"] avg=61.86ms, median=62.00ms, stdev=0.56ms, min=61, max=63
2266         Info: [HTMLElement.spellcheck="foo"] avg=79.57ms, median=80.00ms, stdev=0.58ms, min=78, max=80
2267         Info: [HTMLElement.innerHTML="foo"] avg=1176.67ms, median=1169.00ms, stdev=26.60ms, min=1146, max=1246
2268         Info: [HTMLElement.innerText="foo"] avg=51.62ms, median=52.00ms, stdev=0.72ms, min=50, max=53
2269         Info: [Element.tagName] avg=79.52ms, median=80.00ms, stdev=1.05ms, min=78, max=81
2270         Info: [Element.style] avg=126.19ms, median=126.00ms, stdev=10.40ms, min=104, max=161
2271         Info: [Element.offsetLeft] avg=98.95ms, median=104.00ms, stdev=4.01ms, min=100, max=99
2272         Info: [Element.clientLeft] avg=98.33ms, median=102.00ms, stdev=2.59ms, min=100, max=99
2273         Info: [Element.scrollLeft] avg=103.29ms, median=96.00ms, stdev=15.63ms, min=100, max=97
2274         Info: [Element.dataset] avg=2448.62ms, median=2441.00ms, stdev=20.43ms, min=2426, max=2503
2275         Info: [Element.firstElementChild] avg=58.71ms, median=58.00ms, stdev=2.37ms, min=57, max=65
2276         Info: [Element.lastElementChild] avg=56.33ms, median=55.00ms, stdev=1.83ms, min=54, max=59
2277         Info: [Element.previousElementSibling] avg=52.95ms, median=52.00ms, stdev=1.70ms, min=52, max=57
2278         Info: [Element.nextElementSibling] avg=58.48ms, median=58.00ms, stdev=1.79ms, min=57, max=63
2279         Info: [Element.childElementCount] avg=64.57ms, median=64.00ms, stdev=1.81ms, min=63, max=71
2280         Info: [Element.onload] avg=98.38ms, median=98.00ms, stdev=0.49ms, min=98, max=99
2281         Info: [Element.scrollLeft="foo"] avg=95.24ms, median=95.00ms, stdev=0.92ms, min=94, max=98
2282         Info: [Element.onload="foo"] avg=67.14ms, median=67.00ms, stdev=0.56ms, min=66, max=68
2283         Info: [Node.nodeName] avg=76.29ms, median=76.00ms, stdev=0.63ms, min=75, max=77
2284         Info: [Node.nodeType] avg=53.05ms, median=52.00ms, stdev=2.61ms, min=52, max=61
2285         Info: [Node.parentNode] avg=53.52ms, median=53.00ms, stdev=1.22ms, min=52, max=56
2286         Info: [Node.childNodes] avg=118.33ms, median=123.00ms, stdev=8.85ms, min=107, max=129
2287         Info: [Node.firstChild] avg=53.62ms, median=53.00ms, stdev=1.13ms, min=51, max=55
2288         Info: [Node.lastChild] avg=53.14ms, median=53.00ms, stdev=1.21ms, min=52, max=55
2289         Info: [Node.previousSibling] avg=51.86ms, median=51.00ms, stdev=1.55ms, min=50, max=54
2290         Info: [Node.nextSibling] avg=52.86ms, median=54.00ms, stdev=1.81ms, min=50, max=55
2291         Info: [Node.attributes] avg=2027.71ms, median=2026.00ms, stdev=10.48ms, min=2010, max=2051
2292         Info: [Node.ownerDocument] avg=152.14ms, median=152.00ms, stdev=1.73ms, min=149, max=155
2293         Info: [Node.namespaceURI] avg=60.86ms, median=59.00ms, stdev=3.85ms, min=56, max=66
2294         Info: [Node.localName] avg=60.00ms, median=59.00ms, stdev=2.71ms, min=57, max=66
2295         Info: [Node.baseURI] avg=671.10ms, median=668.00ms, stdev=10.66ms, min=659, max=706
2296         Info: [Node.parentElement] avg=55.05ms, median=56.00ms, stdev=2.15ms, min=52, max=58
2297         Info: [Node.nodeValue] avg=61.24ms, median=60.00ms, stdev=2.56ms, min=59, max=68
2298         Info: [Node.prefix] avg=60.90ms, median=58.00ms, stdev=4.26ms, min=57, max=68
2299         Info: [Node.textContent] avg=149.71ms, median=149.00ms, stdev=1.12ms, min=148, max=152
2300         Info: [Node.nodeValue="foo"] avg=23.62ms, median=23.00ms, stdev=0.72ms, min=23, max=25
2301         Info: [Node.prefix="foo"] avg=49.57ms, median=49.00ms, stdev=0.73ms, min=49, max=51
2302         Info: [Node.textContent="foo"] avg=145.81ms, median=140.00ms, stdev=17.43ms, min=138, max=199
2303
2304         * Bindings/dom_attributes.html: Added.
2305         * resources/runner.js:
2306         (PerfTestRunner.info):
2307
2308 2012-02-22  Kentaro Hara  <haraken@chromium.org>
2309
2310         Add performance tests for the Element.id getter and setter
2311         https://bugs.webkit.org/show_bug.cgi?id=79209
2312
2313         Reviewed by Adam Barth.
2314
2315         This patch adds performance tests for the Element.id getter and setter.
2316
2317         The results of 10 runs in my local Chromium/Linux are as follows:
2318
2319         dom_attributes_id_getter.html:
2320         median= 92.0 ms, stdev= 1.65151445649 ms, min= 89.0 ms, max= 96.0 ms
2321         median= 87.5 ms, stdev= 1.84390889146 ms, min= 85.0 ms, max= 92.0 ms
2322         median= 94.0 ms, stdev= 1.46543508898 ms, min= 90.0 ms, max= 95.0 ms
2323         median= 86.0 ms, stdev= 1.66958078571 ms, min= 84.0 ms, max= 91.0 ms
2324         median= 94.0 ms, stdev= 2.25610283454 ms, min= 103.0 ms, max= 98.0 ms
2325         median= 86.0 ms, stdev= 1.49666295471 ms, min= 84.0 ms, max= 91.0 ms
2326         median= 86.0 ms, stdev= 1.5321553446 ms, min= 84.0 ms, max= 90.0 ms
2327         median= 86.0 ms, stdev= 2.20227155455 ms, min= 84.0 ms, max= 94.0 ms
2328         median= 96.0 ms, stdev= 1.74570902501 ms, min= 101.0 ms, max= 99.0 ms
2329         median= 86.0 ms, stdev= 1.63935963108 ms, min= 84.0 ms, max= 90.0 ms
2330         median= 94.0 ms, stdev= 1.49248115566 ms, min= 90.0 ms, max= 95.0 ms
2331         median= 88.0 ms, stdev= 5.20192272146 ms, min= 84.0 ms, max= 98.0 ms
2332         median= 86.0 ms, stdev= 1.41067359797 ms, min= 84.0 ms, max= 89.0 ms
2333         median= 86.0 ms, stdev= 1.48660687473 ms, min= 84.0 ms, max= 89.0 ms
2334         median= 94.0 ms, stdev= 1.58113883008 ms, min= 93.0 ms, max= 97.0 ms
2335         median= 86.0 ms, stdev= 1.95959179423 ms, min= 84.0 ms, max= 93.0 ms
2336         median= 86.0 ms, stdev= 1.8547236991 ms, min= 84.0 ms, max= 92.0 ms
2337         median= 86.0 ms, stdev= 1.39283882772 ms, min= 84.0 ms, max= 89.0 ms
2338         median= 88.0 ms, stdev= 1.48660687473 ms, min= 85.0 ms, max= 90.0 ms
2339         median= 86.5 ms, stdev= 2.3 ms, min= 84.0 ms, max= 93.0 ms
2340
2341         dom_attributes_id_setter.html:
2342         median= 123.0 ms, stdev= 2.06397674406 ms, min= 119.0 ms, max= 128.0 ms
2343         median= 119.0 ms, stdev= 1.92028643697 ms, min= 117.0 ms, max= 123.0 ms
2344         median= 121.0 ms, stdev= 1.8781639971 ms, min= 118.0 ms, max= 123.0 ms
2345         median= 123.0 ms, stdev= 2.21585198062 ms, min= 119.0 ms, max= 130.0 ms
2346         median= 124.5 ms, stdev= 2.36378933071 ms, min= 119.0 ms, max= 129.0 ms
2347         median= 122.0 ms, stdev= 2.4474476501 ms, min= 118.0 ms, max= 128.0 ms
2348         median= 123.0 ms, stdev= 1.76351920885 ms, min= 118.0 ms, max= 125.0 ms
2349         median= 119.0 ms, stdev= 1.79652442232 ms, min= 117.0 ms, max= 125.0 ms
2350         median= 121.0 ms, stdev= 1.49916643506 ms, min= 119.0 ms, max= 123.0 ms
2351         median= 119.5 ms, stdev= 1.85135085816 ms, min= 117.0 ms, max= 125.0 ms
2352         median= 124.0 ms, stdev= 1.43090880213 ms, min= 120.0 ms, max= 124.0 ms
2353         median= 122.0 ms, stdev= 1.45859521458 ms, min= 118.0 ms, max= 123.0 ms
2354         median= 123.0 ms, stdev= 1.50332963784 ms, min= 120.0 ms, max= 124.0 ms
2355         median= 123.0 ms, stdev= 1.3638181697 ms, min= 120.0 ms, max= 125.0 ms
2356         median= 119.0 ms, stdev= 1.43527000944 ms, min= 117.0 ms, max= 121.0 ms
2357         median= 122.5 ms, stdev= 1.71682847134 ms, min= 118.0 ms, max= 124.0 ms
2358         median= 121.0 ms, stdev= 1.44481832768 ms, min= 118.0 ms, max= 123.0 ms
2359         median= 120.0 ms, stdev= 1.40978721799 ms, min= 117.0 ms, max= 122.0 ms
2360         median= 122.0 ms, stdev= 1.68522995464 ms, min= 119.0 ms, max= 125.0 ms
2361         median= 122.0 ms, stdev= 1.55804364509 ms, min= 118.0 ms, max= 123.0 ms
2362
2363
2364         * Bindings/dom_attributes_id_getter.html: Added.
2365         * Bindings/dom_attributes_id_setter.html: Added.
2366         * Bindings/resources/dom_attributes_common.js: Added.
2367
2368 2012-02-16  Alexis Menard  <alexis.menard@openbossa.org>
2369
2370         Add a perf test for the CSS parser.
2371         https://bugs.webkit.org/show_bug.cgi?id=78114
2372
2373         Reviewed by Ryosuke Niwa.
2374
2375         Add a perf test for the CSS parser. It load a big CSS chunk
2376         which contains some snippets of the YUI library from Yahoo!.
2377
2378         * Parser/css-parser-yui.html: Added.
2379
2380 2012-02-08  Hajime Morrita  <morrita@chromium.org>
2381
2382         [PerformanceTests] sunspider-crypto-md5.html and sunspider-crypto-sha1.html are timing out on cr-mac perf bot
2383         https://bugs.webkit.org/show_bug.cgi?id=78174
2384
2385         Reviewed by Ryosuke Niwa.
2386
2387         Pulled back removed files.
2388
2389         * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-md5.html: Added.
2390         * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-sha1.html: Added.
2391
2392 2012-02-02  Hajime Morrita  <morrita@chromium.org>
2393
2394         [PerformanceTests] Each Dromaeo test needs its landing html.
2395         https://bugs.webkit.org/show_bug.cgi?id=77504
2396
2397         Reviewed by Ryosuke Niwa.
2398
2399         - Added landing pages for each test which are listed in MANIFEST.json
2400         - Removed some tests which depends on the library whose license is incompatible to WebKit.
2401         - Added local copy of corresponding library. And replace the references to the remote sources
2402           to the local copies.
2403         - Removed old library files under Dromaeo/resources/dromaeo/web/lib/.
2404         - Skipped Sunsupier and v8 test. Such JS centric test should have its own test instead of
2405           running as a part of Dromaeo.
2406
2407         * Dromaeo/cssquery-dojo.html: Added.
2408         * Dromaeo/cssquery-jquery.html: Added.
2409         * Dromaeo/cssquery-prototype.html: Added.
2410         * Dromaeo/dom-attr.html: Added.
2411         * Dromaeo/dom-modify.html: Added.
2412         * Dromaeo/dom-traverse.html: Added.
2413         * Dromaeo/dromaeo-3d-cube.html: Added.
2414         * Dromaeo/dromaeo-core-eval.html: Added.
2415         * Dromaeo/dromaeo-object-array.html: Added.
2416         * Dromaeo/dromaeo-object-regexp.html: Added.
2417         * Dromaeo/dromaeo-object-string.html: Added.
2418         * Dromaeo/dromaeo-string-base64.html: Added.
2419         * Dromaeo/jslib-attr-jquery.html: Added.
2420         * Dromaeo/jslib-attr-prototype.html: Added.
2421         * Dromaeo/jslib-event-jquery.html: Added.
2422         * Dromaeo/jslib-event-prototype.html: Added.
2423         * Dromaeo/jslib-modify-jquery.html: Added.
2424         * Dromaeo/jslib-modify-prototype.html: Added.
2425         * Dromaeo/jslib-style-jquery.html: Added.
2426         * Dromaeo/jslib-style-prototype.html: Added.
2427         * Dromaeo/jslib-traverse-jquery.html: Added.
2428         * Dromaeo/jslib-traverse-prototype.html: Added.
2429         * Dromaeo/resources/dromaeo/web/lib/dojo.js: Removed.
2430         * Dromaeo/resources/dromaeo/web/lib/dojo-1.6.1.js: Added.
2431         * Dromaeo/resources/dromaeo/web/lib/jquery.js: Removed.
2432         * Dromaeo/resources/dromaeo/web/lib/jquery-1.6.4.js: Added.
2433         * Dromaeo/resources/dromaeo/web/lib/mootools.js: Removed.
2434         * Dromaeo/resources/dromaeo/web/lib/prototype.js: Removed.
2435         * Dromaeo/resources/dromaeo/web/lib/prototype-1.7.js: Added.
2436         * Dromaeo/resources/dromaeo/web/tests/cssquery-dojo.html:
2437         * Dromaeo/resources/dromaeo/web/tests/cssquery-jquery.html:
2438         * Dromaeo/resources/dromaeo/web/tests/cssquery-mootools.html: Removed.
2439         * Dromaeo/resources/dromaeo/web/tests/cssquery-prototype.html:
2440         * Dromaeo/resources/dromaeo/web/tests/jslib-attr-jquery.html:
2441         * Dromaeo/resources/dromaeo/web/tests/jslib-attr-prototype.html:
2442         * Dromaeo/resources/dromaeo/web/tests/jslib-event-jquery.html:
2443         * Dromaeo/resources/dromaeo/web/tests/jslib-event-prototype.html:
2444         * Dromaeo/resources/dromaeo/web/tests/jslib-modify-jquery.html:
2445         * Dromaeo/resources/dromaeo/web/tests/jslib-modify-prototype.html:
2446         * Dromaeo/resources/dromaeo/web/tests/jslib-style-jquery.html:
2447         * Dromaeo/resources/dromaeo/web/tests/jslib-style-prototype.html:
2448         * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-jquery.html:
2449         * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-prototype.html:
2450         * Dromaeo/sunspider-3d-morph.html: Added.
2451         * Dromaeo/sunspider-3d-raytrace.html: Added.
2452         * Dromaeo/sunspider-access-binary-trees.html: Added.
2453         * Dromaeo/sunspider-access-fannkuch.html: Added.
2454         * Dromaeo/sunspider-access-nbody.html: Added.
2455         * Dromaeo/sunspider-access-nsieve.html: Added.
2456         * Dromaeo/sunspider-bitops-3bit-bits-in-byte.html: Added.
2457         * Dromaeo/sunspider-bitops-bits-in-byte.html: Added.
2458         * Dromaeo/sunspider-bitops-bitwise-and.html: Added.
2459         * Dromaeo/sunspider-bitops-nsieve-bits.html: Added.
2460         * Dromaeo/sunspider-controlflow-recursive.html: Added.
2461         * Dromaeo/sunspider-crypto-aes.html: Added.
2462         * Dromaeo/sunspider-crypto-md5.html: Added.
2463         * Dromaeo/sunspider-crypto-sha1.html: Added.
2464         * Dromaeo/sunspider-date-format-tofte.html: Added.
2465         * Dromaeo/sunspider-date-format-xparb.html: Added.
2466         * Dromaeo/sunspider-math-cordic.html: Added.
2467         * Dromaeo/sunspider-math-partial-sums.html: Added.
2468         * Dromaeo/sunspider-math-spectral-norm.html: Added.
2469         * Dromaeo/sunspider-regexp-dna.html: Added.
2470         * Dromaeo/sunspider-string-fasta.html: Added.
2471         * Dromaeo/sunspider-string-tagcloud.html: Added.
2472         * Dromaeo/sunspider-string-unpack-code.html: Added.
2473         * Dromaeo/sunspider-string-validate-input.html: Added.
2474         * Dromaeo/v8-crypto.html: Added.
2475         * Dromaeo/v8-deltablue.html: Added.
2476         * Dromaeo/v8-earley-boyer.html: Added.
2477         * Dromaeo/v8-raytrace.html: Added.
2478         * Dromaeo/v8-richards.html: Added.
2479         * Skipped:
2480
2481 2012-02-02  Sheriff Bot  <webkit.review.bot@gmail.com>
2482
2483         Unreviewed, rolling out r106543.
2484         http://trac.webkit.org/changeset/106543
2485         https://bugs.webkit.org/show_bug.cgi?id=77671
2486
2487         Made tests less stable (Requested by rniwa on #webkit).
2488
2489         * resources/init.html: Removed.
2490
2491 2012-02-02  Ryosuke Niwa  <rniwa@webkit.org>
2492
2493         [PerformanceTests] tests have dependencies
2494         https://bugs.webkit.org/show_bug.cgi?id=77506
2495
2496         Reviewed by Hajime Morita.
2497
2498         * resources/init.html: Added.
2499
2500 2012-02-01  Ryosuke Niwa  <rniwa@webkit.org>
2501
2502         Fix after r106386. The empty anchor element was generating an erroneous whitespace.
2503
2504         * Bindings/event-target-wrapper.html:
2505
2506 2012-02-01  Ryosuke Niwa  <rniwa@webkit.org>
2507
2508         Another fix after r106379.
2509
2510         * Parser/html5-full-render.html:
2511
2512 2012-01-31  Hajime Morrita  <morrita@chromium.org>
2513
2514         Import Dromaeo to WebKit repository.
2515         https://bugs.webkit.org/show_bug.cgi?id=77328
2516
2517         Reviewed by Ryosuke Niwa.
2518
2519         Imported a modified version of Dromaeo which is able to
2520         run on the DRT.
2521
2522         The imported version originally came from:
2523         https://github.com/omo/dromaeo/commit/c942a1452109cdd5f759b3c4aee8d68d490d44a2
2524
2525         * Dromaeo/resources/dromaeo/web/application.css: Added.
2526         * Dromaeo/resources/dromaeo/web/favicon.ico: Added.
2527         * Dromaeo/resources/dromaeo/web/favicon.png: Added.
2528         * Dromaeo/resources/dromaeo/web/htmlrunner.js: Added.
2529         * Dromaeo/resources/dromaeo/web/ie.css: Added.
2530         * Dromaeo/resources/dromaeo/web/images/bg.png: Added.
2531         * Dromaeo/resources/dromaeo/web/images/clouds.png: Added.
2532         * Dromaeo/resources/dromaeo/web/images/clouds2.png: Added.
2533         * Dromaeo/resources/dromaeo/web/images/comets.png: Added.
2534         * Dromaeo/resources/dromaeo/web/images/dino1.png: Added.
2535         * Dromaeo/resources/dromaeo/web/images/dino2.png: Added.
2536         * Dromaeo/resources/dromaeo/web/images/dino3.png: Added.
2537         * Dromaeo/resources/dromaeo/web/images/dino4.png: Added.
2538         * Dromaeo/resources/dromaeo/web/images/dino5.png: Added.
2539         * Dromaeo/resources/dromaeo/web/images/dino6.png: Added.
2540         * Dromaeo/resources/dromaeo/web/images/dino7.png: Added.
2541         * Dromaeo/resources/dromaeo/web/images/dino8.png: Added.
2542         * Dromaeo/resources/dromaeo/web/images/left.png: Added.
2543         * Dromaeo/resources/dromaeo/web/images/logo.png: Added.
2544         * Dromaeo/resources/dromaeo/web/images/logo2.png: Added.
2545         * Dromaeo/resources/dromaeo/web/images/logo3.png: Added.
2546         * Dromaeo/resources/dromaeo/web/images/right.png: Added.
2547         * Dromaeo/resources/dromaeo/web/images/top.png: Added.
2548         * Dromaeo/resources/dromaeo/web/images/water.png: Added.
2549         * Dromaeo/resources/dromaeo/web/index.html: Added.
2550         * Dromaeo/resources/dromaeo/web/jquery.js: Added.
2551         * Dromaeo/resources/dromaeo/web/lib/dojo.js: Added.
2552         * Dromaeo/resources/dromaeo/web/lib/jquery.js: Added.
2553         * Dromaeo/resources/dromaeo/web/lib/mootools.js: Added.
2554         * Dromaeo/resources/dromaeo/web/lib/prototype.js: Added.
2555         * Dromaeo/resources/dromaeo/web/pngfix.js: Added.
2556         * Dromaeo/resources/dromaeo/web/reset.css: Added.
2557         * Dromaeo/resources/dromaeo/web/test-head.html: Added.
2558         * Dromaeo/resources/dromaeo/web/test-head.js: Added.
2559         * Dromaeo/resources/dromaeo/web/test-tail.html: Added.
2560         * Dromaeo/resources/dromaeo/web/test-tail.js: Added.
2561         * Dromaeo/resources/dromaeo/web/tests/MANIFEST.json: Added.
2562         * Dromaeo/resources/dromaeo/web/tests/cssquery-dojo.html: Added.
2563         * Dromaeo/resources/dromaeo/web/tests/cssquery-jquery.html: Added.
2564         * Dromaeo/resources/dromaeo/web/tests/cssquery-mootools.html: Added.
2565         * Dromaeo/resources/dromaeo/web/tests/cssquery-prototype.html: Added.
2566         * Dromaeo/resources/dromaeo/web/tests/cssquery-yui.html: Added.
2567         * Dromaeo/resources/dromaeo/web/tests/dom-attr.html: Added.
2568         * Dromaeo/resources/dromaeo/web/tests/dom-modify.html: Added.
2569         * Dromaeo/resources/dromaeo/web/tests/dom-query.html: Added.
2570         * Dromaeo/resources/dromaeo/web/tests/dom-traverse.html: Added.
2571         * Dromaeo/resources/dromaeo/web/tests/dromaeo-3d-cube.html: Added.
2572         * Dromaeo/resources/dromaeo/web/tests/dromaeo-core-eval.html: Added.
2573         * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-array.html: Added.
2574         * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-regexp.html: Added.
2575         * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-string.html: Added.
2576         * Dromaeo/resources/dromaeo/web/tests/dromaeo-string-base64.html: Added.
2577         * Dromaeo/resources/dromaeo/web/tests/jslib-attr-jquery.html: Added.
2578         * Dromaeo/resources/dromaeo/web/tests/jslib-attr-prototype.html: Added.
2579         * Dromaeo/resources/dromaeo/web/tests/jslib-event-jquery.html: Added.
2580         * Dromaeo/resources/dromaeo/web/tests/jslib-event-prototype.html: Added.
2581         * Dromaeo/resources/dromaeo/web/tests/jslib-modify-jquery.html: Added.
2582         * Dromaeo/resources/dromaeo/web/tests/jslib-modify-prototype.html: Added.
2583         * Dromaeo/resources/dromaeo/web/tests/jslib-style-jquery.html: Added.
2584         * Dromaeo/resources/dromaeo/web/tests/jslib-style-prototype.html: Added.
2585         * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-jquery.html: Added.
2586         * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-prototype.html: Added.
2587         * Dromaeo/resources/dromaeo/web/tests/sunspider-3d-morph.html: Added.
2588         * Dromaeo/resources/dromaeo/web/tests/sunspider-3d-raytrace.html: Added.
2589         * Dromaeo/resources/dromaeo/web/tests/sunspider-access-binary-trees.html: Added.
2590         * Dromaeo/resources/dromaeo/web/tests/sunspider-access-fannkuch.html: Added.
2591         * Dromaeo/resources/dromaeo/web/tests/sunspider-access-nbody.html: Added.
2592         * Dromaeo/resources/dromaeo/web/tests/sunspider-access-nsieve.html: Added.
2593         * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-3bit-bits-in-byte.html: Added.
2594         * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-bits-in-byte.html: Added.
2595         * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-bitwise-and.html: Added.
2596         * Dromaeo/resources/dromaeo/web/tests/sunspider-bitops-nsieve-bits.html: Added.
2597         * Dromaeo/resources/dromaeo/web/tests/sunspider-controlflow-recursive.html: Added.
2598         * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-aes.html: Added.
2599         * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-md5.html: Added.
2600         * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-sha1.html: Added.
2601         * Dromaeo/resources/dromaeo/web/tests/sunspider-date-format-tofte.html: Added.
2602         * Dromaeo/resources/dromaeo/web/tests/sunspider-date-format-xparb.html: Added.
2603         * Dromaeo/resources/dromaeo/web/tests/sunspider-math-cordic.html: Added.
2604         * Dromaeo/resources/dromaeo/web/tests/sunspider-math-partial-sums.html: Added.
2605         * Dromaeo/resources/dromaeo/web/tests/sunspider-math-spectral-norm.html: Added.
2606         * Dromaeo/resources/dromaeo/web/tests/sunspider-regexp-dna.html: Added.
2607         * Dromaeo/resources/dromaeo/web/tests/sunspider-string-fasta.html: Added.
2608         * Dromaeo/resources/dromaeo/web/tests/sunspider-string-tagcloud.html: Added.
2609         * Dromaeo/resources/dromaeo/web/tests/sunspider-string-unpack-code.html: Added.
2610         * Dromaeo/resources/dromaeo/web/tests/sunspider-string-validate-input.html: Added.
2611         * Dromaeo/resources/dromaeo/web/tests/v8-crypto.html: Added.
2612         * Dromaeo/resources/dromaeo/web/tests/v8-deltablue.html: Added.
2613         * Dromaeo/resources/dromaeo/web/tests/v8-earley-boyer.html: Added.
2614         * Dromaeo/resources/dromaeo/web/tests/v8-raytrace.html: Added.
2615         * Dromaeo/resources/dromaeo/web/tests/v8-richards.html: Added.
2616         * Dromaeo/resources/dromaeo/web/tests/72px.png: Added.
2617         * Dromaeo/resources/dromaeo/web/web-style.css: Added.
2618         * Dromaeo/resources/dromaeo/web/webrunner.js: Added.
2619         * Skipped: Unskip the dromaeo driver.
2620
2621 2012-01-31  Ryosuke Niwa  <rniwa@webkit.org>
2622
2623         Fix Parser/html5-full-render.html after r106379.
2624
2625         * Parser/html5-full-render.html:
2626
2627 2012-01-31  Ryosuke Niwa  <rniwa@webkit.org>
2628
2629         PerfTestRunner should automatically create pre#log
2630         https://bugs.webkit.org/show_bug.cgi?id=77469
2631
2632         Reviewed by Tony Chang.
2633
2634         Automatically generate <pre id="log"></pre> if there isn't one.
2635
2636         * Bindings/event-target-wrapper.html:
2637         * DOM/Accessors.html:
2638         * DOM/CloneNodes.html:
2639         * DOM/CreateNodes.html:
2640         * DOM/DOMDivWalk.html:
2641         * DOM/DOMTable.html:
2642         * DOM/DOMWalk.html:
2643         * DOM/Events.html:
2644         * DOM/GetElement.html:
2645         * DOM/GridSort.html:
2646         * DOM/Template.html:
2647         * Dromaeo/dom-query.html:
2648         * Dromaeo/resources/dromaeorunner.js:
2649         * Parser/html-parser.html:
2650         * Parser/html5-full-render.html:
2651         * Parser/simple-url.html:
2652         * Parser/tiny-innerHTML.html:
2653         * Parser/url-parser.html:
2654         * Parser/xml-parser.html:
2655         * resources/runner.js:
2656         (PerfTestRunner.log):
2657         (PerfTestRunner.printStatistics):
2658
2659 2012-01-31  Ryosuke Niwa  <rniwa@webkit.org>
2660
2661         runner.js in performance tests should define a class
2662         https://bugs.webkit.org/show_bug.cgi?id=77074
2663
2664         Reviewed by Eric Seidel.
2665
2666         Wrap all functions in runner.js by PerfTestRunner and update tests that runner.js accordingly.
2667         Also replace compute* functions in runner.js by more robust code from dom-perf.js.
2668
2669         * Bindings/event-target-wrapper.html:
2670         * DOM/DOMTable.html:
2671         * DOM/resources/dom-perf.js:
2672         (BenchmarkSuite.prototype.RunSingle):
2673         (runBenchmarkSuite):
2674         * Mutation/append-child-deep.html:
2675         * Mutation/append-child.html:
2676         * Mutation/inner-html.html:
2677         * Mutation/remove-child-deep.html:
2678         * Mutation/remove-child.html:
2679         * Parser/html-parser.html:
2680         * Parser/html5-full-render.html:
2681         * Parser/simple-url.html:
2682         * Parser/tiny-innerHTML.html:
2683         * Parser/url-parser.html:
2684         * Parser/xml-parser.html:
2685         * resources/runner.js:
2686         (PerfTestRunner.log):
2687         (PerfTestRunner.logInfo):
2688         (PerfTestRunner.loadFile):
2689         (PerfTestRunner.computeStatistics):
2690         (PerfTestRunner.logStatistics):
2691         (PerfTestRunner._runLoop.else):
2692         (PerfTestRunner._runLoop):
2693         (PerfTestRunner._runner):
2694
2695 2012-01-31  Hajime Morrita  <morrita@chromium.org>
2696
2697         [PerformanceTests] Add landing html for Dromaeo dom-query test
2698         https://bugs.webkit.org/show_bug.cgi?id=77329
2699
2700         Reviewed by Ryosuke Niwa.
2701
2702         Added a "landing html" which includes actual dromaemo page and
2703         send messages to interact with it. The landing html also dumps the
2704         score in run-perf-tests friendly format.
2705
2706         This test isn't enabled until Dromaemo itself is available for run-perf-tests.
2707         It will happen in a separate change.
2708
2709         * Dromaeo/dom-query.html: Added.
2710         * Dromaeo/resources/dromaeorunner.js: Added.
2711         * Skipped: Skipping this for now.
2712
2713 2012-01-30  Ryosuke Niwa  <rniwa@webkit.org>
2714
2715         Skip inspector tests since they have been timing out.
2716
2717         * Skipped:
2718
2719 2012-01-29  Ryosuke Niwa  <rniwa@webkit.org>
2720
2721         DOM/DOMDivWalk.html result is unreliable
2722         https://bugs.webkit.org/show_bug.cgi?id=77313
2723
2724         Reviewed by Adam Barth.
2725
2726         Trigger garbage collection manually between test runs to avoid GC
2727         to occur in the middle of runs.
2728
2729         * DOM/resources/dom-perf.js:
2730         (BenchmarkSuite.prototype.RunSingle):
2731         * resources/runner.js:
2732         (gc.else.gcRec):
2733         (gc):
2734         (runLoop):
2735
2736 2012-01-26  Ryosuke Niwa  <rniwa@webkit.org>
2737
2738         Import Chromium's dom_perf test
2739         https://bugs.webkit.org/show_bug.cgi?id=77175
2740
2741         Reviewed by Adam Barth.
2742
2743         Import dom_perf.
2744
2745         Note resources/dom/suites.js isn't used by any html file yet but it will be used by Chromium port
2746         once its perf bots start pulling test files from WebKit repository instead of Google's internal repository.
2747
2748         * DOM: Added.
2749         * DOM/Accessors.html: Added.
2750         * DOM/CloneNodes.html: Added.
2751         * DOM/CreateNodes.html: Added.
2752         * DOM/DOMDivWalk.html: Added.
2753         * DOM/DOMTable.html: Added.
2754         * DOM/DOMWalk.html: Added.
2755         * DOM/Events.html: Added.
2756         * DOM/GetElement.html: Added.
2757         * DOM/GridSort.html: Added.
2758         * DOM/Template.html: Added.
2759         * DOM/resources: Added.
2760         * DOM/resources/dom-perf.js: Added.
2761         * DOM/resources/dom-perf: Added.
2762         * DOM/resources/dom-perf/accessors.js: Added.
2763         * DOM/resources/dom-perf/clonenodes.js: Added.
2764         * DOM/resources/dom-perf/createnodes.js: Added.
2765         * DOM/resources/dom-perf/domdivwalk.js: Added.
2766         * DOM/resources/dom-perf/domtable.js: Added.
2767         * DOM/resources/dom-perf/domwalk.js: Added.
2768         * DOM/resources/dom-perf/events.js: Added.
2769         * DOM/resources/dom-perf/getelement.js: Added.
2770         * DOM/resources/dom-perf/gridsort.js: Added.
2771         * DOM/resources/dom-perf/suites.js: Added.
2772         * DOM/resources/dom-perf/template.js: Added.
2773         * resources/runner.js:
2774
2775 2012-01-25  Ryosuke Niwa  <rniwa@webkit.org>
2776
2777         html5-full-render.html fails due to a log
2778         https://bugs.webkit.org/show_bug.cgi?id=77046
2779
2780         Reviewed by Adam Barth.
2781
2782         Replace the call to log() in html5-full-render.html by a call to newly added logInfo(),
2783         which doesn't print anything inside DRT.
2784
2785         * Parser/html5-full-render.html:
2786         * resources/runner.js:
2787         (logInfo):
2788
2789 2012-01-19  Adam Barth  <abarth@webkit.org>
2790
2791         PerformanceTests's runner.js shouldn't be Parser-specific
2792         https://bugs.webkit.org/show_bug.cgi?id=76670
2793
2794         Reviewed by Ryosuke Niwa.
2795
2796         This runner script is used by a bunch of difference performance tests.
2797         It shouldn't be in the Parser directory anymore.
2798
2799         * Bindings/event-target-wrapper.html:
2800         * Mutation/append-child-deep.html:
2801         * Mutation/append-child.html:
2802         * Mutation/inner-html.html:
2803         * Mutation/remove-child-deep.html:
2804         * Mutation/remove-child.html:
2805         * Parser/html-parser.html:
2806         * Parser/html5-full-render.html:
2807         * Parser/resources/runner.js: Removed.
2808         * Parser/simple-url.html:
2809         * Parser/tiny-innerHTML.html:
2810         * Parser/url-parser.html:
2811         * Parser/xml-parser.html:
2812         * resources: Added.
2813         * resources/runner.js: Copied from PerformanceTests/Parser/resources/runner.js.
2814
2815 2012-01-19  Ryosuke Niwa  <rniwa@webkit.org>
2816
2817         Some perf tests time out when ran by run-perf-tests
2818         https://bugs.webkit.org/show_bug.cgi?id=76612
2819
2820         Reviewed by Dirk Pranke and Eric Seidel.
2821
2822         Replace all images in html5.html by geenbox.png to avoid accessing whatwg.org when
2823         running the parser tests. Also call dumpAsText, waitUntilDone, and notifyDone automatically
2824         inside runner.js to avoid having to call them in individual tests.
2825
2826         * Bindings/event-target-wrapper.html: Removed calls to layoutTestController methods since
2827         they are now called by runner.js automatically.
2828         * Parser/resources/greenbox.png: Copied from LayoutTests/fast/css/resources/greenbox.png.
2829         * Parser/resources/html5.html:
2830         * Parser/resources/runner.js:
2831         (runLoop):
2832
2833 2012-01-18  Ryosuke Niwa  <rniwa@webkit.org>
2834
2835         run-perf-tests should support Skipped list
2836         https://bugs.webkit.org/show_bug.cgi?id=76594
2837
2838         Reviewed by Adam Barth.
2839
2840         Add Skipped list to be used by run-perf-tests as it can only runs tests in
2841         Bindings, Parser, and inspector at the moment.
2842
2843         * Skipped: Added.
2844
2845 2012-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
2846
2847         Web Inspector: performance: restore 'log 300 messages into console' test.
2848         https://bugs.webkit.org/show_bug.cgi?id=76170
2849
2850         It was removed in order of transition from layout tests to perf tests.
2851
2852         Reviewed by Yury Semikhatsky.
2853
2854         * inspector/console-300-lines.html: Added.
2855
2856 2012-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
2857
2858         Web Inspector: performance tests: fix memory leak in first-open-resources test.
2859         https://bugs.webkit.org/show_bug.cgi?id=76049
2860
2861         first-open-resources doesn't reset resource panel properly after test run.
2862
2863         Reviewed by Yury Semikhatsky.
2864
2865         * inspector/first-open-resources.html:
2866
2867 2012-01-10  Ilya Tikhonovsky  <loislo@chromium.org>
2868
2869         Unreviewed. WebInspector: Remove unnecessary logging from the test.
2870
2871         * inspector/first-open-resources.html:
2872
2873 2012-01-10  Ilya Tikhonovsky  <loislo@chromium.org>
2874
2875         Unreviewed. Restore test that was removed during migration from LayoutTests folder.
2876
2877         * inspector/first-open-resources.html: Added.
2878
2879 2012-01-09  Ilya Tikhonovsky  <loislo@chromium.org>
2880
2881         Unreviewed test fix after r103683.
2882
2883         * inspector/first-open-scripts.html:
2884         * inspector/show-panel.html:
2885
2886 2012-01-03  Adam Barth  <abarth@webkit.org>
2887
2888         html-parser.html takes too long to run
2889         https://bugs.webkit.org/show_bug.cgi?id=75515
2890
2891         Reviewed by Eric Seidel.
2892
2893         In working on runner.js, we introduced a factor of 10 increase to the
2894         running time of this benchmark.  This patch dials down the number of
2895         iterations to something more user-friendly.
2896
2897         * Parser/html-parser.html:
2898
2899 2011-12-18  Ilya Tikhonovsky  <loislo@chromium.org>
2900
2901         Web Inspector: move heap data stats to separate tab.
2902         https://bugs.webkit.org/show_bug.cgi?id=74704
2903
2904         Reviewed by Pavel Feldman.
2905
2906         * inspector/performance-test.js:
2907         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
2908         (initialize_TimeTracker.InspectorTest.runPerformanceTest):
2909
2910 2011-12-01  Ilya Tikhonovsky  <loislo@chromium.org>
2911
2912         Web Inspector: chromium: move and adapt Inspector's performance tests for running with run-inspector-perf-tests.py.
2913         https://bugs.webkit.org/show_bug.cgi?id=72260
2914
2915         Reviewed by Pavel Feldman.
2916
2917         * inspector/first-open-elements.html: Renamed from LayoutTests/inspector/performance/resources/first-open-elements.html.
2918         * inspector/first-open-scripts.html: Renamed from LayoutTests/inspector/performance/resources/first-open-scripts.html.
2919         * inspector/inspector-startup-time.html: Renamed from LayoutTests/inspector/performance/resources/inspector-startup-time.html.
2920         * inspector/network-append-30-requests.html: Renamed from LayoutTests/inspector/performance/resources/network-append-30-requests.html.
2921         * inspector/performance-test.js: Renamed from LayoutTests/inspector/performance/resources/performance-test.js.
2922         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer):
2923         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.start):
2924         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.finish):
2925         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._getJSHeapSize):
2926         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.done):
2927         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._runTest):
2928         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
2929         (initialize_TimeTracker.InspectorTest.runPerformanceTest):
2930         (initialize_TimeTracker.InspectorTest.mark):
2931         * inspector/show-panel.html: Renamed from LayoutTests/inspector/performance/resources/show-panel.html.
2932
2933 2011-11-09  Adam Klein  <adamk@chromium.org>
2934
2935         [MutationObservers] Microbenchmarks for appendChild, removeChild, and innerHTML
2936         https://bugs.webkit.org/show_bug.cgi?id=71939
2937
2938         Reviewed by Ojan Vafai.
2939
2940         These benchmarks time both the DOM mutations themselves and the time taken
2941         to call the MutationCallback. This measurement is achieved by
2942         executing the code entirely within the MutationCallback itself.
2943
2944         * Mutation/append-child-deep.html: Added. Covers appendChild in a 200-node-deep tree with subtree observation.
2945         * Mutation/append-child.html: Added. Covers appendChild in a flat tree.
2946         * Mutation/inner-html.html: Added. Covers innerHTML adding and removing many nodes at a time.
2947         * Mutation/remove-child-deep.html: Added. Covers removeChild in a 200-node-deep tree with subtree observation.
2948         * Mutation/remove-child.html: Added. Covers removeChild in a flat tree.
2949
2950 2011-10-25  Adam Barth  <abarth@webkit.org>
2951
2952         EventTargetFactory.in is not sorted
2953         https://bugs.webkit.org/show_bug.cgi?id=70855
2954
2955         Reviewed by Eric Seidel.
2956
2957         Add a microbenchmark for wrapping event target.
2958
2959         * Bindings: Added.
2960         * Bindings/event-target-wrapper.html: Added.
2961         * Parser/resources/runner.js:
2962         (runLoop):
2963             - Let the user of the harness get a callback when the test is done.
2964
2965 2011-10-04  Eric Seidel  <eric@webkit.org>
2966
2967         Update html5-full-render.html to load the HTML5 spec incrementally, closer to how the browser would
2968         https://bugs.webkit.org/show_bug.cgi?id=69374
2969
2970         Unreviewed.
2971
2972         Per https://bugs.webkit.org/show_bug.cgi?id=69374#c7
2973         updating the chunksize to be a bit smaller now that the total
2974         size of the html5 spec is smaller than when I wrote the test.
2975
2976         This should increase the prevalence of style resolution in the
2977         sample time, which more closely matches instrument samples
2978         taken when loading the full page in Safari.
2979
2980         * Parser/html5-full-render.html:
2981
2982 2011-10-04  Eric Seidel  <eric@webkit.org>
2983
2984         Update html5-full-render.html to load the HTML5 spec incrementally, closer to how the browser would
2985         https://bugs.webkit.org/show_bug.cgi?id=69374
2986
2987         Reviewed by James Robinson.
2988
2989         This should finally be able to provide us with a repeatable metric
2990         for how fast we're currently able to load the HTML5 spec.
2991         There are a variety of interesting functions which show up in this
2992         sample, including of course style resolution.
2993
2994         * Parser/html5-full-render.html:
2995
2996 2011-10-04  Eric Seidel  <eric@webkit.org>
2997
2998         Update our copy of the HTML5 spec used for performance testing to match the latest version
2999         https://bugs.webkit.org/show_bug.cgi?id=69364
3000
3001         Unreviewed.  The patch is too large to post, so landing this unreviewed. :(
3002
3003         The copy of the html5 spec we were using for testing was over a year old
3004         and didn't have any of the subresources with it (we were only using it
3005         as an HTML parsing benchmark).  I'm about to use it for testing
3006         the full load/render time of the benchmark, so I've updated to the latest
3007         version of the spec (now 8mb instead of 5mb) and inlined two of the
3008         CSS files.  (Inlining the CSS was necessary to make my testing consistent
3009         as there seems to be a race with some timer fired after CSS load.)
3010
3011         Increasing from 5mb to 8mb showed a similar 30% slowdown in our parser
3012         benchmarks as expected.
3013
3014         * Parser/resources/html5.html:
3015
3016 2011-10-04  Eric Seidel  <eric@webkit.org>
3017
3018         Add loopsPerRun option to Parser performance test runner
3019         https://bugs.webkit.org/show_bug.cgi?id=69363
3020
3021         Reviewed by Antti Koivisto.
3022
3023         Add loopsPerRun option and abstract out runLoop function (to make the UI more responsive).
3024         No change in behavior in any of the tests.
3025
3026         * Parser/resources/runner.js:
3027         (runLoop):
3028         (run):
3029         (start):
3030
3031 2011-10-03  Eric Seidel  <eric@webkit.org>
3032
3033         Add a microbenchmark for a full-page render of the HTML5 spec
3034         https://bugs.webkit.org/show_bug.cgi?id=69285
3035
3036         Reviewed by Adam Barth.
3037
3038         This was designed to be a test for https://bugs.webkit.org/show_bug.cgi?id=68944
3039         But it seems that by far our dominating cost for the HTML5 benchmark is
3040         time spent laying out lines (which isn't actually that surprising).
3041
3042         I'm adding the performance test for posterity.
3043
3044         * Parser/html-parser.html:
3045          - Removed use of "about:blank" which abarth says is a no-op.  Made comment more accurate.
3046         * Parser/html5-full-render.html: Copied from PerformanceTests/Parser/html-parser.html.
3047
3048 2011-10-03  Eric Seidel  <eric@webkit.org>
3049
3050         PerformanceTests/Parser/html-parser is only testing parsing of the head element
3051         https://bugs.webkit.org/show_bug.cgi?id=69283
3052
3053         Reviewed by Adam Barth.
3054
3055         While investigating https://bugs.webkit.org/show_bug.cgi?id=68944
3056         I found that the html-parser benchmark was only parsing up to the
3057         first script tag per loop!  We've fixed this by adding the sandbox
3058         tag which will deny all external loads and allow the parser to
3059         synchronously continue parsing the entire document to completion
3060         (as we had expected it was doing).
3061
3062         This changes the profile somewhat.  Line number counting is much
3063         hotter, since we're actually accounting for the parse of the entire
3064         document in our sample.
3065
3066         Total sample time only about doubles, from 1800ms to 3800ms on my machine
3067         which is less than I would have expected.
3068
3069         * Parser/html-parser.html:
3070
3071 2011-08-09  Alexandru Chiculita  <achicu@adobe.com>
3072
3073         Fixing 65868 REGRESSION(r92610) caused by 65668 - Optimize floating elements lookup
3074         https://bugs.webkit.org/show_bug.cgi?id=65871
3075
3076         Reviewed by Dave Hyatt.
3077
3078         * Layout/floats.html: Added the nested divs, so that we can test the propagation impact of the floats tree.
3079
3080 2011-08-08  Sheriff Bot  <webkit.review.bot@gmail.com>
3081
3082         Unreviewed, rolling out r92610.
3083         http://trac.webkit.org/changeset/92610
3084         https://bugs.webkit.org/show_bug.cgi?id=65868
3085
3086         Caused assertion failures when running fast/multicol tests
3087         (Requested by andersca on #webkit).
3088
3089         * Layout/floats.html:
3090
3091 2011-08-08  Alexandru Chiculita  <achicu@adobe.com>
3092
3093         Optimize floating elements lookup
3094         https://bugs.webkit.org/show_bug.cgi?id=65668
3095
3096         Reviewed by David Hyatt.
3097
3098         * Layout/floats.html: Added the nested divs, so that we can test the propagation impact of the floats tree.
3099
3100 2011-08-04  Alexandru Chiculita  <achicu@adobe.com>
3101
3102         Add a performance test for floating elements layout algorithm
3103         https://bugs.webkit.org/show_bug.cgi?id=65741
3104
3105         The test creating lots of small floats and randomly changes
3106         the width of one element at a time. It measures how often it can do that.
3107
3108         Reviewed by Adam Barth.
3109
3110         * Layout/floats.html: Added.
3111
3112 2011-05-30  Daniel Bates  <dbates@webkit.org>
3113
3114         Reviewed by Adam Barth.
3115
3116         Rename XSSFilter to XSSAuditor
3117         https://bugs.webkit.org/show_bug.cgi?id=61718
3118
3119         Currently we use the names XSSFilter and XSSAuditor throughout the project.
3120         Instead, we should choose one name for consistency.
3121
3122         No functionality was changed. So, no new tests.
3123
3124         * XSSAuditor: Copied from PerformanceTests/XSSFilter.
3125         * XSSFilter: Removed.
3126         * XSSFilter/large-post-many-events.html: Removed.
3127         * XSSFilter/large-post-many-inline-scripts-and-events.html: Removed.
3128         * XSSFilter/resources: Removed.
3129         * XSSFilter/resources/target-for-large-post-many-inline-scripts-and-events.html: Removed.
3130
3131 2011-03-25  Leo Yang  <leo.yang@torchmobile.com.cn>
3132
3133         Reviewed by Dirk Schulze.
3134
3135         SVG <use> element performance improvement
3136         https://bugs.webkit.org/show_bug.cgi?id=57077
3137
3138         Add a manual test case which is from
3139         http://upload.wikimedia.org/wikipedia/commons/4/4e/Sierpinski_carpet_6.svg
3140         for svg <use> element performance test.
3141
3142         * PageLoad/svg/files/Sierpinski_carpet_6.svg: Added.
3143         * PageLoad/svg/svg.pltsuite:
3144
3145 2011-02-05  Eric Seidel  <eric@webkit.org>
3146
3147         Reviewed by Adam Barth.
3148
3149         Add performance tests for URL parsing
3150         https://bugs.webkit.org/show_bug.cgi?id=53845
3151
3152         The final-url-en URL corpus is from:
3153         http://corpus.leeds.ac.uk/internet.html
3154
3155         There are also other language corpuses which we may want to use in the future.
3156
3157         The usage instructions were as follows:
3158         "URL lists and other resources: you can freely use them in your research
3159         provided that you supply a link to this website: http://corpus.leeds.ac.uk/."
3160         Done.
3161
3162         * Parser/simple-url.html: Added.
3163          On my machine:
3164          Firefox: 255ms
3165          TOT WebKit: 378ms
3166          Chrome: 286ms
3167          Opera: 2830ms (no, that is not a typo)
3168         * Parser/url-parser.html: Added.
3169          Firefox: 381ms
3170          TOT WebKit: 216ms
3171          Chrome: 131ms
3172          Opera: 1383ms (again, not a typo)
3173         * Parser/resources/final-url-en: Added.
3174
3175 2011-02-03  Adam Barth  <abarth@webkit.org>
3176
3177         Reviewed by Daniel Bates.
3178
3179         Add another XSSFilter PerformanceTest
3180         https://bugs.webkit.org/show_bug.cgi?id=53750
3181
3182         This PerformanceTest tests the case that was slow in
3183         https://bugs.webkit.org/show_bug.cgi?id=49845
3184
3185         * XSSFilter/large-post-many-inline-scripts-and-events.html: Added.
3186         * XSSFilter/resources: Added.
3187         * XSSFilter/resources/target-for-large-post-many-inline-scripts-and-events.html: Added.
3188
3189 2011-02-03  Adam Barth  <abarth@webkit.org>
3190
3191         Reviewed by Eric Seidel.
3192
3193         Add PerformanceTest for XSSFilter
3194         https://bugs.webkit.org/show_bug.cgi?id=53741
3195
3196         This performance tests covers the case of a large POST data and many
3197         small event handlers.
3198
3199         * XSSFilter: Added.
3200         * XSSFilter/large-post-many-events.html: Added.
3201
3202 2011-02-02  Adam Barth  <abarth@webkit.org>
3203
3204         Rubber-stamped by Eric Seidel.
3205
3206         Merge PerformanceTests/Parser/ChangeLog and
3207         PerformanceTests/PageLoad/ChangeLog into PerformanceTests/ChangeLog.
3208
3209         It's silly to have ChangeLogs for each of these directories separately.
3210         I've left SunSpider with its own ChangeLog because it's more of an
3211         independent entity.
3212
3213         * ChangeLog: Added.
3214
3215 2011-02-02  Eric Seidel  <eric@webkit.org>
3216
3217         Unreviewed.  Just fixing an exception seen in Firefox.
3218
3219         HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40%
3220         https://bugs.webkit.org/show_bug.cgi?id=48719
3221
3222         Make the benchmarks work in Firefox/Opera.
3223
3224         * resources/runner.js:
3225         (log):
3226
3227 2011-01-27  Eric Seidel  <eric@webkit.org>
3228
3229         Reviewed by Darin Adler.
3230
3231         HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40%
3232         https://bugs.webkit.org/show_bug.cgi?id=48719
3233
3234         It's unclear exactly what the Peacekeeper benchmark is testing,
3235         because I haven't found a way to run it myself.
3236
3237         However, I constructed a benchmark which shows at least one possible slow point.
3238         The HTML5 spec talks about creating a new document for every time we use
3239         the fragment parsing algorithm.  Document() it turns out, it a huge bloated
3240         mess, and the constructor and destructor do a huge amount of work.
3241
3242         * benchmarks/parser/tiny-innerHTML.html: Added.
3243
3244 2011-01-29  Sheriff Bot  <webkit.review.bot@gmail.com>
3245
3246         Unreviewed, rolling out r77050.
3247         http://trac.webkit.org/changeset/77050
3248         https://bugs.webkit.org/show_bug.cgi?id=53371
3249
3250         Caused a crash in Chromium's test_shell_tests (Requested by
3251         rniwa on #webkit).
3252
3253         * resources/performance-test.js: Removed.
3254         * tiny-innerHTML.html: Removed.
3255
3256 2011-01-28  Eric Seidel  <eric@webkit.org>
3257
3258         Reviewed by Darin Adler.
3259
3260         HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40%
3261         https://bugs.webkit.org/show_bug.cgi?id=48719
3262
3263         It's unclear exactly what the Peacekeeper benchmark is testing,
3264         because I haven't found a way to run it myself.
3265
3266         However, I constructed a benchmark which shows at least one possible slow point.
3267         The HTML5 spec talks about creating a new document for every time we use
3268         the fragment parsing algorithm.  Document() it turns out, it a huge bloated
3269         mess, and the constructor and destructor do a huge amount of work.
3270         To avoid constructing (or destructing) documents for each innerHTML call,
3271         this patch adds a shared dummy document used by all innerHTML calls.
3272
3273         * benchmarks/parser/tiny-innerHTML.html: Added.
3274
3275 2010-12-31  Adam Barth  <abarth@webkit.org>
3276
3277         Rubber-stamped by Eric Seidel.
3278
3279         Move HTML and XML parser benchmarks into PerformanceTests/Parser
3280         https://bugs.webkit.org/show_bug.cgi?id=51772
3281
3282         Add a ChangeLog for tracking changes to the Parser PerformanceTest.
3283
3284         * ChangeLog: Added.
3285
3286 2010-12-31  Adam Barth  <abarth@webkit.org>
3287
3288         Rubber-stamped by Eric Seidel.
3289
3290         Move PageLoadTests to PerformanceTests/PageLoad
3291         https://bugs.webkit.org/show_bug.cgi?id=51771
3292
3293         Update URLs to point to the new directory name.
3294
3295         * svg/svg.pltsuite:
3296
3297 2006-12-26  Eric Seidel  <eric@webkit.org>
3298
3299         Reviewed by olliej.
3300
3301         * svg/svg.pltsuite: re-enable word-iso.svg after fixing http://bugs.webkit.org/show_bug.cgi?id=11987
3302
3303 2006-12-26  Eric Seidel  <eric@webkit.org>
3304
3305         Reviewed by bradee-oh.
3306         
3307         Add new PageLoadTests directory (this one)
3308         Add LICENSES file to explain where each SVG came from.
3309
3310         * ChangeLog: Added.
3311         * svg/LICENSES: Added.
3312         * svg/files/33041-Samurai.svg: Added.
3313         * svg/files/42470-flower_from_my_garden_v2.svg: Added.
3314         * svg/files/Harvey_Rayner.svg: Added.
3315         * svg/files/az-lizard_benji_park_01.svg: Added.
3316         * svg/files/bamboo_01.svg: Added.
3317         * svg/files/cacuts_01.svg: Added.
3318         * svg/files/cowboy.svg: Added.
3319         * svg/files/crawfish2_ganson.svg: Added.
3320         * svg/files/deb9frac1.svg: Added.
3321         * svg/files/food_leif_lodahl_01.svg: Added.
3322         * svg/files/france.svg: Added.
3323         * svg/files/francobollo_gnome_ezechi_02.svg: Added.
3324         * svg/files/gearflowers.svg: Added.
3325         * svg/files/hereGear4.svg: Added.
3326         * svg/files/mtsthelens.svg: Added.
3327         * svg/files/mtsthelens0.jpg: Added.
3328         * svg/files/world-iso.svg: Added.
3329         * svg/files/worldcup.svg: Added.
3330         * svg/svg.pltsuite: Added.
3331