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