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