Allow ImageBuffer to re-use IOSurfaces
[WebKit-https.git] / PerformanceTests / ChangeLog
1 2014-01-02  Myles C. Maxfield  <mmaxfield@apple.com>
2
3         Allow ImageBuffer to re-use IOSurfaces
4         https://bugs.webkit.org/show_bug.cgi?id=125477
5
6         Reviewed by Geoff Garen. 
7
8         This test times creating a variety of different sizes of canvases 
9         once some have already been created. The second creation of the 
10         canvases should re-use the existing IOSurfaces. 
11         
12         * Canvas/reuse.html: Added.
13
14 2013-12-23  Commit Queue  <commit-queue@webkit.org>
15
16         Unreviewed, rolling out r160945.
17         http://trac.webkit.org/changeset/160945
18         https://bugs.webkit.org/show_bug.cgi?id=126164
19
20         Seems to have broken multiple canvas tests (Requested by ap on
21         #webkit).
22
23         * Canvas/reuse.html: Removed.
24
25 2013-12-09  Myles C. Maxfield  <mmaxfield@apple.com>
26
27         Allow ImageBuffer to re-use IOSurfaces
28         https://bugs.webkit.org/show_bug.cgi?id=125477
29
30         Reviewed by Geoff Garen.
31
32         This test times creating a variety of different sizes of canvases
33         once some have already been created. The second creation of the
34         canvases should re-use the existing IOSurfaces.
35
36         * Canvas/reuse.html: Added.
37
38 2013-12-15  Ryosuke Niwa  <rniwa@webkit.org>
39
40         REGRESSION: 2x regression on Dromaeo DOM query tests
41         https://bugs.webkit.org/show_bug.cgi?id=125377
42
43         Reviewed by Filip Pizlo.
44
45         Added a micro-benchmark for updating a named property on document.
46
47         * Bindings/update-name-getter.html: Added.
48         * Skipped:
49
50 2013-12-03  Manuel Rego Casasnovas  <rego@igalia.com>
51
52         [CSS Regions] Fix Layout/RegionsSelection.html in Mac platform
53         https://bugs.webkit.org/show_bug.cgi?id=124963
54
55         Reviewed by Ryosuke Niwa.
56
57         Layout/RegionsSelection.html introduced in r159488 was not working in
58         Mac platform because of it was trying to use mouse events out of the
59         window dimensions. Use collapse() and extend() methods from Selection
60         object to solve the issue.
61
62         * Layout/resources/regions.js: Use collapse() and extend() instead of
63         mouse events.
64
65 2013-11-27  Ryosuke Niwa  <rniwa@webkit.org>
66
67         Build fix after r159805.
68
69         * resources/runner.js:
70
71 2013-11-26  Sergio Villar Senin  <svillar@igalia.com>
72
73         [CSS Grid Layout] Support grid-definition-{rows|columns} repeat() syntax
74         https://bugs.webkit.org/show_bug.cgi?id=103312
75
76         Reviewed by Andreas Kling.
77
78         Use the repeat() syntax to build the huge grids used by the
79         performance tests.
80
81         * Layout/auto-grid-lots-of-data.html:
82         * Layout/fixed-grid-lots-of-data.html:
83
84 2013-11-26  Ryosuke Niwa  <rniwa@webkit.org>
85
86         Record subtest values in Dromaeo tests
87         https://bugs.webkit.org/show_bug.cgi?id=124498
88
89         Reviewed by Andreas Kling.
90
91         Made Dromaeo's test runner report values in DRT.progress via newly added PerfTestRunner.reportValues.
92
93         * Dromaeo/resources/dromaeorunner.js:
94         (.): Moved the definition out of DRT.setup.
95         (DRT.setup): Ditto.
96         (DRT.testObject): Extracted from DRT.setup. Set the subtest name and continueTesting.
97         continueTesting is set true for subtests; i.e. when name is specified.
98         (DRT.progress): Call PerfTestRunner.reportValues to report subtest results.
99         (DRT.teardown): Call PerfTestRunner.reportValues instead of measureValueAsync.
100
101         * resources/runner.js: Made various changes for newly added PerfTestRunner.reportValues.
102         (.): Moved the initialization of completedIterations, results, jsHeapResults, and mallocHeapResults into
103         start since they need to be initialized before running each subtest. Initialize logLines here since we
104         need to use the same logger for all subtests.
105         (.start): Initialize the variables mentioned above here. Also respect doNotLogStart used by reportValues.
106         (ignoreWarmUpAndLog): Added doNotLogProgress. Used by reportValues since it reports all values at once.
107         (finish): Compute the metric name such as FrameFrame and Runs from unit. Also don't log or notify done
108         when continueTesting is set on the test object.
109         (PerfTestRunner.reportValues): Added. Reports all values for the main/sub test.
110
111 2013-11-26  Ryosuke Niwa  <rniwa@webkit.org>
112
113         Remove replay performance tests as it's not actively maintained
114         https://bugs.webkit.org/show_bug.cgi?id=124764
115
116         Reviewed by Andreas Kling.
117
118         Removed the replay performance tests. We can add them back when time comes.
119
120         * Replay/Chinese/chinaz.com.replay: Removed.
121         * Replay/Chinese/www.163.com.replay: Removed.
122         * Replay/Chinese/www.alipay.com.replay: Removed.
123         * Replay/Chinese/www.baidu.com.replay: Removed.
124         * Replay/Chinese/www.csdn.net.replay: Removed.
125         * Replay/Chinese/www.douban.com.replay: Removed.
126         * Replay/Chinese/www.hao123.com.replay: Removed.
127         * Replay/Chinese/www.xinhuanet.com.replay: Removed.
128         * Replay/Chinese/www.xunlei.com.replay: Removed.
129         * Replay/Chinese/www.youku.com.replay: Removed.
130         * Replay/English/beatonna.livejournal.com.replay: Removed.
131         * Replay/English/cakewrecks.blogspot.com.replay: Removed.
132         * Replay/English/chemistry.about.com.replay: Removed.
133         * Replay/English/digg.com.replay: Removed.
134         * Replay/English/en.wikipedia.org-rorschach_test.replay: Removed.
135         * Replay/English/icanhascheezburger.com.replay: Removed.
136         * Replay/English/imgur.com-gallery.replay: Removed.
137         * Replay/English/online.wsj.com.replay: Removed.
138         * Replay/English/stockoverflow.com-best-comment.replay: Removed.
139         * Replay/English/www.alibaba.com.replay: Removed.
140         * Replay/English/www.amazon.com-kindle.replay: Removed.
141         * Replay/English/www.apple.com.replay: Removed.
142         * Replay/English/www.cnet.com.replay: Removed.
143         * Replay/English/www.dailymotion.com.replay: Removed.
144         * Replay/English/www.ehow.com-prevent-fire.replay: Removed.
145         * Replay/English/www.filestube.com-amy-adams.replay: Removed.
146         * Replay/English/www.foxnews.replay: Removed.
147         * Replay/English/www.huffingtonpost.com.replay: Removed.
148         * Replay/English/www.imdb.com-twilight.replay: Removed.
149         * Replay/English/www.mozilla.com-all-order.replay: Removed.
150         * Replay/English/www.php.net.replay: Removed.
151         * Replay/English/www.reddit.com.replay: Removed.
152         * Replay/English/www.telegraph.co.uk.replay: Removed.
153         * Replay/English/www.w3.org-htmlcss.replay: Removed.
154         * Replay/English/www.w3schools.com-html.replay: Removed.
155         * Replay/English/www.youtube.com-music.replay: Removed.
156         * Replay/French/www.orange.fr.replay: Removed.
157         * Replay/Italian/www.repubblica.it.replay: Removed.
158         * Replay/Japanese/2ch.net-newsplus.replay: Removed.
159         * Replay/Japanese/entameblog.seesaa.net.replay: Removed.
160         * Replay/Japanese/ja.wikipedia.org.replay: Removed.
161         * Replay/Japanese/www.hatena.ne.jp.replay: Removed.
162         * Replay/Japanese/www.livedoor.com.replay: Removed.
163         * Replay/Japanese/www.nicovideo.jp.replay: Removed.
164         * Replay/Japanese/www.rakuten.co.jp.replay: Removed.
165         * Replay/Japanese/www.yahoo.co.jp.replay: Removed.
166         * Replay/Korean/www.naver.com.replay: Removed.
167         * Replay/Persian/blogfa.com.replay: Removed.
168         * Replay/Polish/www.wp.pl.replay: Removed.
169         * Replay/Portuguese/www.uol.com.br.replay: Removed.
170         * Replay/Russian/lenta.ru.replay: Removed.
171         * Replay/Russian/vkontakte.ru-help.replay: Removed.
172         * Replay/Russian/www.ixbt.com.replay: Removed.
173         * Replay/Russian/www.kp.ru.replay: Removed.
174         * Replay/Russian/www.liveinternet.ru.replay: Removed.
175         * Replay/Russian/www.pravda.ru.replay: Removed.
176         * Replay/Russian/www.rambler.ru.replay: Removed.
177         * Replay/Russian/www.ucoz.ru.replay: Removed.
178         * Replay/Russian/www.yandex.ru.replay: Removed.
179         * Replay/Spanish/www.taringa.net.replay: Removed.
180         * Replay/Swedish/www.flashback.se.replay: Removed.
181         * Replay/Swedish/www.tradera.com.replay: Removed.
182         * Replay/www.google.com.replay: Removed.
183         * Replay/www.techcrunch.com.replay: Removed.
184         * Replay/www.youtube.com.replay: Removed.
185
186 2013-11-22  Ryosuke Niwa  <rniwa@webkit.org>
187
188         Layout Test editing/deleting/password-delete-performance.html is failing
189         https://bugs.webkit.org/show_bug.cgi?id=124781
190
191         Reviewed by Alexey Proskuryakov.
192
193         Add a new performance test to replace editing/deleting/password-delete-performance.html.
194         We skip this test by default since it's a micro benchmark.
195
196         * Interactive/DeletingInPasswordField.html: Added.
197         * Skipped:
198
199 2013-11-18  Sergio Villar Senin  <svillar@igalia.com>
200
201         [CSS Grid Layout] Improve content-sized track layout
202         https://bugs.webkit.org/show_bug.cgi?id=124408
203
204         Reviewed by Dean Jackson.
205
206         From Blink r156122 by <jchaffraix@chromium.org>
207
208         New test to check the performance of layouting grids with content sized tracks.
209
210         * Layout/auto-grid-lots-of-data.html: Added.
211
212 2013-11-08  Sergio Villar Senin  <svillar@igalia.com>
213
214         [CSS Grid Layout] Run the content-sized tracks sizing algorithm only when required
215         https://bugs.webkit.org/show_bug.cgi?id=124039
216
217         Reviewed by Dean Jackson.
218
219         From Blink r156028 and r156168 by <jchaffraix@chromium.org>.
220
221         New performance tests for layouts in grids with fixed size tracks.
222
223         * Layout/fixed-grid-lots-of-data.html: Added.
224
225 2013-11-19  Manuel Rego Casasnovas  <rego@igalia.com>
226
227         [CSS Regions] Add performance test for selection
228         https://bugs.webkit.org/show_bug.cgi?id=119230
229
230         Reviewed by Ryosuke Niwa.
231
232         Add new performance test for selection in CSS Regions. It checks a
233         selection from the first region to the last one, passing through all the
234         regions.
235
236         Test is skipped for now while implementation of selection in CSS Regions
237         is still evolving.
238
239         * Layout/RegionsSelection.html: Added.
240         * Layout/resources/regions.js:
241         (.):
242         * Skipped:
243
244 2013-11-18  Ryosuke Niwa  <rniwa@webkit.org>
245
246         Simplify and reformat the output of performance tests inside test runners
247         https://bugs.webkit.org/show_bug.cgi?id=124496
248
249         Reviewed by Antti Koivisto.
250
251         As a preparation to support subtests for Dromaeo and DoYouEvenBench, simplify the output performance tests generate.
252         Also modernize the output to better support "metric" concept we introduced a while ago.
253
254         New output on Dromaeo/dom-attr looks like this:
255         -----------------------------------------------
256         Running 5 times
257         getAttribute -> [1105, 1108, 1134, 1137, 1154]
258         element.property -> [1634, 1655, 1685, 1696, 1723]
259         setAttribute -> [646.3536463536464, 651, 651, 656.3436563436563, 658]
260         element.property = value -> [934, 949, 963, 964, 974]
261         element.expando = value -> [419, 419.5804195804196, 421.57842157842157, 425.57442557442556, 429]
262         element.expando -> [501, 517, 519.4805194805194, 521.4785214785214, 525]
263
264             1: 117.40644785571585 runs/s
265             2: 118.84720469666297 runs/s
266             3: 119.80547640905021 runs/s
267             4: 120.51886194758805 runs/s
268             5: 121.51924380569295 runs/s
269
270         :Time -> [117.40644785571585, 118.84720469666297, 119.80547640905021, 120.51886194758805, 121.51924380569295] runs/s
271             mean: 119.619446942942 runs/s
272             median: 119.80547640905021 runs/s
273             stdev: 1.5769040458730506 runs/s
274             min: 117.40644785571585 runs/s
275             max: 121.51924380569295 runs/s
276         -----------------------------------------------
277
278         * Dromaeo/resources/dromaeorunner.js:
279         (DRT.progress): Use the new format for subtest reports.
280         * resources/runner.js:
281         (.): Declare verboseLogging, which is set to true outside of test runners.
282         (PerfTestRunner.logInfo): Use verboseLogging instead of directly checking window.testRunner.
283         (PerfTestRunner.logDetail): Added. Logs informative text with a label such as "mean: 123 s" with 4-space indentation.
284         (PerfTestRunner.logStatistics): Use logDetail.
285         (.start): Initialize verboseLogging. Also log "Running 20 times" as an informative log using logDetail.
286         (.ignoreWarmUpAndLog): Use logDetail for showing the progress. These logs were useless inside test runners anyway
287         because perftest didn't get to see any output until the test finished running.
288         (.finish): Call logStatistics with metric name as opposed to a label. Each metric name is now prefixed with ':' to be
289         distinguishable from subtests, making the new format forward compatible.
290
291 2013-11-18  Ryosuke Niwa  <rniwa@webkit.org>
292
293         [Performance tests] Interactive/SelectAll.html throws an exception
294         https://bugs.webkit.org/show_bug.cgi?id=124495
295
296         Reviewed by Antti Koivisto
297
298         Return a boolean indicating whether more values are needed or not in
299         PerfTestRunner.measureValueAsync so that runTest can terminate gracefully.
300
301         * Interactive/SelectAll.html:
302         (runTest): Don't schedule a timer for runTest if we've got enough values.
303         * resources/runner.js:
304         (PerfTestRunner.measureValueAsync): Returns true iff more values are needed.
305
306 2013-11-13  Antti Koivisto  <antti@apple.com>
307
308         This was supposed to test overflow-wrap:break-word instead of word-break:break-all.
309
310         Rubber-stamped by Andreas Kling.
311
312         * Layout/line-layout-simple.html:
313
314 2013-11-12  Andreas Kling  <akling@apple.com>
315
316         Remove body onload handler from html5-8266.html that was causing
317         the test to sometimes finish before doing anything interesting.
318
319         Unskip Parser/HTML5-8266-FullRender.html now that it's stable.
320
321         Rubber-stamped by Antti Koivisto.
322
323         * Parser/resources/html5-8266.html:
324         * Skipped:
325
326 2013-11-12  Andreas Kling  <akling@apple.com>
327
328         Neutralize external resource loads in the new HTML5 spec copy.
329
330         Skip Parser/HTML5-8266-FullRender.html until I can make it less flaky.
331
332         * Parser/resources/html5-8266.html:
333         * Skipped:
334
335 2013-11-12  Andreas Kling  <akling@apple.com>
336
337         Import a fresh version of the full HTML5 spec for perf testing.
338
339         Rubber-stamped by Antti Koivisto.
340
341         * Parser/HTML5-8266-FullRender.html: Added.
342         * Parser/HTML5-8266-ParseOnly.html: Added.
343         * Parser/resources/html5-8266.html: Added.
344
345 2013-11-09  Antti Koivisto  <antti@apple.com>
346
347         Add subtest for word-break:break-all to Layout/line-layout-simple.html
348         https://bugs.webkit.org/show_bug.cgi?id=124103
349
350         Reviewed by Andreas Kling.
351
352         * Layout/line-layout-simple.html:
353
354         Combination "white-space:pre-wrap; word-break:break-all" is common for pure text.
355
356 2013-11-08  Antti Koivisto  <antti@apple.com>
357
358         Add line layout performance test that exercises more cases
359         https://bugs.webkit.org/show_bug.cgi?id=124041
360         
361         Reviewed by Anders Carlsson.
362
363         The existing line-layout.html covers the most basic left-aligned case only.
364         Add a test with more coverage for things that are mostly not yet supported by the simple
365         line layout path:
366         
367         - centered text
368         - right aligned text
369         - justified text
370         - pre
371         - white-space:pre-wrap
372         - text with simple inlines
373         - text with br
374
375         * Layout/line-layout-simple.html: Added.
376
377 2013-10-25  Sergio Villar Senin  <svillar@igalia.com>
378
379         Use a Vector instead of HashSet to computed the orderValues in RenderFlexibleBox
380         https://bugs.webkit.org/show_bug.cgi?id=118620
381
382         Reviewed by Antti Koivisto.
383
384         From Blink r152960 by <ojan@chromium.org>
385
386         New performance test for layouts in flexboxes.
387
388         * Layout/flexbox-lots-of-data.html: Added.
389
390 2013-10-24  Commit Queue  <commit-queue@webkit.org>
391
392         Unreviewed, rolling out r157916.
393         http://trac.webkit.org/changeset/157916
394         https://bugs.webkit.org/show_bug.cgi?id=123274
395
396         Broke Layout/flexbox-lots-of-data.html on perfbot (Requested
397         by ap on #webkit).
398
399         * Layout/flexbox-lots-of-data.html: Removed.
400
401 2013-10-14  Sergio Villar Senin  <svillar@igalia.com>
402
403         Use a Vector instead of HashSet to computed the orderValues in RenderFlexibleBox
404         https://bugs.webkit.org/show_bug.cgi?id=118620
405
406         Reviewed by Antti Koivisto.
407
408         From Blink r152960 by <ojan@chromium.org>
409
410         New performance test for layouts in flexboxes.
411
412         * Layout/flexbox-lots-of-data.html: Added.
413
414 2013-10-06  Ryosuke Niwa  <rniwa@webkit.org>
415
416         DoYouEvenBench: Make it work on Internet Explorer 11 Release Preview
417         https://bugs.webkit.org/show_bug.cgi?id=122406
418
419         Reviewed by Darin Adler.
420
421         On Internet Explorer 11, $(elem).closest('li').data('id') fails to find the containig li of elem once
422         the first item is marked complete or deleted until we get back to the event loop in the jQuery/TodoMVC.
423         Worked around this limitation by overriding app.getTodo to use each item's id computed in advance.
424
425         Also use $.text instead of execCommand('InsertText') in FlightJS/MailClient since Internet Explorer
426         doesn't support execCommand('InsertText'). Also select the recipient to avoid exceptions.
427
428         * DoYouEvenBench/benchmark.html:
429
430 2013-10-05  Ryosuke Niwa  <rniwa@webkit.org>
431
432         DoYouEvenBench: Add Facebook's React TodoMVC test case
433         https://bugs.webkit.org/show_bug.cgi?id=122379
434
435         Reviewed by Andreas Kling.
436
437         Add React/TodoMVC as a new test case. Somehow we beat Firefox on this one as well.
438
439         * DoYouEvenBench/benchmark.html:
440         * DoYouEvenBench/todomvc/labs: Added.
441         * DoYouEvenBench/todomvc/labs/architecture-examples: Added.
442         * DoYouEvenBench/todomvc/labs/architecture-examples/react: Added.
443         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower.json: Added.
444         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components: Added.
445         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director: Added.
446         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/LICENSE: Added.
447         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/README.md: Added.
448         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build: Added.
449         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build/director.js: Added.
450         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build/director.min.js: Added.
451         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build/ender.js: Added.
452         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react: Added.
453         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/JSXTransformer.js: Added.
454         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/bower.json: Added.
455         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/react.js: Added.
456         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/react.min.js: Added.
457         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common: Added.
458         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/base.css: Added.
459         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/base.js: Added.
460         * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/bg.png: Added.
461         * DoYouEvenBench/todomvc/labs/architecture-examples/react/index.html: Added.
462         * DoYouEvenBench/todomvc/labs/architecture-examples/react/js: Added.
463         * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/app.jsx: Added.
464         * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/footer.jsx: Added.
465         * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/todoItem.jsx: Added.
466         * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/utils.jsx: Added.
467         * DoYouEvenBench/todomvc/labs/architecture-examples/react/readme.md: Added.
468
469 2013-09-25  Ryosuke Niwa  <rniwa@webkit.org>
470
471         DoYouEvenBench: Add a test case for FlightJS
472         https://bugs.webkit.org/show_bug.cgi?id=121926
473
474         Reviewed by Antti Koivisto.
475
476         Add a FlightJS test case.
477
478         * DoYouEvenBench/benchmark.html:
479         * DoYouEvenBench/benchmark.js:
480         * DoYouEvenBench/flightjs-example-app: Added.
481         * DoYouEvenBench/flightjs-example-app/LICENSE.md: Added.
482         * DoYouEvenBench/flightjs-example-app/README.md: Added.
483         * DoYouEvenBench/flightjs-example-app/app: Added.
484         * DoYouEvenBench/flightjs-example-app/app/boot: Added.
485         * DoYouEvenBench/flightjs-example-app/app/boot/page.js: Added.
486         * DoYouEvenBench/flightjs-example-app/app/component_data: Added.
487         * DoYouEvenBench/flightjs-example-app/app/component_data/compose_box.js: Added.
488         * DoYouEvenBench/flightjs-example-app/app/component_data/mail_items.js: Added.
489         * DoYouEvenBench/flightjs-example-app/app/component_data/move_to.js: Added.
490         * DoYouEvenBench/flightjs-example-app/app/component_ui: Added.
491         * DoYouEvenBench/flightjs-example-app/app/component_ui/compose_box.js: Added.
492         * DoYouEvenBench/flightjs-example-app/app/component_ui/folders.js: Added.
493         * DoYouEvenBench/flightjs-example-app/app/component_ui/mail_controls.js: Added.
494         * DoYouEvenBench/flightjs-example-app/app/component_ui/mail_items.js: Added.
495         * DoYouEvenBench/flightjs-example-app/app/component_ui/move_to_selector.js: Added.
496         * DoYouEvenBench/flightjs-example-app/app/component_ui/with_select.js: Added.
497         * DoYouEvenBench/flightjs-example-app/app/css: Added.
498         * DoYouEvenBench/flightjs-example-app/app/css/custom.css: Added.
499         * DoYouEvenBench/flightjs-example-app/app/data.js: Added.
500         * DoYouEvenBench/flightjs-example-app/app/templates.js: Added.
501         * DoYouEvenBench/flightjs-example-app/components: Added.
502         * DoYouEvenBench/flightjs-example-app/components/bootstrap: Added.
503         * DoYouEvenBench/flightjs-example-app/components/bootstrap/css: Added.
504         * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap-responsive.css: Added.
505         * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap-responsive.min.css: Added.
506         * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap.css: Added.
507         * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap.min.css: Added.
508         * DoYouEvenBench/flightjs-example-app/components/bootstrap/img: Added.
509         * DoYouEvenBench/flightjs-example-app/components/bootstrap/img/glyphicons-halflings-white.png: Added.
510         * DoYouEvenBench/flightjs-example-app/components/bootstrap/img/glyphicons-halflings.png: Added.
511         * DoYouEvenBench/flightjs-example-app/components/bootstrap/js: Added.
512         * DoYouEvenBench/flightjs-example-app/components/bootstrap/js/bootstrap.js: Added.
513         * DoYouEvenBench/flightjs-example-app/components/bootstrap/js/bootstrap.min.js: Added.
514         * DoYouEvenBench/flightjs-example-app/components/es5-shim: Added.
515         * DoYouEvenBench/flightjs-example-app/components/es5-shim/.gitignore: Added.
516         * DoYouEvenBench/flightjs-example-app/components/es5-shim/CHANGES: Added.
517         * DoYouEvenBench/flightjs-example-app/components/es5-shim/CONTRIBUTORS.md: Added.
518         * DoYouEvenBench/flightjs-example-app/components/es5-shim/LICENSE: Added.
519         * DoYouEvenBench/flightjs-example-app/components/es5-shim/README.md: Added.
520         * DoYouEvenBench/flightjs-example-app/components/es5-shim/component.json: Added.
521         * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-sham.js: Added.
522         * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-sham.min.js: Added.
523         * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-shim.js: Added.
524         * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-shim.min.js: Added.
525         * DoYouEvenBench/flightjs-example-app/components/es5-shim/package.json: Added.
526         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests: Added.
527         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers: Added.
528         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h-kill.js: Added.
529         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h-matchers.js: Added.
530         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h.js: Added.
531         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/index.html: Added.
532         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib: Added.
533         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine-html.js: Added.
534         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine.css: Added.
535         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine.js: Added.
536         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine_favicon.png: Added.
537         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/json2.js: Added.
538         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec: Added.
539         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-array.js: Added.
540         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-date.js: Added.
541         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-function.js: Added.
542         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-object.js: Added.
543         * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-string.js: Added.
544         * DoYouEvenBench/flightjs-example-app/components/flight: Added.
545         * DoYouEvenBench/flightjs-example-app/components/flight/.travis.yml: Added.
546         * DoYouEvenBench/flightjs-example-app/components/flight/lib: Added.
547         * DoYouEvenBench/flightjs-example-app/components/flight/lib/advice.js: Added.
548         * DoYouEvenBench/flightjs-example-app/components/flight/lib/component.js: Added.
549         * DoYouEvenBench/flightjs-example-app/components/flight/lib/compose.js: Added.
550         * DoYouEvenBench/flightjs-example-app/components/flight/lib/index.js: Added.
551         * DoYouEvenBench/flightjs-example-app/components/flight/lib/logger.js: Added.
552         * DoYouEvenBench/flightjs-example-app/components/flight/lib/registry.js: Added.
553         * DoYouEvenBench/flightjs-example-app/components/flight/lib/utils.js: Added.
554         * DoYouEvenBench/flightjs-example-app/components/flight/tools: Added.
555         * DoYouEvenBench/flightjs-example-app/components/flight/tools/debug: Added.
556         * DoYouEvenBench/flightjs-example-app/components/flight/tools/debug/debug.js: Added.
557         * DoYouEvenBench/flightjs-example-app/components/jasmine-flight: Added.
558         * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/LICENSE.md: Added.
559         * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/README.md: Added.
560         * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/bower.json: Added.
561         * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/lib: Added.
562         * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/lib/jasmine-flight.js: Added.
563         * DoYouEvenBench/flightjs-example-app/components/jasmine-jquery: Added.
564         * DoYouEvenBench/flightjs-example-app/components/jasmine-jquery/lib: Added.
565         * DoYouEvenBench/flightjs-example-app/components/jasmine-jquery/lib/jasmine-jquery.js: Added.
566         * DoYouEvenBench/flightjs-example-app/components/jquery: Added.
567         * DoYouEvenBench/flightjs-example-app/components/jquery/component.json: Added.
568         * DoYouEvenBench/flightjs-example-app/components/jquery/composer.json: Added.
569         * DoYouEvenBench/flightjs-example-app/components/jquery/jquery.js: Added.
570         * DoYouEvenBench/flightjs-example-app/components/jquery/jquery.min.js: Added.
571         * DoYouEvenBench/flightjs-example-app/components/mustache: Added.
572         * DoYouEvenBench/flightjs-example-app/components/mustache/mustache.js: Added.
573         * DoYouEvenBench/flightjs-example-app/components/requirejs: Added.
574         * DoYouEvenBench/flightjs-example-app/components/requirejs/require.js: Added.
575         * DoYouEvenBench/flightjs-example-app/index.html: Added.
576         * DoYouEvenBench/flightjs-example-app/karma.conf.js: Added.
577         * DoYouEvenBench/flightjs-example-app/package.json: Added.
578         * DoYouEvenBench/flightjs-example-app/requireMain.js: Added.
579
580 2013-09-19  Ryosuke Niwa  <rniwa@webkit.org>
581
582         DoYouEvenBench: Indentations in benchmark.js and benchmark.html are all messed up
583         https://bugs.webkit.org/show_bug.cgi?id=121597
584
585         Reviewed by Anders Carlsson.
586
587         Fixed indentations.
588
589         * DoYouEvenBench/benchmark.html:
590         * DoYouEvenBench/benchmark.js:
591         (SimplePromise.prototype.resolve.else):
592         (SimplePromise.prototype.resolve):
593         (BenchmarkRunner.waitForElement.resolveIfReady):
594         (BenchmarkRunner.waitForElement):
595         (BenchmarkRunner._waitAndWarmUp.Fibonacci):
596         (BenchmarkRunner._finalize):
597
598 2013-09-19  Ryosuke Niwa  <rniwa@webkit.org>
599
600         Add an AngularJS test to DoYouEvenBench
601         https://bugs.webkit.org/show_bug.cgi?id=121595
602
603         Reviewed by Antti Koivisto.
604
605         * DoYouEvenBench/benchmark.html:
606         * DoYouEvenBench/todomvc/architecture-examples/angularjs: Added.
607         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower.json: Added.
608         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components: Added.
609         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular: Added.
610         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular-mocks: Added.
611         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular-mocks/angular-mocks.js: Added.
612         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular/angular.js: Added.
613         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common: Added.
614         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common/base.css: Added.
615         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common/base.js: Added.
616         * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common/bg.png: Added.
617         * DoYouEvenBench/todomvc/architecture-examples/angularjs/index.html: Added.
618         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js: Added.
619         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/app.js: Added.
620         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/controllers: Added.
621         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/controllers/todoCtrl.js: Added.
622         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives: Added.
623         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives/todoBlur.js: Added.
624         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives/todoEscape.js: Added.
625         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives/todoFocus.js: Added.
626         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/services: Added.
627         * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/services/todoStorage.js: Added.
628         * DoYouEvenBench/todomvc/architecture-examples/angularjs/readme.md: Added.
629         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test: Added.
630         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/config: Added.
631         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/config/testacular.conf.js: Added.
632         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/package.json: Added.
633         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/readme.md: Added.
634         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/unit: Added.
635         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/unit/directivesSpec.js: Added.
636         * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/unit/todoCtrlSpec.js: Added.
637
638 2013-09-17  Ryosuke Niwa  <rniwa@webkit.org>
639
640         Add a not completely unrealistic DOM Benchmark
641         https://bugs.webkit.org/show_bug.cgi?id=121361
642
643         Reviewed by Filip Pizlo.
644
645         Add a DOM benchmark based on TodoMVC for vanilla JS, Ember.js, Backbone.js, and jQuery.
646         We'll add more frameworks and demo apps as we go.
647
648         * DoYouEvenBench: Added.
649         * DoYouEvenBench/benchmark.html: Added.
650         * DoYouEvenBench/benchmark.js: Added.
651         (SimplePromise): 
652         (SimplePromise.prototype.then):
653         (SimplePromise.prototype.resolve.else):
654         (SimplePromise.prototype.resolve):
655         (BenchmarkRunner.suite):
656         (BenchmarkRunner.waitForElement.resolveIfReady):
657         (BenchmarkRunner.waitForElement):
658         (BenchmarkRunner._removeFrame):
659         (BenchmarkRunner._appendFrame):
660         (BenchmarkRunner._waitAndWarmUp.Fibonacci):
661         (BenchmarkRunner._testName):
662         (BenchmarkRunner._testItemId):
663         (BenchmarkRunner.listSuites.button.onclick):
664         (BenchmarkRunner.listSuites.callNextStep):
665         (BenchmarkRunner.listSuites):
666         (BenchmarkState):
667         (BenchmarkState.prototype.currentSuite):
668         (BenchmarkState.prototype.currentTest):
669         (BenchmarkState.prototype.next):
670         (BenchmarkState.prototype.isFirstTest):
671         (BenchmarkState.prototype.prepareCurrentSuite.frame.onload):
672         (BenchmarkRunner.step):
673         (BenchmarkRunner._runTestAndRecordResults):
674         (BenchmarkRunner._finalize):
675         * DoYouEvenBench/todomvc: Added.
676         * DoYouEvenBench/todomvc/architecture-examples: Added.
677         * DoYouEvenBench/todomvc/architecture-examples/backbone: Added.
678         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower.json: Added.
679         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components: Added.
680         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone: Added.
681         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone.localStorage: Added.
682         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone.localStorage/backbone.localStorage.js: Added.
683         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone/backbone.js: Added.
684         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/jquery: Added.
685         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/jquery/jquery.js: Added.
686         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common: Added.
687         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common/base.css: Added.
688         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common/base.js: Added.
689         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common/bg.png: Added.
690         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/underscore: Added.
691         * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/underscore/underscore.js: Added.
692         * DoYouEvenBench/todomvc/architecture-examples/backbone/index.html: Added.
693         * DoYouEvenBench/todomvc/architecture-examples/backbone/js: Added.
694         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/app.js: Added.
695         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/collections: Added.
696         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/collections/todos.js: Added.
697         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/models: Added.
698         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/models/todo.js: Added.
699         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/routers: Added.
700         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/routers/router.js: Added.
701         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/views: Added.
702         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/views/app-view.js: Added.
703         * DoYouEvenBench/todomvc/architecture-examples/backbone/js/views/todo-view.js: Added.
704         * DoYouEvenBench/todomvc/architecture-examples/backbone/readme.md: Added.
705         * DoYouEvenBench/todomvc/architecture-examples/emberjs: Added.
706         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower.json: Added.
707         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components: Added.
708         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember: Added.
709         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember-localstorage-adapter: Added.
710         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember-localstorage-adapter/localstorage_adapter.js: Added.
711         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember/ember.js: Added.
712         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/handlebars: Added.
713         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/handlebars/handlebars.js: Added.
714         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/jquery: Added.
715         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/jquery/jquery.js: Added.
716         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common: Added.
717         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.css: Added.
718         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.js: Added.
719         * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/bg.png: Added.
720         * DoYouEvenBench/todomvc/architecture-examples/emberjs/index.html: Added.
721         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js: Added.
722         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/app.js: Added.
723         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/controllers: Added.
724         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/controllers/todo_controller.js: Added.
725         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/controllers/todos_controller.js: Added.
726         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/libs: Added.
727         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/libs/ember-data.js: Added.
728         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/models: Added.
729         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/models/store.js: Added.
730         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/models/todo.js: Added.
731         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/views: Added.
732         * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/views/edit_todo_view.js: Added.
733         * DoYouEvenBench/todomvc/architecture-examples/emberjs/readme.md: Added.
734         * DoYouEvenBench/todomvc/architecture-examples/emberjs/test.html: Added.
735         * DoYouEvenBench/todomvc/architecture-examples/jquery: Added.
736         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower.json: Added.
737         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components: Added.
738         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/handlebars: Added.
739         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/handlebars/handlebars.js: Added.
740         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/jquery: Added.
741         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/jquery/jquery.js: Added.
742         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common: Added.
743         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common/base.css: Added.
744         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common/base.js: Added.
745         * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common/bg.png: Added.
746         * DoYouEvenBench/todomvc/architecture-examples/jquery/css: Added.
747         * DoYouEvenBench/todomvc/architecture-examples/jquery/css/app.css: Added.
748         * DoYouEvenBench/todomvc/architecture-examples/jquery/index.html: Added.
749         * DoYouEvenBench/todomvc/architecture-examples/jquery/js: Added.
750         * DoYouEvenBench/todomvc/architecture-examples/jquery/js/app.js: Added.
751         * DoYouEvenBench/todomvc/architecture-examples/jquery/readme.md: Added.
752         * DoYouEvenBench/todomvc/license.md: Added.
753         * DoYouEvenBench/todomvc/readme.md: Added.
754         * DoYouEvenBench/todomvc/vanilla-examples: Added.
755         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs: Added.
756         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower.json: Added.
757         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components: Added.
758         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common: Added.
759         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common/base.css: Added.
760         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common/base.js: Added.
761         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common/bg.png: Added.
762         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/index.html: Added.
763         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js: Added.
764         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/app.js: Added.
765         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/controller.js: Added.
766         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/helpers.js: Added.
767         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/model.js: Added.
768         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/store.js: Added.
769         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/view.js: Added.
770         * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/readme.md: Added.
771         * Skipped:
772
773 2013-09-04  Filip Pizlo  <fpizlo@apple.com>
774
775         Introduce a version of SunSpider that runs for a really long time (about 1 sec on my machine)
776
777         Rubber stamped by Mark Hahnenberg.
778         
779         This isn't meant for serious VM-to-VM performance comparisons, but it is useful
780         to see how these benchmarks behave when they're completely warmed up.
781
782         * LongSpider: Added.
783         * LongSpider/3d-cube.js: Added.
784         (DrawLine):
785         (CalcCross):
786         (CalcNormal):
787         (CreateP):
788         (MMulti):
789         (VMulti):
790         (VMulti2):
791         (MAdd):
792         (Translate):
793         (RotateX):
794         (RotateY):
795         (RotateZ):
796         (DrawQube):
797         (Loop):
798         (Init):
799         * LongSpider/3d-morph.js: Added.
800         (loops.3500.nx.120.nz.120.morph):
801         * LongSpider/3d-raytrace.js: Added.
802         (createVector):
803         (sqrLengthVector):
804         (lengthVector):
805         (addVector):
806         (subVector):
807         (scaleVector):
808         (normaliseVector):
809         (add):
810         (sub):
811         (scalev):
812         (dot):
813         (scale):
814         (cross):
815         (normalise):
816         (transformMatrix):
817         (invertMatrix):
818         (Triangle):
819         (Triangle.prototype.intersect):
820         (Scene):
821         (Scene.prototype.intersect):
822         (Scene.prototype.blocked):
823         (Camera):
824         (Camera.prototype.generateRayPair):
825         (renderRows):
826         (Camera.prototype.render):
827         (raytraceScene.floorShader):
828         (raytraceScene):
829         (arrayToCanvasCommands):
830         * LongSpider/access-binary-trees.js: Added.
831         (TreeNode):
832         (TreeNode.prototype.itemCheck):
833         (bottomUpTree):
834         * LongSpider/access-fannkuch.js: Added.
835         (fannkuch):
836         * LongSpider/access-nbody.js: Added.
837         (Body):
838         (Body.prototype.offsetMomentum):
839         (Jupiter):
840         (Saturn):
841         (Uranus):
842         (Neptune):
843         (Sun):
844         (NBodySystem):
845         (NBodySystem.prototype.advance):
846         (NBodySystem.prototype.energy):
847         * LongSpider/access-nsieve.js: Added.
848         (pad):
849         (nsieve):
850         (sieve):
851         * LongSpider/bitops-3bit-bits-in-byte.js: Added.
852         (fast3bitlookup):
853         (TimeFunc):
854         * LongSpider/bitops-bits-in-byte.js: Added.
855         (bitsinbyte):
856         (TimeFunc):
857         * LongSpider/bitops-nsieve-bits.js: Added.
858         (pad):
859         (primes):
860         (sieve):
861         * LongSpider/controlflow-recursive.js: Added.
862         (ack):
863         (fib):
864         (tak):
865         * LongSpider/crypto-aes.js: Added.
866         (Cipher):
867         (SubBytes):
868         (ShiftRows):
869         (MixColumns):
870         (AddRoundKey):
871         (KeyExpansion):
872         (SubWord):
873         (RotWord):
874         (AESEncryptCtr):
875         (AESDecryptCtr):
876         (escCtrlChars):
877         * LongSpider/crypto-md5.js: Added.
878         (hex_md5):
879         (b64_md5):
880         (str_md5):
881         (hex_hmac_md5):
882         (b64_hmac_md5):
883         (str_hmac_md5):
884         (md5_vm_test):
885         (core_md5):
886         (md5_cmn):
887         (md5_ff):
888         (md5_gg):
889         (md5_hh):
890         (md5_ii):
891         (core_hmac_md5):
892         (safe_add):
893         (bit_rol):
894         (str2binl):
895         (binl2str):
896         (binl2hex):
897         (binl2b64):
898         * LongSpider/crypto-sha1.js: Added.
899         (hex_sha1):
900         (b64_sha1):
901         (str_sha1):
902         (hex_hmac_sha1):
903         (b64_hmac_sha1):
904         (str_hmac_sha1):
905         (sha1_vm_test):
906         (core_sha1):
907         (sha1_ft):
908         (sha1_kt):
909         (core_hmac_sha1):
910         (safe_add):
911         (rol):
912         (str2binb):
913         (binb2str):
914         (binb2hex):
915         (binb2b64):
916         * LongSpider/date-format-tofte.js: Added.
917         (arrayExists):
918         (.a):
919         (.A):
920         (.B):
921         (.d):
922         (.D):
923         (.F):
924         (.g):
925         (.G):
926         (.h):
927         (.H):
928         (.i):
929         (.j):
930         (.l):
931         (.L):
932         (.m):
933         (.M):
934         (.n):
935         (.O):
936         (.r):
937         (.S):
938         (.s):
939         (.t):
940         (.U):
941         (.W):
942         (.w):
943         (.Y):
944         (.y):
945         (.z):
946         (Date.prototype.formatDate):
947         * LongSpider/date-format-xparb.js: Added.
948         (Date.prototype.dateFormat):
949         (Date.createNewFormat):
950         (Date.getFormatCode):
951         (Date.parseDate):
952         (Date.createParser):
953         (Date.formatCodeToRegex):
954         (Date.prototype.getTimezone):
955         (Date.prototype.getGMTOffset):
956         (Date.prototype.getDayOfYear):
957         (Date.prototype.getWeekOfYear):
958         (Date.prototype.isLeapYear):
959         (Date.prototype.getFirstDayOfMonth):
960         (Date.prototype.getLastDayOfMonth):
961         (Date.prototype.getDaysInMonth):
962         (Date.prototype.getSuffix):
963         (String.escape):
964         * LongSpider/math-cordic.js: Added.
965         (FIXED):
966         (FLOAT):
967         (DEG2RAD):
968         (cordicsincos):
969         (cordic):
970         * LongSpider/math-partial-sums.js: Added.
971         (partial):
972         * LongSpider/math-spectral-norm.js: Added.
973         (A):
974         (Au):
975         (Atu):
976         (AtAu):
977         (spectralnorm):
978         * LongSpider/string-base64.js: Added.
979         (toBase64):
980         (base64ToString):
981         * LongSpider/string-fasta.js: Added.
982         (rand):
983         (makeCumulative):
984         (fastaRepeat):
985         (fastaRandom):
986         * LongSpider/string-tagcloud.js: Added.
987         (.Array.prototype.toJSONString):
988         (.Boolean.prototype.toJSONString):
989         (.Date.prototype.toJSONString):
990         (.Number.prototype.toJSONString):
991         (.Object.prototype.toJSONString):
992         (.):
993
994 2013-06-10  Radu Stavila  <stavila@adobe.com>
995
996         [CSS Regions] Rename region-overflow to region-fragment
997         https://bugs.webkit.org/show_bug.cgi?id=117397
998
999         Renamed -webkit-region-overflow to -webkit-region-fragment according to the new working draft
1000         at http://www.w3.org/TR/2013/WD-css3-regions-20130528/#the-region-fragment-property
1001
1002         Reviewed by Alexander Pavlov.
1003
1004         * Layout/resources/regions.css:
1005
1006 2013-06-05  Zan Dobersek  <zdobersek@igalia.com>
1007
1008         Move MemoryInfo under window.internals
1009         https://bugs.webkit.org/show_bug.cgi?id=117197
1010
1011         Reviewed by Ryosuke Niwa.
1012
1013         * resources/runner.js: Remove the setMemoryEnabled call, it's not required anymore as the memory
1014         info is now accessed through window.internals and doesn't need the setting to be enabled to work.
1015
1016 2013-05-30  Ryosuke Niwa  <rniwa@webkit.org>
1017
1018         Web Inspector: tests in PerformanceTests/inspector/ are timing out
1019         https://bugs.webkit.org/show_bug.cgi?id=77024
1020
1021         Reviewed by Andreas Kling.
1022
1023         These tests have been disabled for ages and don't conform to the standard format.
1024
1025         * Skipped:
1026         * inspector: Removed.
1027         * inspector/console-300-lines.html: Removed.
1028         * inspector/first-open-elements.html: Removed.
1029         * inspector/first-open-resources.html: Removed.
1030         * inspector/first-open-scripts.html.broken: Removed.
1031         * inspector/heap-snapshot-advanced.html: Removed.
1032         * inspector/heap-snapshot-performance-test.js: Removed.
1033         * inspector/heap-snapshot.html: Removed.
1034         * inspector/inspector-startup-time.html: Removed.
1035         * inspector/network-append-30-requests.html.broken: Removed.
1036         * inspector/performance-test.js: Removed.
1037         * inspector/show-panel.html.broken: Removed.
1038
1039 2013-05-27  Benjamin Poulain  <benjamin@webkit.org>
1040
1041         Add a balanced benchmark for QuerySelector
1042         https://bugs.webkit.org/show_bug.cgi?id=116811
1043
1044         Reviewed by Sam Weinig.
1045
1046         The goal of this benchmark is to have an overview of querySelector as typically used
1047         by webpages.
1048
1049         It uses queries similar to what is used by popular websites and applies somewhat
1050         similar weighting for each type of query.
1051
1052         The tree used for the queries is intentionally kept simple to ensure we measure QuerySelector
1053         a not purely the overhead of traversal.
1054
1055         * CSS/QuerySelector.html: Added.
1056         * CSS/resources/query-selector.html: Added.
1057
1058 2013-05-18  Ryosuke Niwa  <rniwa@webkit.org>
1059
1060         Add a performance test for copying
1061         https://bugs.webkit.org/show_bug.cgi?id=116394
1062
1063         Reviewed by Andreas Kling.
1064
1065         Added. We're going to skip this test by default since it's such a microbenchmark, and also because
1066         it currently takes 30 minutes to run. As insane as it sounds, each copy takes rouhgly 57 seconds.
1067
1068         Running Interactive/CopyAll.html (1 of 1)
1069         RESULT Interactive: CopyAll: Time= 57618.05 ms
1070         median= 57135.0 ms, stdev= 1542.07271571 ms, min= 55095.0 ms, max= 60913.0 ms
1071         RESULT Interactive: CopyAll: JSHeap= 102811.2 bytes
1072         median= 103272.0 bytes, stdev= 1115.28148913 bytes, min= 100648.0 bytes, max= 103504.0 bytes
1073         RESULT Interactive: CopyAll: Malloc= 446408712.0 bytes
1074         median= 459156772.0 bytes, stdev= 20007346.3266 bytes, min= 415564040.0 bytes, max= 462011928.0 bytes
1075         Finished: 1766.883236 s
1076
1077         * Interactive/CopyAll.html: Added.
1078         * Skipped:
1079
1080 2013-05-13  Seokju Kwon  <seokju.kwon@gmail.com>
1081
1082         Web Inspector: Get rid of native-memory-snapshot in performance test
1083         https://bugs.webkit.org/show_bug.cgi?id=116013
1084
1085         Reviewed by Andreas Kling.
1086
1087         Remove native-memory-snapshot.html from PerformanceTests.
1088
1089         * inspector/native-memory-snapshot.html: Removed.
1090         * inspector/performance-test.js:
1091         (initialize_TimeTracker.Timer):
1092         (initialize_TimeTracker.Timer.prototype._dump):
1093         (initialize_TimeTracker.InspectorTest.runPerformanceTest):
1094
1095 2013-04-10  Benjamin Poulain  <bpoulain@apple.com>
1096
1097         Mass remove all the empty directories
1098
1099         Rubberstamped by Ryosuke Niwa.
1100
1101         * Bindings/resources: Removed.
1102
1103 2013-04-02  Glenn Adams  <glenn@skynav.com>
1104
1105         Need japanese line layout performance test
1106         https://bugs.webkit.org/show_bug.cgi?id=113811
1107
1108         Reviewed by Ryosuke Niwa.
1109
1110         Will be used by https://bugs.webkit.org/show_bug.cgi?id=105692 to test potential performance regression
1111         for Japanese (and other CJK) line break changes.
1112
1113         * Layout/LineLayoutJapanese.html: Added.
1114         * Skipped: Skip this test by default.
1115
1116 2013-03-29  Andrei Bucur  <abucur@adobe.com>
1117
1118         [CSS Regions] Add performance tests
1119         https://bugs.webkit.org/show_bug.cgi?id=113303
1120
1121         Reviewed by Antti Koivisto.
1122
1123         Add simple performance tests for regions, without nested named flows: a region chain and a flow article.
1124         The regions.js script is used to generate the tests and can set the following parameters: the number of regions,
1125         the number of paragraphs, the regions width, height, max-height and the propability of a forced break after a paragraph.
1126
1127         The tests are skipped for now. They should be enabled once the regions performance is stable enough to create a baseline.
1128
1129         * Layout/RegionsAuto.html: Added. A few regions with a short article. The regions have auto-height and some
1130         paragraphs (80%) have forced breaks after. Stress test for the auto-height algorithm.
1131         * Layout/RegionsAutoMaxHeight.html: Added. A lot of regions with auto-height and max-height. Tests the impact of
1132         max-height on the auto-height algorithm.
1133         * Layout/RegionsFixed.html: Added. A lot of regions with a long article. Some paragraphs (50%) have forced breaks after.
1134         Stress test for the regions layout algorithm.
1135         * Layout/RegionsFixedShort.html: Added. A lot of short regions with a long content. Tests the impact of unforced breaks
1136         on the layout speed.
1137         * Layout/resources/regions.css: Added.
1138         (.articleInFlow):
1139         (.articleNone):
1140         (.region):
1141         (.contentParagraph):
1142         (.breakAfter):
1143         (.regionContainer):
1144         * Layout/resources/regions.js: Added.
1145         (.):
1146         * Skipped:
1147
1148 2013-03-26  Ryosuke Niwa  <rniwa@webkit.org>
1149
1150         Add a performance tests for selecting all content in a document
1151         https://bugs.webkit.org/show_bug.cgi?id=113358
1152
1153         Reviewed by Levi Weintraub.
1154
1155         Add a performance test for selecting all. We wait for paint to happen by setTimeout(~, 0).
1156
1157         Example outputs:
1158             RESULT Interactive: SelectAll: Time= 652.6 ms
1159             median= 644.5 ms, stdev= 54.6177144967 ms, min= 599.0 ms, max= 773.0 ms
1160
1161             RESULT Interactive: SelectAll: Time= 654.4 ms
1162             median= 633.5 ms, stdev= 55.9223145368 ms, min= 600.0 ms, max= 769.0 ms
1163
1164             RESULT Interactive: SelectAll: Time= 657.9 ms
1165             median= 640.0 ms, stdev= 54.1420159833 ms, min= 604.0 ms, max= 774.0 ms
1166
1167         * Interactive/SelectAll.html: Added.
1168         * Skipped:
1169
1170 2013-03-19  Alexei Filippov  <alph@chromium.org>
1171
1172         Web Inspector: Fix heap profiler performance tests.
1173         https://bugs.webkit.org/show_bug.cgi?id=112701
1174
1175         Reviewed by Yury Semikhatsky.
1176
1177         The tests were broken by profile types refactoring.
1178
1179         * inspector/heap-snapshot-performance-test.js:
1180         (test.performanceTest.step0):
1181         (test.performanceTest.step1):
1182
1183 2013-03-05  Eric Seidel  <eric@webkit.org>
1184
1185         Add html-parser-threaded perf test now that the threaded parser is enabled by default
1186         https://bugs.webkit.org/show_bug.cgi?id=111200
1187
1188         Reviewed by Ryosuke Niwa.
1189
1190         The old srcdoc test no longer triggers the threaded parser due to compatibility fixes.
1191
1192         * Parser/html-parser-threaded.html: Renamed from PerformanceTests/Parser/html-parser-srcdoc.html.
1193         * Skipped: Unfortunately this new test is still skipped too.
1194
1195 2013-03-04  Eric Seidel  <eric@webkit.org>
1196
1197         Add PerformanceTest for document startup via iframe append/remove
1198         https://bugs.webkit.org/show_bug.cgi?id=111389
1199
1200         Reviewed by Kentaro Hara.
1201
1202         We'd like pages with lots of iframes to be fast.
1203         This test shows that at least for V8/Chromium we spend
1204         all our time booting v8.
1205
1206         On my 32-core linux machine I see about 70 runs/sec in
1207         Release and 5 runs/sec in Debug.
1208
1209         * DOM/iframe-append-remove.html: Added.
1210
1211 2013-03-03  Ryosuke Niwa  <rniwa@webkit.org>
1212
1213         Some perf. tests have variances that differ greatly between runs
1214         https://bugs.webkit.org/show_bug.cgi?id=97510
1215
1216         Reviewed by Benjamin Poulain.
1217
1218         In order to control the number of iterations and processes to use from run-perf-tests, always use 20
1219         iterations on all tests except Dromaeo, where even doing 5 iterations is prohibitively slow, by default.
1220         Without this change, it'll become extremely hard for us to tweak the number of iterations and processes
1221         to use from run-perf-tests.
1222
1223         * Animation/balls.html:
1224         * DOM/DOMTable.html:
1225         * DOM/resources/dom-perf.js:
1226         (runBenchmarkSuite.PerfTestRunner.measureTime):
1227         * Dromaeo/resources/dromaeorunner.js:
1228         * Layout/floats_100_100.html:
1229         * Layout/floats_100_100_nested.html:
1230         * Layout/floats_20_100.html:
1231         * Layout/floats_20_100_nested.html:
1232         * Layout/floats_2_100.html:
1233         * Layout/floats_2_100_nested.html:
1234         * Layout/floats_50_100.html:
1235         * Layout/floats_50_100_nested.html:
1236         * Layout/subtree-detaching.html:
1237         * Parser/html5-full-render.html:
1238         * SVG/SvgHitTesting.html:
1239         * resources/runner.js:
1240         * resources/results-template.html:
1241
1242 2013-02-25  Ryosuke Niwa  <rniwa@webkit.org>
1243
1244         Use perf.webkit.org JSON format in results page
1245         https://bugs.webkit.org/show_bug.cgi?id=110842
1246
1247         Reviewed by Benjamin Poulain.
1248
1249         Updated the results page template to use the new JSON format.
1250
1251         Since new JSON format doesn't contain statistics such as stdev and min, added statistics.js to compute
1252         these values. Also use 95% percentile confidence interval instead of standard deviation in various places.
1253
1254         * resources/results-template.html: Added statistics.js as dependency.
1255         (TestResult): Updated to take a metric instead of its test. Replaced stdev() with confidenceIntervalDelta()
1256         now that we have a fancy Statistics class.
1257
1258         (TestRun.webkitRevision):
1259         (PerfTestMetric): Renamed from PerfTest since this object now encapsulates each measurement (such as time,
1260         JS heap, and malloc) in test. Also added a conversion table from a metric name to a unit since new format
1261         doesn't contain units.
1262         (PerfTestMetric.name): Updated to compute the full metric name from test name and metric name, matching
1263         the old behavior.
1264         (PerfTestMetric.isMemoryTest): Explicitly look for 'JSHeap' and 'Malloc' tests.
1265         (PerfTestMetric.smallerIsBetter):
1266
1267         (attachPlot): Deleted the code to deal with tests that don't provide individual iteration measurement
1268         since such tests no longer exist. Also fixed up the code compute y-axis range.
1269
1270         (createTableRow.markupForRun): Updated to use confidenceIntervalDelta() instead of stdev().
1271         
1272         (init.addTests): Added. Recursively add metrics.
1273
1274         * resources/statistics.js: Added. Imported from perf.webkit.org.
1275         (Statistics.max):
1276         (Statistics.min):
1277         (Statistics.sum):
1278         (Statistics.squareSum):
1279         (Statistics.sampleStandardDeviation):
1280         (Statistics.supportedConfidenceLevels):
1281         (Statistics.confidenceIntervalDelta):
1282         (Statistics.confidenceInterval):
1283
1284 2013-02-11  Alexei Filippov  <alph@chromium.org>
1285
1286         Web Inspector: Split Profiler domain in protocol into Profiler and HeapProfiler
1287         https://bugs.webkit.org/show_bug.cgi?id=108653
1288
1289         Reviewed by Yury Semikhatsky.
1290
1291         Currently CPU and heap profilers share the same domain 'Profiler' in the protocol.
1292         In fact these two profile types have not too much in common. So put each into its own domain.
1293         It should also help when Profiles panel gets split into several tools.
1294         This is the phase 1 which adds InspectorHeapProfilerAgent but doesn't
1295         change the original InspectorProfilerAgent.
1296
1297         * inspector/heap-snapshot-performance-test.js:
1298         (test.performanceTest.cleanup):
1299
1300 2013-02-05  Dominik R√∂ttsches  <dominik.rottsches@intel.com>
1301
1302         Add a performance test for arabic line breaking
1303         https://bugs.webkit.org/show_bug.cgi?id=108948
1304
1305         Reviewed by Eric Seidel.
1306
1307         Adding a perfomance test based to exercise the complex
1308         font path used in rendering arabic script.
1309
1310         * Layout/ArabicLineLayout.html: Added.
1311         * Skipped: New test skipped by default as per Ryosuke's request.
1312
1313 2013-01-23  Yury Semikhatsky  <yurys@chromium.org>
1314
1315         Web Inspector: some measurements are missing in PerformanceTests/inspector/heap-*.html
1316         https://bugs.webkit.org/show_bug.cgi?id=107687
1317
1318         Reviewed by Pavel Feldman.
1319
1320         * inspector/heap-snapshot-performance-test.js: override methods on JSHeapSnapshot instead
1321         of HeapSnapshot, otherwise overrides from JSHeapSnapshot will rule.
1322
1323 2013-01-18  Ryosuke Niwa  <rniwa@webkit.org>
1324
1325         Skip DOM/TraverseChildNodes.html as intended in r140070.
1326
1327         * Skipped:
1328
1329 2013-01-17  Dominic Cooney  <dominicc@chromium.org>
1330
1331         Unreviewed, re-land r140051.
1332
1333         I overzealously rolled this out; the test was intended to be
1334         skipped, but was not skipped because of a typo in Skipped. See
1335         <https://bugs.webkit.org/show_bug.cgi?id=107210>
1336
1337         * Parser/html-parser-srcdoc.html: Added.
1338         * Skipped: Big-P Parser.
1339
1340 2013-01-17  Sheriff Bot  <webkit.review.bot@gmail.com>
1341
1342         Unreviewed, rolling out r140051.
1343         http://trac.webkit.org/changeset/140051
1344         https://bugs.webkit.org/show_bug.cgi?id=107210
1345
1346         html-parser-srcdoc.html failing on Chromium Linux Perf and
1347         Chromium Mac Perf with a lot of error spew about blocked
1348         script execution in 'about:srcdoc' (Requested by dominicc on
1349         #webkit).
1350
1351         * Parser/html-parser-srcdoc.html: Removed.
1352         * Skipped:
1353
1354 2013-01-16  Ryosuke Niwa  <rniwa@webkit.org>
1355
1356         Remove NodeListsNodeData when it's no longer needed
1357         https://bugs.webkit.org/show_bug.cgi?id=107074
1358
1359         Reviewed by Darin Adler.
1360
1361         Added a micro benchmark to see the benefit of removing NodeListsNodeData.
1362         The test traverses all elements in the html5 specification page and accesses childNodes.
1363
1364         Don't enable this test for now since it's really a micro benchmark specifically
1365         designed to test this patch.
1366
1367         * DOM/TraverseChildNodes.html: Added.
1368         * Skipped: Don't enable newly added test by default.
1369         * resources/results-template.html: Compare against the unscaled unit (e.g. "bytes") as
1370         opposed to scaled units such as "K bytes".
1371         * resources/runner.js:
1372         (.start): Moved the code to call currentTest.setup from measureRunsPerSecondOnce so that
1373         it'll be ran for all test types, namely of PerfTestRunner.measureTime.
1374         (.measureRunsPerSecondOnce):
1375
1376 2013-01-17  Eric Seidel  <eric@webkit.org>
1377
1378         Add a version of the html-parser benchmark which uses srcdoc instead of document.write so it tests the threaded parser
1379         https://bugs.webkit.org/show_bug.cgi?id=107158
1380
1381         Reviewed by Ryosuke Niwa.
1382
1383         Currently this test even opts-in to the threaded parser if available.
1384         We'll remove that line when the threaded parser becomes default or goes away.
1385
1386         * Parser/html-parser-srcdoc.html: Added.
1387
1388 2013-01-16  Arnaud Renevier  <a.renevier@sisa.samsung.com>
1389
1390         inconsistency in drawImage with target rect negative dimensions.
1391         https://bugs.webkit.org/show_bug.cgi?id=100026
1392
1393         Reviewed by Dean Jackson.
1394
1395         Create a drawImage performance test. There is no significative change
1396         in performance: 27144.6851528 runs/s without the patch; 27153.517612
1397         runs/s with the patch. Test is currently skipped.
1398
1399         * Canvas/drawimage.html: Added.
1400         * Skipped:
1401
1402 2013-01-15  Dominic Cooney  <dominicc@chromium.org>
1403
1404         Allow zero values as results from the runFunction.
1405         https://bugs.webkit.org/show_bug.cgi?id=102500
1406
1407         Reviewed by Kentaro Hara.
1408
1409         DOM/DOMWalk.js fails on the Chromium Win perf bot because one or
1410         more parts of the test usually return zero at some point.
1411
1412         * resources/runner.js: Accept merely non-negative results.
1413
1414 2012-12-28  Yury Semikhatsky  <yurys@chromium.org>
1415
1416         Web Inspector: rename distanceToWindow to distance
1417         https://bugs.webkit.org/show_bug.cgi?id=105823
1418
1419         Reviewed by Pavel Feldman.
1420
1421         Updated heap profiler performance test after renaming distanceToWindow to distance.
1422
1423         * inspector/heap-snapshot-performance-test.js:
1424
1425 2012-12-18  Hayato Ito  <hayato@chromium.org>
1426
1427         Use element.webkitCreateShadowRoot instead of WebKitShadowRoot in PerformanceTests.
1428         https://bugs.webkit.org/show_bug.cgi?id=105256
1429
1430         Reviewed by Dimitri Glazkov.
1431
1432         WebKitShadowRoot constructor was deleted in favor of element.webkitCreateShadowRoot().
1433
1434         * ShadowDOM/ChangingClassNameShadowDOM.html:
1435         * ShadowDOM/ChangingSelect.html:
1436         * ShadowDOM/ContentReprojection.html:
1437         * ShadowDOM/DistributionWithMultipleShadowRoots.html:
1438         * ShadowDOM/LargeDistributionWithLayout.html:
1439         * ShadowDOM/MultipleInsertionPoints.html:
1440         * ShadowDOM/ShadowReprojection.html:
1441         * ShadowDOM/SmallDistributionWithLayout.html:
1442
1443 2012-12-17  Shinya Kawanaka  <shinyak@chromium.org>
1444
1445         [Shadow] LargeDistributionWithLayout.html should be updated
1446         https://bugs.webkit.org/show_bug.cgi?id=105242
1447
1448         Reviewed by Ryosuke Niwa.
1449
1450         Since this test was written when distribution took O(N^2). However, now it's almost O(N), so this test finishes
1451         in very short time. We should convert it unit to runs/s.
1452
1453         This test contains a some error to cause test failure, e.g. using obsolete API, so they also should be fixed.
1454
1455         * ShadowDOM/LargeDistributionWithLayout.html:
1456
1457 2012-12-13  Ryosuke Niwa  <rniwa@webkit.org>
1458
1459         [chromium perf] DOM/DOMWalk.html failures
1460         https://bugs.webkit.org/show_bug.cgi?id=104866
1461
1462         Reviewed by Eric Seidel.
1463
1464         Use PerfTestRunner.now which in turn uses window.performance.now() when it's available.
1465
1466         * DOM/resources/dom-perf.js:
1467         (Interval.start):
1468         (Interval.stop):
1469         (BenchmarkSuite.prototype.RunSingle):
1470
1471 2012-12-05  Shinya Kawanaka  <shinyak@chromium.org>
1472
1473         [Shadow] Performance tests for ShadowDOM distribution
1474         https://bugs.webkit.org/show_bug.cgi?id=103617
1475
1476         Reviewed by Dimitri Glazkov.
1477
1478         We would like to measure ShadowDOM distribution performance in various cases.
1479         In this patch, we add performance tests for several distribution patterns.
1480
1481         * ShadowDOM/ContentReprojection.html: Added.
1482         * ShadowDOM/DistributionWithMultipleShadowRoots.html: Added.
1483         * ShadowDOM/LargeDistributionWithLayout.html: Added.
1484         * ShadowDOM/MultipleInsertionPoints.html: Added.
1485         * ShadowDOM/ShadowReprojection.html: Added.
1486         * ShadowDOM/SmallDistributionWithLayout.html: Added.
1487
1488 2012-12-05  Shinya Kawanaka  <shinyak@chromium.org>
1489
1490         [Shadow] Performance tests of distribution for changing className
1491         https://bugs.webkit.org/show_bug.cgi?id=103612
1492
1493         Reviewed by Dimitri Glazkov.
1494
1495         We would like to measure ShadowDOM performance and compare it to the similar functional HTML without using ShadowDOM.
1496         In this patch, we add a case when classNames of distributed elemeents are changed.
1497
1498         * ShadowDOM/ChangingClassName.html: Added.
1499         * ShadowDOM/ChangingClassNameShadowDOM.html: Added.
1500
1501 2012-12-03  Ryosuke Niwa  <rniwa@webkit.org>
1502
1503         Dromaeo should report individual test result
1504         https://bugs.webkit.org/show_bug.cgi?id=99800
1505
1506         Reviewed by Eric Seidel.
1507
1508         Made one small modification to Droameo's webrunner.js so that it reports individual runs/s values
1509         for each subtest. This allows us to compute the aggregated run/s for each iteration like other
1510         performance tests.
1511
1512         Also stop measuring memory usage in Dromaeo tests because some Dromaeo tests (e.g. jslib-modify-jquery)
1513         have unrealistic memory usage, and measuring them at the time of teardown doesn't make much sense.
1514
1515         * Animation/balls.html: Fixed typo: measureValueAync.
1516         * Dromaeo/resources/dromaeo/web/webrunner.js:
1517
1518         * Dromaeo/resources/dromaeorunner.js:
1519         (DRT.setup): Call prepareToMeasureValuesAsync so that DRT.teardown can use meausreValueAsync, and log
1520         "Running 5 times". Since the log container will be inserted before iframe, we need to explicitly insert
1521         the iframe as the first child of the body element to avoid logs from affecting the iframe's position.
1522         Also specify the number of iterations by calling PerfTestRunner.iterationCount() so that we may adjust
1523         the number of iterations in PerfTestRunner.
1524
1525         (DRT.progress): Log individual measurement for each subtest.
1526         (DRT.teardown): Compute the aggregated result for each iteration, and log them using measureValueAsync.
1527
1528         * resources/runner.js:
1529         (PerfTestRunner.logStatistics): Merged printStatistics since it's no longer needed after r131638.
1530         (PerfTestRunner): Removed getAndPrintMemoryStatistics since it was used only in Dromaeo tests but
1531         we no longer measure memory usage in Dromaeo tests.
1532
1533         (start): Increment completedRuns from -1 to 0 for Dromaeo tests where we don't want to ignore the initial
1534         measurement. Note that ignoreWarmUpAndLog ignores the measurements for which completedRuns is negative.
1535
1536         (ignoreWarmUpAndLog): We don't measure memory usage in Dromaeo tests. See above.
1537         (PerfTestRunner.iterationCount): Added. This abstraction allows us to auto-adjust the number of iterations from
1538         run-perf-tests in near future.
1539         (PerfTestRunner.measureValueAsync): Renamed from measureValueAync.
1540
1541 2012-11-29  Shinya Kawanaka  <shinyak@chromium.org>
1542
1543         [Shadow] Performance tests of distribution for changing select attribute
1544         https://bugs.webkit.org/show_bug.cgi?id=103611
1545
1546         Reviewed by Hajime Morita.
1547
1548         We would like to measure ShadowDOM performance and compare it to the similar functional HTML without using ShadowDOM.
1549         In this patch, we add a case when select attribute of HTMLContentElement is changed.
1550
1551         * ShadowDOM/ChangingSelect.html: Added.
1552         * ShadowDOM/ChangingSelectWithoutShadow.html: Added.
1553         * Skipped:
1554
1555 2012-11-19  Shinya Kawanaka  <shinyak@chromium.org>
1556
1557         Changing id, className, or attribute should invalidate distribution
1558         https://bugs.webkit.org/show_bug.cgi?id=100738
1559
1560         Reviewed by Dimitri Glazkov.
1561
1562         Added test code to modify id/class/attribute.
1563
1564         * DOM/ModifyAttribute.html: Added.
1565         * DOM/resources/dom-perf/modify-attribute.js: Added.
1566         (ModifyAttribute.CreateElementToSetUp):
1567         (ModifyAttribute.ModifyId):
1568         (ModifyAttribute.ModifyClass):
1569         (ModifyAttribute.ModifyTitle):
1570
1571 2012-11-14  Ryosuke Niwa  <rniwa@webkit.org>
1572
1573         runCount in runner.js should be renamed to iterationCount
1574         https://bugs.webkit.org/show_bug.cgi?id=102208
1575
1576         Reviewed by Tony Chang.
1577
1578         Prior to this patch, there were terminology confusions between "runs" and "iterations".
1579         The term "run" should refer to running a performance test once, and "iteration" should
1580         refer to one measurement in the test. i.e. Executing run-perf-should once will result in
1581         a single "run" of performance tests and each test may execute multiple "iterations"
1582         to complete the run.
1583
1584         Unfortunately, we still overload the meaning of "runs" in "runs/s" (is "function calls/s")
1585         but that could be addressed in a separate patch.
1586
1587         * Animation/balls.html:
1588         * DOM/DOMTable.html:
1589         * DOM/resources/dom-perf.js:
1590         * Layout/floats_100_100.html:
1591         * Layout/floats_100_100_nested.html:
1592         * Layout/floats_20_100.html:
1593         * Layout/floats_20_100_nested.html:
1594         * Layout/floats_2_100.html:
1595         * Layout/floats_2_100_nested.html:
1596         * Layout/floats_50_100.html:
1597         * Layout/floats_50_100_nested.html:
1598         * Layout/subtree-detaching.html:
1599         * Parser/html5-full-render.html:
1600         * SVG/SvgHitTesting.html:
1601         * resources/runner.js:
1602
1603 2012-11-13  Dimitri Glazkov  <dglazkov@chromium.org>
1604
1605         Unreviewed, rolling out r134367.
1606         http://trac.webkit.org/changeset/134367
1607         https://bugs.webkit.org/show_bug.cgi?id=100738
1608
1609         Speculative rollout, could have cause Dromaeo setAttribute
1610         perf regression.
1611
1612         * DOM/ModifyAttribute.html: Removed.
1613         * DOM/resources/dom-perf/modify-attribute.js: Removed.
1614
1615 2012-11-12  Shinya Kawanaka  <shinyak@chromium.org>
1616
1617         Changing id, className, or attribute should invalidate distribution
1618         https://bugs.webkit.org/show_bug.cgi?id=100738
1619
1620         Reviewed by Dimitri Glazkov.
1621
1622         Added test code to modify id/class/attribute.
1623
1624         * DOM/ModifyAttribute.html: Added.
1625         * DOM/resources/dom-perf/modify-attribute.js: Added.
1626         (ModifyAttribute.CreateElementToSetUp):
1627         (ModifyAttribute.ModifyId):
1628         (ModifyAttribute.ModifyClass):
1629         (ModifyAttribute.ModifyTitle):
1630
1631 2012-11-06  Adam Barth  <abarth@webkit.org>
1632
1633         DOMImplementation should use ScriptWrappable
1634         https://bugs.webkit.org/show_bug.cgi?id=101279
1635
1636         Reviewed by Eric Seidel.
1637
1638         This simple PerformanceTest measure how quickly we can access
1639         document.implementation. The goal of this performance test is just to
1640         validate that using ScriptWrappable actually makes the bindings faster.
1641
1642         * Bindings/document-implementation.html: Added.
1643
1644 2012-11-05  Geoffrey Garen  <ggaren@apple.com>
1645
1646         WebKit should have performance tests for book chapter reflow
1647         https://bugs.webkit.org/show_bug.cgi?id=101271
1648
1649         Reviewed by Dan Bernstein.
1650
1651         I grabbed a book chapter from the Project Gutenberg front page:
1652
1653         * Layout/chapter-reflow-once.html: Added.
1654         * Layout/chapter-reflow-thrice.html: Added.
1655         * Layout/chapter-reflow-twice.html: Added.
1656         * Layout/chapter-reflow.html: Added.
1657
1658         I also created a torture-test random text generator:
1659
1660         * Layout/chapter-reflow-once-random.html: Added.
1661
1662 2012-10-29  Zoltan Horvath  <zoltan@webkit.org>
1663
1664         Turn PageLoad tests into simple performancetests, commit #7 (last) 
1665         https://bugs.webkit.org/show_bug.cgi?id=99899
1666
1667         Reviewed by Ryosuke Niwa.
1668
1669         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1670         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1671         to their new location and adds html/js wrappers for them.
1672
1673         This is the #7 (last) commit of the whole patch.
1674
1675         * PageLoad: Removed.
1676         * PageLoad/svg: Removed.
1677         * PageLoad/svg/LICENSES: Removed.
1678         * PageLoad/svg/files: Removed.
1679         * PageLoad/svg/files/33041-Samurai.svg: Removed.
1680         * PageLoad/svg/files/42450-under the see.svg: Removed.
1681         * PageLoad/svg/files/world-iso.svg: Removed.
1682         * PageLoad/svg/svg.pltsuite: Removed.
1683         * SVG/Samurai.html: Added.
1684         * SVG/UnderTheSee.html: Added.
1685         * SVG/WorldIso.html: Added.
1686         * SVG/resources/LICENSES: Copied from PerformanceTests/PageLoad/svg/LICENSES.
1687         * SVG/resources/Samurai.svg: Copied from PerformanceTests/PageLoad/svg/files/33041-Samurai.svg.
1688         * SVG/resources/UnderTheSee.svg: Copied from PerformanceTests/PageLoad/svg/files/42450-under%20the%20see.svg.
1689         * SVG/resources/WorldIso.svg: Copied from PerformanceTests/PageLoad/svg/files/world-iso.svg.
1690         * SVG/resources/svg.pltsuite: Copied from PerformanceTests/PageLoad/svg/svg.pltsuite.
1691         * Skipped: Rename the files on the skipped list also.
1692
1693 2012-10-26  Eric Seidel  <eric@webkit.org>
1694
1695         Add a microbenchmark for Hindi (complex-text) line-layout
1696         https://bugs.webkit.org/show_bug.cgi?id=100024
1697
1698         Reviewed by Ryosuke Niwa.
1699
1700         I wrote this to make sure that we don't regress line-breaking performance
1701         for the complex-text codepath. This test has shown me that TOT is
1702         already 5% slower than Safari 6.0.1 here. :(
1703
1704         * Layout/hindi-line-layout.html: Added.
1705
1706 2012-10-26  Zoltan Horvath  <zoltan@webkit.org>
1707
1708         Turn PageLoad tests into simple performancetests, commit #6 
1709         https://bugs.webkit.org/show_bug.cgi?id=99899
1710
1711         Reviewed by Ryosuke Niwa.
1712
1713         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1714         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1715         to their new location and adds html/js wrappers for them.
1716
1717         This is the #6 commit of the whole patch.
1718
1719         * PageLoad/svg/files/gearflowers.svg: Removed.
1720         * PageLoad/svg/files/hereGear4.svg: Removed.
1721         * PageLoad/svg/files/worldcup.svg: Removed.
1722         * SVG/GearFlowers.html: Added.
1723         * SVG/HereGear.html: Added.
1724         * SVG/Worldcup.html: Added.
1725         * SVG/resources/GearFlowers.svg: Copied from PerformanceTests/PageLoad/svg/files/gearflowers.svg.
1726         * SVG/resources/HereGear.svg: Copied from PerformanceTests/PageLoad/svg/files/hereGear4.svg.
1727         * SVG/resources/Worldcup.svg: Copied from PerformanceTests/PageLoad/svg/files/worldcup.svg.
1728         * Skipped: Rename the files on the skipped list also.
1729
1730 2012-10-26  Zoltan Horvath  <zoltan@webkit.org>
1731
1732         Turn PageLoad tests into simple performancetests, commit #5 
1733         https://bugs.webkit.org/show_bug.cgi?id=99899
1734
1735         Reviewed by Ryosuke Niwa.
1736
1737         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1738         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1739         to their new location and adds html/js wrappers for them.
1740
1741         This is the #5 commit of the whole patch.
1742
1743         * PageLoad/svg/files/Harvey_Rayner.svg: Removed.
1744         * PageLoad/svg/files/Sierpinski_carpet_6.svg: Removed.
1745         * PageLoad/svg/files/mtsthelens.svg: Removed.
1746         * PageLoad/svg/files/mtsthelens0.jpg: Removed.
1747         * SVG/HarveyRayner.html: Added.
1748         * SVG/MtSaintHelens.html: Added.
1749         * SVG/SierpinskiCarpet.html: Added.
1750         * SVG/resources/HarveyRayner.svg: Copied from PerformanceTests/PageLoad/svg/files/Harvey_Rayner.svg.
1751         * SVG/resources/MtSaintHelens.svg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens.svg.
1752         * SVG/resources/SierpinskiCarpet.svg: Copied from PerformanceTests/PageLoad/svg/files/Sierpinski_carpet_6.svg.
1753         * SVG/resources/mtsthelens0.jpg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens0.jpg.
1754         * Skipped: Rename the files on the skipped list also.
1755
1756 2012-10-25  Zoltan Horvath  <zoltan@webkit.org>
1757
1758         Turn PageLoad tests into simple performancetests, commit #4 
1759         https://bugs.webkit.org/show_bug.cgi?id=99899
1760
1761         Reviewed by Ryosuke Niwa.
1762
1763         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1764         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1765         to their new location and adds html/js wrappers for them.
1766
1767         This is the #4 commit of the whole patch.
1768
1769         * PageLoad/svg/files/france.svg: Removed.
1770         * PageLoad/svg/files/francobollo_gnome_ezechi_02.svg: Removed.
1771         * SVG/France.html: Added.
1772         * SVG/FrancoBolloGnomeEzechi.html: Added.
1773         * SVG/resources/France.svg: Copied from PerformanceTests/PageLoad/svg/files/france.svg.
1774         * SVG/resources/FrancoBolloGnomeEzechi.svg: Copied from PerformanceTests/PageLoad/svg/files/francobollo_gnome_ezechi_02.svg.
1775         * Skipped: Rename the files on the skipped list also.
1776
1777 2012-10-25  Zoltan Horvath  <zoltan@webkit.org>
1778
1779         Turn PageLoad tests into simple performancetests, commit #3 
1780         https://bugs.webkit.org/show_bug.cgi?id=99899
1781
1782         Reviewed by Ryosuke Niwa.
1783
1784         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1785         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1786         to their new location and adds html/js wrappers for them.
1787
1788         This is the #3 commit of the whole patch.
1789
1790         * PageLoad/svg/files/42470-flower_from_my_garden_v2.svg: Removed.
1791         * PageLoad/svg/files/44057-drops on a blade.svg: Removed.
1792         * PageLoad/svg/files/deb9frac1.svg: Removed.
1793         * PageLoad/svg/files/food_leif_lodahl_01.svg: Removed.
1794         * SVG/Debian.html: Added.
1795         * SVG/DropsOnABlade.html: Added.
1796         * SVG/FlowerFromMyGarden.html: Added.
1797         * SVG/FoodLeifLodahl.html: Added.
1798         * SVG/resources/Debian.svg: Copied from PerformanceTests/PageLoad/svg/files/deb9frac1.svg.
1799         * SVG/resources/DropsOnABlade.svg: Copied from PerformanceTests/PageLoad/svg/files/44057-drops%20on%20a%20blade.svg.
1800         * SVG/resources/FlowerFromMyGarden.svg: Copied from PerformanceTests/PageLoad/svg/files/42470-flower_from_my_garden_v2.svg.
1801         * SVG/resources/FoodLeifLodahl.svg: Copied from PerformanceTests/PageLoad/svg/files/food_leif_lodahl_01.svg.
1802
1803 2012-10-24  Zoltan Horvath  <zoltan@webkit.org>
1804
1805         Turn PageLoad tests into simple performancetests, commit #2 
1806         https://bugs.webkit.org/show_bug.cgi?id=99899
1807
1808         Reviewed by Ryosuke Niwa.
1809
1810         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1811         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1812         to their new location and adds html/js wrappers for them.
1813
1814         This is the #2 commit of the whole patch.
1815
1816         * PageLoad/svg/files/cacuts_01.svg: Removed.
1817         * PageLoad/svg/files/cowboy.svg: Removed.
1818         * PageLoad/svg/files/crawfish2_ganson.svg: Removed.
1819         * SVG/Cactus.html: Added.
1820         * SVG/Cowboy.html: Added.
1821         * SVG/CrawFishGanson.html: Added.
1822         * SVG/resources/Cactus.svg: Copied from PerformanceTests/PageLoad/svg/files/cacuts_01.svg.
1823         * SVG/resources/Cowboy.svg: Copied from PerformanceTests/PageLoad/svg/files/cowboy.svg.
1824         * SVG/resources/CrawFishGanson.svg: Copied from PerformanceTests/PageLoad/svg/files/crawfish2_ganson.svg.
1825         * Skipped: Remove az-lizard_benji_park_01.svg from the skipped list.
1826
1827 2012-10-24  Zoltan Horvath  <zoltan@webkit.org>
1828
1829         Turn PageLoad tests into simple performancetests, commit #1 
1830         https://bugs.webkit.org/show_bug.cgi?id=99899
1831
1832         Reviewed by Ryosuke Niwa.
1833
1834         We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1835         performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1836         to their new location and adds html/js wrappers for them.
1837
1838         This is the #1 commit of the whole patch.
1839
1840         * PageLoad/svg/files/az-lizard_benji_park_01.svg: Removed.
1841         * PageLoad/svg/files/bamboo_01.svg: Removed.
1842         * SVG/AzLizardBenjiPark.html: Added.
1843         * SVG/Bamboo.html: Added.
1844         * SVG/resources: Added.
1845         * SVG/resources/AzLizardBenjiPark.svg: Copied from PerformanceTests/PageLoad/svg/files/az-lizard_benji_park_01.svg.
1846         * SVG/resources/Bamboo.svg: Copied from PerformanceTests/PageLoad/svg/files/bamboo_01.svg.
1847
1848 2012-10-24  Zoltan Horvath  <zoltan@webkit.org>
1849
1850         REGRESSION(r131982): Skip SVG/SvgNestedUse.html performancetest since it is crashing
1851         https://bugs.webkit.org/show_bug.cgi?id=100262
1852
1853         Unreviewed.
1854
1855         Skip until proper fix.
1856
1857         * Skipped: Add SVG/SvgNestedUse.html
1858
1859 2012-10-23  Zoltan Horvath  <zoltan@webkit.org>
1860
1861         Store the loaded file locally in measurePageLoadTime
1862         https://bugs.webkit.org/show_bug.cgi?id=100172
1863
1864         Reviewed by Csaba Osztrogon√°c.
1865
1866         Store the loaded file as a local variable instead of attaching it to the test object.
1867         Handle chunkSize inside test.run.
1868
1869         * resources/runner.js:
1870         (.):
1871
1872 2012-10-23  Zoltan Horvath  <zoltan@webkit.org>
1873
1874         Add measurePageLoadTime function to PerfTestRunner
1875         https://bugs.webkit.org/show_bug.cgi?id=100029
1876
1877         Reviewed by Ryosuke Niwa.
1878
1879         Adopt chunk based loading logic from html5-full-render.html into measurePageLoadTime function,
1880         this is needed to measure the performance and the memory consumption of the PageLoadTests as
1881         we do it for all other performancetests.
1882
1883         * Parser/html5-full-render.html: Move the behavior to runner.js.
1884         * resources/runner.js:
1885         (.): Add measurePageLoadTime function.
1886
1887 2012-10-22  Adam Barth  <abarth@webkit.org>
1888
1889         [V8] Vastly simplify V8GCController's NodeVisitor
1890         https://bugs.webkit.org/show_bug.cgi?id=99884
1891
1892         Reviewed by Kentaro Hara.
1893
1894         Adds some performance tests for the garbage collector.
1895
1896         * Bindings/gc-forest.html: Added.
1897         * Bindings/gc-mini-tree.html: Added.
1898         * Bindings/gc-tree.html: Added.
1899
1900 2012-10-17  Ryosuke Niwa  <rniwa@webkit.org>
1901
1902         Bump up the number of iterations of html5-full-render to 5
1903         https://bugs.webkit.org/show_bug.cgi?id=99657
1904
1905         Reviewed by Andreas Kling.
1906
1907         Now that html5-full-render.html runs in less than 15 seconds after r131553,
1908         we can afford to get 5 instead of 2 samples.
1909
1910         * Parser/html5-full-render.html:
1911
1912 2012-10-17  Ryosuke Niwa  <rniwa@webkit.org>
1913
1914         Rename PerfTestRunner.runPerSecond to PerfTestRunner.measureRunsPerSecond for consistency
1915         https://bugs.webkit.org/show_bug.cgi?id=99642
1916
1917         Reviewed by Dirk Pranke.
1918
1919         Renamed the method.
1920
1921         * Bindings/append-child.html:
1922         * Bindings/create-element.html:
1923         * Bindings/event-target-wrapper.html:
1924         * Bindings/first-child.html:
1925         * Bindings/get-attribute.html:
1926         * Bindings/get-element-by-id.html:
1927         * Bindings/get-elements-by-tag-name.html:
1928         * Bindings/id-getter.html:
1929         * Bindings/id-setter.html:
1930         * Bindings/insert-before.html:
1931         * Bindings/node-list-access.html:
1932         * Bindings/scroll-top.html:
1933         * Bindings/set-attribute.html:
1934         * Bindings/typed-array-construct-from-array.html:
1935         * Bindings/typed-array-construct-from-same-type.html:
1936         * Bindings/typed-array-construct-from-typed.html:
1937         * Bindings/typed-array-set-from-typed.html:
1938         * Bindings/undefined-first-child.html:
1939         * Bindings/undefined-get-element-by-id.html:
1940         * Bindings/undefined-id-getter.html:
1941         * CSS/CSSPropertySetterGetter.html:
1942         * CSS/CSSPropertyUpdateValue.html:
1943         * CSS/PseudoClassSelectors.html:
1944         * DOM/textarea-dom.html:
1945         * DOM/textarea-edit.html:
1946         * Interactive/resources/window-resize.js:
1947         * Layout/flexbox-column-nowrap.html:
1948         * Layout/flexbox-column-wrap.html:
1949         * Layout/flexbox-row-nowrap.html:
1950         * Layout/flexbox-row-wrap.html:
1951         * Layout/line-layout.html:
1952         * Parser/css-parser-yui.html:
1953         * Parser/innerHTML-setter.html:
1954         * Parser/query-selector-deep.html:
1955         * Parser/query-selector-first.html:
1956         * Parser/query-selector-last.html:
1957         * Parser/simple-url.html:
1958         * Parser/textarea-parsing.html:
1959         * Parser/tiny-innerHTML.html:
1960         * Parser/url-parser.html:
1961         * Parser/xml-parser.html:
1962         * SVG/SvgNestedUse.html:
1963         * resources/runner.js:
1964
1965 2012-10-17  Ryosuke Niwa  <rniwa@webkit.org>
1966
1967         Performance test should support asynchronous tests
1968         https://bugs.webkit.org/show_bug.cgi?id=95668
1969
1970         Reviewed by Dirk Pranke.
1971
1972         Added PerfTestRunner.prepareToMeasureValuesAsync and PerfTestRunner.measureValueAsync,
1973         and deployed it in Animation/balls.
1974
1975         * Animation/balls.html:
1976         * resources/runner.js:
1977
1978 2012-10-16  Elliott Sprehn  <esprehn@chromium.org>
1979
1980         html5-full-render.html test uses substring but meant substr
1981         https://bugs.webkit.org/show_bug.cgi?id=99495
1982
1983         Reviewed by Adam Barth.
1984
1985         This test intended to chunk up the HTML5 spec into chunks of 500k chars, but used
1986         substring(to,from) instead of substr(from,length) so it actually loaded 5x more
1987         content than was in the HTML5 spec.
1988
1989         * Parser/html5-full-render.html:
1990
1991 2012-10-11  James Simonsen  <simonjam@chromium.org>
1992
1993         unprefix window.performance.webkitNow()
1994         https://bugs.webkit.org/show_bug.cgi?id=88278
1995
1996         Reviewed by Tony Gentilcore.
1997
1998         * resources/runner.js: Bind to proper object to avoid invalid invocation errors.
1999
2000 2012-10-08  Ryosuke Niwa  <rniwa@webkit.org>
2001
2002         Skip Layout/subtree-detaching.html temporarily as it's very noisy and
2003         takes 112s to run on Chromium Mac. This is tracked by the bug 98708.
2004
2005         * Skipped:
2006
2007 2012-10-08  Ryosuke Niwa  <rniwa@webkit.org>
2008
2009         Perf. test results page is broken when runs have different sets of tests
2010         https://bugs.webkit.org/show_bug.cgi?id=98691
2011
2012         Reviewed by Daniel Bates.
2013
2014         Add "missing" columns for tests that are missing some runs.
2015
2016         Also fix regressions from the previous patch:
2017         - Make reference run switch work again
2018         - Load jquery plugins from the remote server when the jquery is loaded from the remote server.
2019
2020         * resources/results-template.html:
2021
2022 2012-10-08  Ryosuke Niwa  <rniwa@webkit.org>
2023
2024         Perf test pesults page takes forever to load on a machine with a slow Internet connection
2025         https://bugs.webkit.org/show_bug.cgi?id=98561
2026
2027         Reviewed by Ojan Vafai.
2028
2029         Try loading jquery both locally and remotely, and use the same method to load the remaining
2030         jquery plugins when either one succeeds.
2031
2032         * resources/results-template.html:
2033
2034 2012-10-04  Hayato Ito  <hayato@chromium.org>
2035
2036         [Refactoring] Introduce a traversal strategy in SelectorChecker
2037         https://bugs.webkit.org/show_bug.cgi?id=97298
2038
2039         Reviewed by Antti Koivisto.
2040
2041         Introduces querySelector() performance tests to check SelectorChecker performance.
2042
2043         * CSS/PseudoClassSelectors.html: Added.
2044
2045 2012-10-03  Philip Rogers  <pdr@google.com>
2046
2047         Force GC between PageLoad tests.
2048         https://bugs.webkit.org/show_bug.cgi?id=98203
2049
2050         Reviewed by Ryosuke Niwa.
2051
2052         Previously, our PageLoad PerfTests had multi-modal distributions,
2053         typically with a small cluster at 1-2x the median. This turned out
2054         to be caused by not garbage collecting between tests!
2055
2056         This patch adds a new file, force-gc.html, and loads this file between
2057         PageLoad tests to force a GC. I manually verified that this cleans up
2058         our perf test outliers.
2059
2060         * resources/force-gc.html: Added.
2061
2062 2012-10-03  Julien Chaffraix  <jchaffraix@webkit.org>
2063
2064         Add a performance test for subtree detaching
2065         https://bugs.webkit.org/show_bug.cgi?id=98281
2066
2067         Reviewed by Eric Seidel.
2068
2069         The new test tries to stress detaching on a heavy subtree (2 levels deep but with 1,000 nodes per level).
2070         We set display: none on the root and measure the time it takes to update the tree. Note that we will also
2071         measure the time taken by recalcStyle and relayout but I don't think we can avoid that.
2072
2073         * Layout/subtree-detaching.html: Added.
2074
2075 2012-10-02  Ryosuke Niwa  <rniwa@webkit.org>
2076
2077         Build fix after r130135. Dromaeo tests only report single memory value,
2078         and computeStatistics should report variance as 0 in such cases.
2079
2080         * resources/runner.js:
2081
2082 2012-10-02  Philip Rogers  <pdr@google.com>
2083
2084         Fix PerfTest standard deviation calculation.
2085         https://bugs.webkit.org/show_bug.cgi?id=98115
2086
2087         Reviewed by Ryosuke Niwa.
2088
2089         Previously our standard deviation calculation was incorrect. This patch
2090         updates perftest.py's algorithm to calculate the sample standard deviation
2091         (with Bessel's correction) using Knuth's online algorithm:
2092         http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Online_algorithm
2093         An existing test has been modified to prove our new results.
2094
2095         This patch also updates runner.js to use Bessel's correction in
2096         its sample standard deviation calculation, which is more accurate
2097         for small sample sizes.
2098
2099         Additionally, runner.js has been modified to not calculate
2100         the 'sum' statistic, which was not very useful.
2101
2102         * resources/runner.js:
2103         (PerfTestRunner.computeStatistics):
2104
2105 2012-10-01  Ryosuke Niwa  <rniwa@webkit.org>
2106
2107         PerfTestRunner: Move all functions into the closure and always use double quotation for string literals
2108         https://bugs.webkit.org/show_bug.cgi?id=98093
2109
2110         Reviewed by Ojan Vafai.
2111
2112         Move all methods of PerfTestRunner into the closure that defines it.
2113         Also always use double quotations for string literals for consistency.
2114
2115         * resources/runner.js:
2116
2117 2012-10-01  Ryosuke Niwa  <rniwa@webkit.org>
2118
2119         Encapsulate private properties in PerfTestRunner better
2120         https://bugs.webkit.org/show_bug.cgi?id=97833
2121
2122         Reviewed by Ojan Vafai.
2123
2124         This patch moves "private" methods and properties of PerfTestRunner into a closure so that they're
2125         inaccssible from outside. Also catch exceptions from test.run, test.done, and other runner code
2126         to ensure we call notifyDone() even if we broke tests. Otherwise DRT will timeout and we end up
2127         waiting for 10 minutes per each broken test on bots.
2128
2129         * resources/runner.js:
2130         (PerfTestRunner.gc):
2131         (logInDocument): Extracted from PerfTestRunner.log.
2132         (PerfTestRunner.log): Moved.
2133         (logFatalError): Added.
2134         (start): Renamed from PerfTestRunner._start.
2135         (scheduleNextRun): Extracted from PerfTestRunner._runLoop. Also catch any exceptions that happen
2136         in the runner and ignoreWarmUpAndLog so that we don't end up timing out. We call logFatalError in
2137         such cases, which in turn ensures notifyDone() is called.
2138         (ignoreWarmUpAndLog): Renamed from PerfTestRunner._ignoreWarmUpAndLog.
2139         (finish): Extracted from PerfTestRunner._runLoop.
2140         (PerfTestRunner.measureTime): Moved. The initialization of runCount is moved into start().
2141         (measureTimeOnce): Renamed from PerfTestRunner._measureTimeOnce.
2142         (PerfTestRunner.runPerSecond): Moved. Ditto about runCount.
2143         (measureRunsPerSecondOnce): Renamed from PerfTestRunner._measureRunsPerSecondOnce.
2144         (callRunAndMeasureTime): Renamed from PerfTestRunner._perSecondRunnerIterator.
2145
2146 2012-10-01  Florin Malita  <fmalita@chromium.org>
2147
2148         Add a performance test for nested <use> elements
2149         https://bugs.webkit.org/show_bug.cgi?id=98047
2150
2151         Reviewed by Ryosuke Niwa.
2152
2153         Currently at ~5 runs per second on my workstation, but should go up significantly (100+)
2154         after landing a fix for https://bugs.webkit.org/show_bug.cgi?id=97905.
2155
2156         * SVG/SvgNestedUse.html: Added.
2157
2158 2012-09-28  Ryosuke Niwa  <rniwa@webkit.org>
2159
2160         Add back test.runCount for runPerSecond as it's used by tests in fast/harness/perftests.
2161
2162         * resources/runner.js:
2163         (PerfTestRunner.runPerSecond):
2164
2165 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
2166
2167         Build fix after r129824.
2168
2169         * DOM/resources/dom-perf.js:
2170         (runBenchmarkSuite):
2171
2172 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
2173
2174         Remove unused features and reduce code duplications in PerfTestRunner
2175         https://bugs.webkit.org/show_bug.cgi?id=97852
2176
2177         Reviewed by Kentaro Hara.
2178
2179         Made the following refactoring changes:
2180         - Remove PerfTestRunner.info since it's never used.
2181         - Moved the js heap/malloc related functions up to where they belong.
2182         - Moved the initialization of _callsPerIteration, _test, and -description into _start,
2183           and stopped initializing _runFunction and _doneFunction since both test times now
2184           use _test object.
2185         - Made _measureTimeOnce and _measureRunsPerSecondOnce return the measured value
2186           instead of calling ignoreWarmUpAndLog and _runLoop to share the code; they're now
2187           called in _measureRunsPerSecondOnce.
2188
2189         * resources/runner.js:
2190         (PerfTestRunner.storeHeapResults): Moved.
2191         (PerfTestRunner.getUsedMallocHeap): Moved.
2192         (PerfTestRunner.getUsedJSHeap): Moved.
2193         (PerfTestRunner.getAndPrintMemoryStatistics): Moved.
2194         (PerfTestRunner._scheduleNextMeasurementOrNotifyDone): Renamed from _runLoop. Calls
2195         ignoreWarmUpAndLog and schedules the next call.
2196         (PerfTestRunner._measureTimeOnce): Renamed from _runner.
2197         (PerfTestRunner._start): Renamed from initAndStartLoop.
2198         (PerfTestRunner.measureTime):
2199         (PerfTestRunner.runPerSecond):
2200         (PerfTestRunner._measureRunsPerSecondOnce): Renamed from _measureRunsPerSecondOnce.
2201         (PerfTestRunner._perSecondRunnerIterator):
2202
2203 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
2204
2205         PerfTestRunner.run should take an object
2206         https://bugs.webkit.org/show_bug.cgi?id=97743
2207
2208         Reviewed by Kentaro Hara.
2209
2210         Rename PerfTestRunner.run to PerfTestRunner.measureTime and make it take an object instead of
2211         5 arguments. Also get rid of PerfTestRunner._loopsPerRun since it's no longer used (it's always 1).
2212
2213         * CSS/StyleSheetInsert.html:
2214         * DOM/resources/dom-perf.js:
2215         * Layout/floats_100_100.html:
2216         * Layout/floats_100_100_nested.html:
2217         * Layout/floats_20_100.html:
2218         * Layout/floats_20_100_nested.html:
2219         * Layout/floats_2_100.html:
2220         * Layout/floats_2_100_nested.html:
2221         * Layout/floats_50_100.html:
2222         * Layout/floats_50_100_nested.html:
2223         * Parser/html-parser.html:
2224         * Parser/html5-full-render.html:
2225         * SVG/SvgCubics.html:
2226         * SVG/SvgHitTesting.html:
2227         * resources/runner.js:
2228
2229 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
2230
2231         PerformanceTests/CSS/StyleSheetInsert.html has a time-dependent non-Gaussian distribution
2232         https://bugs.webkit.org/show_bug.cgi?id=97741
2233
2234         Reviewed by Antti Koivisto.
2235
2236         Reset the content in the iframe in each run so that the runtime from each run follows a normal distribution.
2237         We can cleanup this code once my patch to replace the argument list of run by an object is landed.
2238
2239         * CSS/StyleSheetInsert.html:
2240
2241 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
2242
2243         Unreviewed. Minor appearance tweaks after r129813.
2244
2245         * resources/results-template.html:
2246
2247 2012-09-27  Ryosuke Niwa  <rniwa@webkit.org>
2248
2249         Results page should warn about time-dependent distributions
2250         https://bugs.webkit.org/show_bug.cgi?id=97818
2251
2252         Reviewed by Ojan Vafai.
2253
2254         Add a simple linear regression analysis on results page to detect time-dependent distributions.
2255         We add a warning sign (inline SVG) when the regression gave us a slope of at least 0.01 and a R^2 of at least 0.6.
2256         Also added time-series graphs per run under the bar graphs so that humans can manually inspect them.
2257
2258         A nice follow up would be to add some normality test (e.g. Shapiro-Wilk) to detect bi-modal distributions
2259         but we probably need to restructure the code to run it asynchronously since normality tests are slow.
2260
2261         * resources/results-template.html:
2262
2263 2012-09-26  Ryosuke Niwa  <rniwa@webkit.org>
2264
2265         Use runPerSecond in PerformanceTests/Bindings/typed-array* and event-target-wrapper
2266         https://bugs.webkit.org/show_bug.cgi?id=97625
2267
2268         Reviewed by Eric Seidel.
2269
2270         Use PerfTestRunner.runPerSecond instead of PerfTestRunner.run. Also reduce the fixed number of
2271         elements and iterations in these tests by a factor of 10 since runPerSecond can dynamically
2272         adjust the number of function calls.
2273
2274         * Bindings/event-target-wrapper.html:
2275         * Bindings/typed-array-construct-from-array.html:
2276         * Bindings/typed-array-construct-from-same-type.html:
2277         * Bindings/typed-array-construct-from-typed.html:
2278         * Bindings/typed-array-set-from-typed.html:
2279
2280 2012-09-25  Antti Koivisto  <antti@apple.com>
2281
2282         Optimize stylesheet insertions
2283         https://bugs.webkit.org/show_bug.cgi?id=97627
2284
2285         Reviewed by Andreas Kling.
2286
2287         Add synthetic performance test for avoiding style recalcs on stylesheet inserts.
2288
2289         * CSS/StyleSheetInsert.html: Added.
2290
2291 2012-09-25  Ryosuke Niwa  <rniwa@webkit.org>
2292
2293         Skip Dromaeo/jslib-modify-jquery.html per bug 95376.
2294         It runs out of memory on Chromium port, and it takes unreasonably long time (~5 minutes)
2295         to run on other ports.
2296
2297         * Skipped:
2298
2299 2012-09-20  Ryosuke Niwa  <rniwa@webkit.org>
2300
2301         Results page should show indivisual value
2302         https://bugs.webkit.org/show_bug.cgi?id=97178
2303
2304         Reviewed by Tony Chang.
2305
2306         Show indivisual values instead of statistics (min, max, stdev).
2307
2308         * resources/results-template.html:
2309
2310 2012-09-20  Ryosuke Niwa  <rniwa@webkit.org>
2311
2312         run-perf-tests should record individual value instead of statistics
2313         https://bugs.webkit.org/show_bug.cgi?id=97155
2314
2315         Reviewed by Hajime Morita.
2316
2317         Report the list of values as "values" so that run-perf-tests can parse them.
2318
2319         * resources/runner.js:
2320         (PerfTestRunner.computeStatistics):
2321         (PerfTestRunner.printStatistics):
2322
2323 2012-09-20  Sheriff Bot  <webkit.review.bot@gmail.com>
2324
2325         Unreviewed, rolling out r129091.
2326         http://trac.webkit.org/changeset/129091
2327         https://bugs.webkit.org/show_bug.cgi?id=97205
2328
2329         It broke perf tests everywhere (Requested by Ossy on #webkit).
2330
2331         * resources/runner.js:
2332         (PerfTestRunner.computeStatistics):
2333         (PerfTestRunner.printStatistics):
2334
2335 2012-09-19  Ryosuke Niwa  <rniwa@webkit.org>
2336
2337         run-perf-tests should record indivisual value instead of statistics
2338         https://bugs.webkit.org/show_bug.cgi?id=97155
2339
2340         Reviewed by Hajime Morita.
2341
2342         Report the list of values as "values" so that run-perf-tests can parse them.
2343
2344         * resources/runner.js:
2345         (PerfTestRunner.computeStatistics):
2346         (PerfTestRunner.printStatistics):
2347
2348 2012-09-17  Ryosuke Niwa  <rniwa@webkit.org>
2349
2350         Perf test results is incomprehensive
2351         https://bugs.webkit.org/show_bug.cgi?id=94668
2352
2353         Reviewed by Eric Seidel.
2354
2355         Overhauled the results page to have a tabular view. Clicking on each row shows a flot graph we used to have.
2356         For each run and test, we show the mean value with the standard deviation along with the percent difference
2357         against the reference run chosen by the user if the difference is statistically significant; it also indicates
2358         whether the new value is progression or not.
2359
2360         The unit of each test is adjusted automatically using SI prefixes (Kilo, Mega, Milli), and rows can be sorted
2361         by each column. Time and memory results are separated into two tabs.
2362
2363         * resources/jquery.tablesorter.min.js: Added.
2364         * resources/results-template.html:
2365
2366 2012-09-14  Ryosuke Niwa  <rniwa@webkit.org>
2367
2368         Use performance.webkitNow in PerfTestRunner
2369         https://bugs.webkit.org/show_bug.cgi?id=92826
2370
2371         Reviewed by Eric Seidel.
2372
2373         Use performance.webkitNow with Date.now as a fallback for more accurate time measurements.
2374
2375         * resources/runner.js:
2376         (PerfTestRunner._runner):
2377         (PerfTestRunner._perSecondRunnerIterator):
2378
2379 2012-09-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2380
2381         Unreviewed, rolling out r128562.
2382         http://trac.webkit.org/changeset/128562
2383         https://bugs.webkit.org/show_bug.cgi?id=96747
2384
2385         It broke perf tests on Qt and Chromium (Requested by Ossy on
2386         #webkit).
2387
2388         * resources/runner.js:
2389         (PerfTestRunner._runner):
2390         (PerfTestRunner._perSecondRunnerIterator):
2391
2392 2012-09-14  Ryosuke Niwa  <rniwa@webkit.org>
2393
2394         Use performance.webkitNow in PerfTestRunner
2395         https://bugs.webkit.org/show_bug.cgi?id=92826
2396
2397         Reviewed by Eric Seidel.
2398
2399         Use performance.webkitNow with Date.now as a fallback for more acurate time measurements.
2400
2401         * resources/runner.js:
2402         (PerfTestRunner._runner):
2403         (PerfTestRunner._perSecondRunnerIterator):
2404
2405 2012-08-23  Ilya Tikhonovsky  <loislo@chromium.org>
2406
2407         WebInspector: unreviewed single line test fix.
2408
2409         The test has to open profiles panel explicitly because it is creating lazily.
2410
2411         * inspector/heap-snapshot-performance-test.js:
2412
2413 2012-08-15  Scott Graham  <scottmg@chromium.org>
2414
2415         Rename window.internals.fastMallocStatistics to mallocStatistics
2416         https://bugs.webkit.org/show_bug.cgi?id=94033
2417
2418         Reviewed by Adam Barth.
2419
2420         * resources/runner.js:
2421         (PerfTestRunner.storeHeapResults):
2422         (PerfTestRunner.getUsedMallocHeap):
2423         (PerfTestRunner.getAndPrintMemoryStatistics):
2424         (PerfTestRunner.initAndStartLoop):
2425
2426 2012-08-10  Ryosuke Niwa  <rniwa@webkit.org>
2427
2428         Unreviewed; fix an insanely silly typo.
2429
2430         * resources/results-template.html:
2431
2432 2012-08-09  Ryosuke Niwa  <rniwa@webkit.org>
2433
2434         Another build fix after r125178.
2435
2436         * resources/runner.js:
2437
2438 2012-08-09  Zoltan Horvath  <zoltan@webkit.org>
2439
2440         Add memory measurement to balls.html and dromaeorunner.js
2441         https://bugs.webkit.org/show_bug.cgi?id=93617
2442
2443         Reviewed by Adam Barth.
2444
2445         Since we added memory measurement support to performance tests we need to modify these tests.
2446
2447         * Animation/balls.html:
2448         * Dromaeo/resources/dromaeorunner.js:
2449
2450 2012-08-09  Zoltan Horvath  <zoltan@webkit.org>
2451
2452         JSHeap and FastMallocStatistics based memory measurement for performance-tests
2453         https://bugs.webkit.org/show_bug.cgi?id=90858
2454
2455         Reviewed Ryosuke Niwa.
2456
2457         Measure the memory usage of the performancetests with the help of the windows.memory.usedJSHeapSize
2458         object and the window.internals.fastMallocStatistics() function call.
2459
2460         * resources/runner.js:
2461         (PerfTestRunner.logStatistics):
2462         (PerfTestRunner.printStatistics):
2463         (PerfTestRunner.storeHeapResults):
2464         (PerfTestRunner.getUsedFastMallocHeap):
2465         (PerfTestRunner.getUsedJSHeap):
2466         (PerfTestRunner.getAndPrintMemoryStatistics):
2467         (PerfTestRunner.ignoreWarmUpAndLog):
2468         (PerfTestRunner.initAndStartLoop):
2469
2470 2012-08-08  Benjamin Poulain  <benjamin@webkit.org>
2471
2472         Calling internals from the performance test runner prevents manual running
2473         https://bugs.webkit.org/show_bug.cgi?id=93527
2474
2475         Reviewed by Ryosuke Niwa.
2476
2477         Since r125065, it is impossible to run the Performance tests manually. The problem is
2478         "internals" is not defined when running outside the test runner, so the whole script
2479         evaluation fails.
2480
2481         * resources/runner.js: Verify is window.internals is available before invoking something on it.
2482
2483 2012-08-08  Zoltan Horvath  <zoltan@webkit.org>
2484
2485         Set access to MemoryInfo enabled for the performance tests
2486         https://bugs.webkit.org/show_bug.cgi?id=92498
2487
2488         Reviewed by Ryosuke Niwa.
2489
2490         We need access to console.memory for the memory measurements.
2491
2492         * resources/runner.js:
2493
2494 2012-08-07  Ryosuke Niwa  <rniwa@webkit.org>
2495
2496         run-perf-tests should support --no-show-results
2497         https://bugs.webkit.org/show_bug.cgi?id=93409
2498
2499         Reviewed by Dirk Pranke.
2500
2501         Add a flot as a separate file and load it as an external resource.
2502
2503         Also include scripts as external resources from both local filesystem and webkit.org
2504         so that it continues to work regardless of where you put it.
2505
2506         It breaks when someone else receives the file and save it somewhere and doesn't have
2507         a network connection but that seems like a scenario we don't care that much.
2508
2509         * resources/jquery.flot.min.js: Added.
2510         * resources/results-template.html:
2511
2512 2012-08-06  Ryosuke Niwa  <rniwa@webkit.org>
2513
2514         run-webkit-tests should have ability to add description to its JSON output
2515         https://bugs.webkit.org/show_bug.cgi?id=93296
2516
2517         Reviewed by Dirk Pranke.
2518
2519         Parse description and show it with the WebKit revision on the results page. Also use bar graphs
2520         instead of line graphs since we're not depicting the time series here per arv's suggestion.
2521         Finally, add the ability to adjust y-axis between the adjusted value and 0 (plot even doesn't adjust
2522         y-axis automatically now) by a mouse click.
2523
2524         * resources/results-template.html:
2525
2526 2012-08-04  Ryosuke Niwa  <rniwa@webkit.org>
2527
2528         Use testRunner instead of layoutTestController in performance tests
2529         https://bugs.webkit.org/show_bug.cgi?id=93184
2530
2531         Reviewed by Adam Barth.
2532
2533         * Animation/balls.html:
2534         * Dromaeo/resources/dromaeorunner.js:
2535         * inspector/console-300-lines.html:
2536         * inspector/inspector-startup-time.html:
2537         * inspector/network-append-30-requests.html.broken:
2538         * inspector/show-panel.html.broken:
2539         * resources/runner.js:
2540         (PerfTestRunner.logInfo):
2541         (PerfTestRunner.initAndStartLoop):
2542
2543 2012-08-02  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2544
2545         TypedArray set method is slow when called with another typed array
2546         https://bugs.webkit.org/show_bug.cgi?id=92556
2547
2548         Reviewed by Kenneth Russell.
2549
2550         * Bindings/typed-array-set-from-typed.html: Added.
2551
2552 2012-07-28  Ryosuke Niwa  <rniwa@webkit.org>
2553
2554         run-perf-tests should generate a results page
2555         https://bugs.webkit.org/show_bug.cgi?id=92575
2556
2557         Reviewed by Eric Seidel.
2558
2559         Add a results page template. This page includes flot and flot.fillbetween.
2560         jQuery and the json that contains test results are injected by run-perf-tests.
2561
2562         * resources/results-template.html: Added.
2563
2564 2012-07-27  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2565
2566         use createUninitialized when creating TypedArray from another array
2567         https://bugs.webkit.org/show_bug.cgi?id=92518
2568
2569         Reviewed by Kenneth Russell.
2570
2571         * Bindings/typed-array-construct-from-array.html: Added.
2572
2573 2012-07-27  Ryosuke Niwa  <rniwa@webkit.org>
2574
2575         Add more Russian replay performance tests
2576         https://bugs.webkit.org/show_bug.cgi?id=92462
2577
2578         Reviewed by Tony Chang.
2579
2580         Add more Russian sites as suggested by loislo.
2581
2582         * Replay/Russian/lenta.ru.replay: Added.
2583         * Replay/Russian/www.ixbt.com.replay: Added.
2584         * Replay/Russian/www.kp.ru.replay: Added.
2585         * Replay/Russian/www.liveinternet.ru.replay: Added.
2586         * Replay/Russian/www.pravda.ru.replay: Added.
2587
2588 2012-07-26  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2589
2590         constructing TypedArray from another TypedArray is slow
2591         https://bugs.webkit.org/show_bug.cgi?id=90838
2592
2593         Reviewed by Kenneth Russell.
2594
2595         * Bindings/typed-array-construct-from-same-type.html: Added.
2596         * Bindings/typed-array-construct-from-typed.html: Added.
2597
2598 2012-07-25  Ryosuke Niwa  <rniwa@webkit.org>
2599
2600         Import more replay performance tests from Mozilla's Tp5 test suite
2601         https://bugs.webkit.org/show_bug.cgi?id=92229
2602
2603         Reviewed by Andreas Kling.
2604
2605         Add more replay tests based on Mozilla's Tp5 test suite [1]. Unfortunately,
2606         we cannot import all URLs because some of them are not archived on archive.org
2607         and others do not replay well on web-page-replay. Nonethless, we're still adding
2608         60+ URLs in this patch.
2609
2610         [1] http://people.mozilla.org/~jmaher/tp5.manifest
2611
2612         * Replay/Chinese: Added.
2613         * Replay/Chinese/chinaz.com.replay: Added.
2614         * Replay/Chinese/www.163.com.replay: Added.
2615         * Replay/Chinese/www.alipay.com.replay: Added.
2616         * Replay/Chinese/www.baidu.com.replay: Added.
2617         * Replay/Chinese/www.csdn.net.replay: Added.
2618         * Replay/Chinese/www.douban.com.replay: Added.
2619         * Replay/Chinese/www.hao123.com.replay: Added.
2620         * Replay/Chinese/www.xinhuanet.com.replay: Added.
2621         * Replay/Chinese/www.xunlei.com.replay: Added.
2622         * Replay/Chinese/www.youku.com.replay: Added.
2623         * Replay/English: Added.
2624         * Replay/English/beatonna.livejournal.com.replay: Added.
2625         * Replay/English/cakewrecks.blogspot.com.replay: Added.
2626         * Replay/English/chemistry.about.com.replay: Added.
2627         * Replay/English/digg.com.replay: Added.
2628         * Replay/English/en.wikipedia.org-rorschach_test.replay: Added.
2629         * Replay/English/icanhascheezburger.com.replay: Added.
2630         * Replay/English/imgur.com-gallery.replay: Added.
2631         * Replay/English/online.wsj.com.replay: Added.
2632         * Replay/English/stockoverflow.com-best-comment.replay: Added.
2633         * Replay/English/www.alibaba.com.replay: Added.
2634         * Replay/English/www.amazon.com-kindle.replay: Added.
2635         * Replay/English/www.apple.com.replay: Added.
2636         * Replay/English/www.cnet.com.replay: Added.
2637         * Replay/English/www.dailymotion.com.replay: Added.
2638         * Replay/English/www.ehow.com-prevent-fire.replay: Added.
2639         * Replay/English/www.filestube.com-amy-adams.replay: Added.
2640         * Replay/English/www.foxnews.replay: Added.
2641         * Replay/English/www.huffingtonpost.com.replay: Added.
2642         * Replay/English/www.imdb.com-twilight.replay: Added.
2643         * Replay/English/www.mozilla.com-all-order.replay: Added.
2644         * Replay/English/www.php.net.replay: Added.
2645         * Replay/English/www.reddit.com.replay: Added.
2646         * Replay/English/www.telegraph.co.uk.replay: Added.
2647         * Replay/English/www.w3.org-htmlcss.replay: Added.
2648         * Replay/English/www.w3schools.com-html.replay: Added.
2649         * Replay/English/www.youtube.com-music.replay: Added.
2650         * Replay/French: Added.
2651         * Replay/French/www.orange.fr.replay: Added.
2652         * Replay/German: Added.
2653         * Replay/Italian: Added.
2654         * Replay/Italian/www.repubblica.it.replay: Added.
2655         * Replay/Japanese/entameblog.seesaa.net.replay: Added.
2656         * Replay/Japanese/www.hatena.ne.jp.replay: Added.
2657         * Replay/Japanese/www.nicovideo.jp.replay: Added.
2658         * Replay/Korean: Added.
2659         * Replay/Korean/www.naver.com.replay: Added.
2660         * Replay/Persian: Added.
2661         * Replay/Persian/blogfa.com.replay: Added.
2662         * Replay/Polish: Added.
2663         * Replay/Polish/www.wp.pl.replay: Added.
2664         * Replay/Portuguese: Added.
2665         * Replay/Portuguese/www.uol.com.br.replay: Added.
2666         * Replay/Russian: Added.
2667         * Replay/Russian/vkontakte.ru-help.replay: Added.
2668         * Replay/Russian/www.rambler.ru.replay: Added.
2669         * Replay/Russian/www.ucoz.ru.replay: Added.
2670         * Replay/Russian/www.yandex.ru.replay: Added.
2671         * Replay/Spanish: Added.
2672         * Replay/Spanish/www.taringa.net.replay: Added.
2673
2674 2012-07-24  Ryosuke Niwa  <rniwa@webkit.org>
2675
2676         Add some Japanese and Swedish websites to replay tests
2677         https://bugs.webkit.org/show_bug.cgi?id=92076
2678
2679         Reviewed by Andreas Kling.
2680
2681         Added new replay tests as follows.
2682
2683         * Replay/Japanese: Added.
2684         * Replay/Japanese/2ch.net-newsplus.replay: Added.
2685         * Replay/Japanese/ja.wikipedia.org.replay: Added.
2686         * Replay/Japanese/www.livedoor.com.replay: Added.
2687         * Replay/Japanese/www.rakuten.co.jp.replay: Added.
2688         * Replay/Japanese/www.yahoo.co.jp.replay: Added.
2689         * Replay/Swedish: Added.
2690         * Replay/Swedish/www.flashback.se.replay: Added.
2691         * Replay/Swedish/www.tradera.com.replay: Added.
2692         * Replay/www.techcrunch.com.replay: Added.
2693
2694 2012-07-18  MORITA Hajime  <morrita@google.com>
2695
2696         Add window resize benchmark
2697         https://bugs.webkit.org/show_bug.cgi?id=91070
2698
2699         Reviewed by Ryosuke Niwa.
2700
2701         Added window-resize.html which exercise html5.html. This test
2702         resizes the window and forces re-layout repeatedly.
2703
2704         * Interactive/resources/window-resize.js: Added.
2705         * Interactive/window-resize.html: Added.
2706         * Parser/resources/html5.html: Modified to inject driver scripts.
2707
2708 2012-07-11  Philip Rogers  <pdr@google.com>
2709
2710         Add a performance test for hit testing in SVG
2711         https://bugs.webkit.org/show_bug.cgi?id=90811
2712
2713         Reviewed by Ryosuke Niwa.
2714
2715         The shape rendering code is changing a lot and I'd like a performance test to
2716         make sure we don't regress, and to track our improvements.
2717
2718         Performance results in my Linux desktop:
2719             RESULT SVG: SvgHitTesting= 105.0 ms
2720             median= 103.5 ms, stdev= 4.60434577329 ms, min= 101.0 ms, max= 116.0 ms
2721
2722             RESULT SVG: SvgHitTesting= 97.8 ms
2723             median= 96.5 ms, stdev= 2.67581763205 ms, min= 95.0 ms, max= 102.0 ms
2724
2725             RESULT SVG: SvgHitTesting= 104.3 ms
2726             median= 104.0 ms, stdev= 1.41774468788 ms, min= 102.0 ms, max= 107.0 ms
2727
2728             RESULT SVG: SvgHitTesting= 103.6 ms
2729             median= 103.5 ms, stdev= 1.2 ms, min= 102.0 ms, max= 106.0 ms
2730
2731         * SVG/SvgHitTesting.html: Added.
2732
2733 2012-07-03  Jan Keromnes  <janx@linux.com>
2734
2735         Web Inspector: WebInspector.TextViewer should be renamed WebInspector.TextEditor
2736         https://bugs.webkit.org/show_bug.cgi?id=89939
2737
2738         Reviewed by Vsevolod Vlasov.
2739
2740         * inspector/first-open-scripts.html.broken:
2741
2742 2012-06-22  Philip Rogers  <pdr@google.com>
2743
2744         Make SvgCubics performance test more consistent
2745         https://bugs.webkit.org/show_bug.cgi?id=89778
2746
2747         Reviewed by Ryosuke Niwa.
2748
2749         Previously this test ran twice for each iteration, but this led to inconsistent repaints.
2750         This change updates the test to only run once per iteration, and adds even more cubics
2751         so that the test runs consistently in the 80ms range on my Linux desktop.
2752
2753         Performance results on my desktop:
2754             RESULT SVG: SvgCubics= 80.5 ms
2755             median= 82.0 ms, stdev= 3.04138126515 ms, min= 75.0 ms, max= 85.0 ms
2756
2757             RESULT SVG: SvgCubics= 80.1 ms
2758             median= 81.0 ms, stdev= 4.27668095607 ms, min= 74.0 ms, max= 88.0 ms
2759
2760             RESULT SVG: SvgCubics= 81.45 ms
2761             median= 83.0 ms, stdev= 4.01839520207 ms, min= 75.0 ms, max= 89.0 ms
2762
2763             RESULT SVG: SvgCubics= 78.9 ms
2764             median= 80.0 ms, stdev= 4.75289385533 ms, min= 72.0 ms, max= 87.0 ms
2765
2766         * SVG/SvgCubics.html:
2767
2768 2012-06-22  Ilya Tikhonovsky  <loislo@chromium.org>
2769
2770         Web Inspector: partially instrument DOM Tree native memory.
2771         https://bugs.webkit.org/show_bug.cgi?id=89568
2772
2773         This patch adds MemoryInstrumentation class that counts all visited
2774         objects and calls reportMemoryUsage.
2775
2776         Reviewed by Yury Semikhatsky.
2777
2778         * inspector/native-memory-snapshot.html:
2779
2780 2012-06-21  Kentaro Hara  <haraken@chromium.org>
2781
2782         Add a perf-test for innerHTML setter for a large DOM tree
2783         https://bugs.webkit.org/show_bug.cgi?id=89723
2784
2785         Reviewed by Ryosuke Niwa.
2786
2787         We want a benchmark for innerHTML setter for the following reason:
2788
2789         - innerHTML setter is widely used in the real world.
2790         - I am planning to optimize innerHTML setter in the near future.
2791         - I want to use the innerHTML setter benchmark for the patch of bug 88834.
2792
2793         Performance results in my Linux desktop:
2794
2795         RESULT Parser: innerHTML-setter= 289.782649995 runs/s
2796         median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s
2797
2798         RESULT Parser: innerHTML-setter= 289.020706132 runs/s
2799         median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s
2800
2801         RESULT Parser: innerHTML-setter= 288.912051701 runs/s
2802         median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s
2803
2804         RESULT Parser: innerHTML-setter= 288.644186666 runs/s
2805         median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s
2806
2807         RESULT Parser: innerHTML-setter= 288.698714577 runs/s
2808         median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s
2809
2810         * Parser/innerHTML-setter.html: Added.
2811
2812 2012-06-20  Philip Rogers  <pdr@google.com>
2813
2814         Add a performance test for paths in SVG
2815         https://bugs.webkit.org/show_bug.cgi?id=89547
2816
2817         Reviewed by Ryosuke Niwa.
2818
2819         This change adds the first performance test for SVG paths.
2820         In the test we modify complex cubic paths in several ways, testing:
2821         transformations, clipping, d attribute changes, stroke properties,
2822         text on a path, and opacity.
2823
2824         Sample test results on my Linux desktop:
2825             RESULT SVG: SvgCubics= 68.85 ms
2826             median= 69.5 ms, stdev= 4.70398767005 ms, min= 56.0 ms, max= 75.0 ms
2827
2828             RESULT SVG: SvgCubics= 68.4 ms
2829             median= 69.0 ms, stdev= 3.51283361405 ms, min= 59.0 ms, max= 74.0 ms
2830
2831             RESULT SVG: SvgCubics= 66.95 ms
2832             median= 67.0 ms, stdev= 3.4420197559 ms, min= 59.0 ms, max= 74.0 ms
2833
2834             RESULT SVG: SvgCubics= 70.2 ms
2835             median= 71.5 ms, stdev= 3.23419232576 ms, min= 63.0 ms, max= 74.0 ms
2836
2837         * SVG: Added.
2838         * SVG/SvgCubics.html: Added.
2839
2840 2012-06-20  Tom Zakrajsek  <tomz@codeaurora.org>
2841
2842         Import themaninblue.com/experiment/AnimationBenchmark/ as performance tests
2843         https://bugs.webkit.org/show_bug.cgi?id=78789
2844
2845         Reviewed by Ryosuke Niwa.
2846
2847         Added PerfTestRunner fixture around it.
2848
2849         * Animation/balls.html: Added.
2850
2851 2012-06-18  Ilya Tikhonovsky  <loislo@chromium.org>
2852
2853         Web Inspector: native memory snapshot performance and coverage test implementation.
2854         https://bugs.webkit.org/show_bug.cgi?id=89363
2855
2856         We have to track the performance of MemoryAgent.getProcessMemoryDistribution.
2857         Also this test will work as a burn down chart for Unknown memory metric.
2858
2859         Reviewed by Pavel Feldman.
2860
2861         * inspector/native-memory-snapshot.html: Added.
2862         * inspector/performance-test.js:
2863         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer):
2864         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.reportSize):
2865         (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
2866         (initialize_TimeTracker.InspectorTest.runPerformanceTest):
2867
2868 2012-06-05  Alexei Filippov  <alexeif@chromium.org>
2869
2870         Web Inspector: serialize edge counts instead of indexes in heap snapshot
2871         https://bugs.webkit.org/show_bug.cgi?id=88324
2872
2873         The serialized node structure currently holds an index
2874         of its first containment edge in the edges array.
2875         The index can be quite big (up to 7 digits for large snapshots).
2876         The patch changes the serialization format to pass
2877         node containment edge count instead. For most nodes the count
2878         is just a single digit number.
2879         This reduces serialized snapshot size and therefore its transfer time.
2880
2881         Reviewed by Yury Semikhatsky.
2882
2883         * inspector/heap-snapshot-performance-test.js:
2884
2885 2012-06-04  Alexei Filippov  <alexeif@chromium.org>
2886
2887         Web Inspector: speed up _calculateRetainedSizes function
2888         https://bugs.webkit.org/show_bug.cgi?id=87863
2889
2890         Reviewed by Yury Semikhatsky.
2891
2892         * inspector/heap-snapshot-advanced.html: Added.
2893         * inspector/heap-snapshot-performance-test.js: Copied from PerformanceTests/inspector/heap-snapshot.html.
2894         (test.performanceTest.step0):
2895         (test.performanceTest.step1):
2896         (test.performanceTest.step2):
2897         (test.performanceTest.cleanup):
2898         (test.performanceTest.done):
2899         (test.performanceTest):
2900         (test):
2901         * inspector/heap-snapshot.html:
2902
2903 2012-06-03  Kentaro Hara  <haraken@chromium.org>
2904
2905         [perf-test] Add a benchmark of querySelector() for an element that appears in the depths in the document
2906         https://bugs.webkit.org/show_bug.cgi?id=88202
2907
2908         Reviewed by Ryosuke Niwa.
2909
2910         query-selector-first.html tests querySelector() for an element
2911         that appears at the head of the document. query-selector-last.html
2912         tests querySelector() for an element that appears at the tail of
2913         the document. In addition, we want a benchmark of querySelector()
2914         for an element that appears in the depths in the document.
2915
2916         Test results in my Linux desktop:
2917
2918         RESULT Parser: query-selector-deep= 460.776980611 runs/s
2919         median= 460.947503201 runs/s, stdev= 1.72274941942 runs/s, min= 455.696202532 runs/s, max= 463.32046332 runs/s
2920
2921         RESULT Parser: query-selector-deep= 458.925050915 runs/s
2922         median= 459.183673469 runs/s, stdev= 1.47930124139 runs/s, min= 454.545454545 runs/s, max= 460.947503201 runs/s
2923
2924         RESULT Parser: query-selector-deep= 461.866981491 runs/s
2925         median= 461.538461538 runs/s, stdev= 1.14613123359 runs/s, min= 459.183673469 runs/s, max= 463.917525773 runs/s
2926
2927         RESULT Parser: query-selector-deep= 453.922010788 runs/s
2928         median= 454.258855898 runs/s, stdev= 1.77279123317 runs/s, min= 447.204968944 runs/s, max= 455.696202532 runs/s
2929
2930         RESULT Parser: query-selector-deep= 454.666321221 runs/s
2931         median= 454.545454545 runs/s, stdev= 1.65775667417 runs/s, min= 451.127819549 runs/s, max= 456.852791878 runs/s
2932
2933         * Parser/query-selector-deep.html: Added.
2934
2935 2012-06-03  Kentaro Hara  <haraken@chromium.org>
2936
2937         [perf-test] Make query-selector-last.html more realistic
2938         https://bugs.webkit.org/show_bug.cgi?id=88203
2939
2940         Reviewed by Ryosuke Niwa.
2941
2942         query-selector-last.html tests querySelector() for an element
2943         that appears after 1000 div elements, all of which have the same
2944         id and class. To test the performance of querySelector() under
2945         a lot of ids and classes, we should make the ids and classes of
2946         the 1000 elements different.
2947
2948         This patch degrades the performance of query-selector-last.html
2949         by 3.6%.
2950
2951         [Before]
2952         RESULT Parser: query-selector-last= 476.382274152 runs/s
2953         median= 476.821192053 runs/s, stdev= 1.14578875814 runs/s, min= 474.308300395 runs/s, max= 478.087649402 runs/s
2954
2955         RESULT Parser: query-selector-last= 478.423061861 runs/s
2956         median= 478.723404255 runs/s, stdev= 1.54876867255 runs/s, min= 473.684210526 runs/s, max= 481.347773767 runs/s
2957
2958         RESULT Parser: query-selector-last= 479.849287174 runs/s
2959         median= 480.0 runs/s, stdev= 1.69849752498 runs/s, min= 475.561426684 runs/s, max= 481.927710843 runs/s
2960
2961         RESULT Parser: query-selector-last= 476.765438846 runs/s
2962         median= 477.453580902 runs/s, stdev= 1.8724488664 runs/s, min= 471.821756225 runs/s, max= 478.723404255 runs/s
2963
2964         RESULT Parser: query-selector-last= 481.715340644 runs/s
2965         median= 481.637742305 runs/s, stdev= 1.81446361145 runs/s, min= 475.561426684 runs/s, max= 483.675937122 runs/s
2966
2967         [After]
2968         RESULT Parser: query-selector-last= 458.866623582 runs/s
2969         median= 459.183673469 runs/s, stdev= 1.48881464737 runs/s, min= 453.972257251 runs/s, max= 460.947503201 runs/s
2970
2971         RESULT Parser: query-selector-last= 460.363532897 runs/s
2972         median= 460.358056266 runs/s, stdev= 1.58512056995 runs/s, min= 456.273764259 runs/s, max= 462.130937099 runs/s
2973
2974         RESULT Parser: query-selector-last= 457.727448451 runs/s
2975         median= 458.015267176 runs/s, stdev= 1.23681915516 runs/s, min= 453.972257251 runs/s, max= 459.183673469 runs/s
2976
2977         RESULT Parser: query-selector-last= 465.57336853 runs/s
2978         median= 465.717981889 runs/s, stdev= 1.6616925374 runs/s, min= 460.947503201 runs/s, max= 467.532467532 runs/s
2979
2980         RESULT Parser: query-selector-last= 459.836252019 runs/s
2981         median= 459.770114943 runs/s, stdev= 1.84485630505 runs/s, min= 455.696202532 runs/s, max= 462.724935733 runs/s
2982
2983         * Parser/query-selector-last.html:
2984
2985 2012-06-01  Ryosuke Niwa  <rniwa@webkit.org>
2986
2987         Add public page loading performance tests using web-page-replay
2988         https://bugs.webkit.org/show_bug.cgi?id=84008
2989
2990         Reviewed by Dirk Pranke.
2991
2992         Add replay tests for google.com and youtube.com as examples.
2993
2994         * Replay: Added.
2995         * Replay/www.google.com.replay: Added.
2996         * Replay/www.youtube.com.replay: Added.
2997
2998 2012-05-30  Kentaro Hara  <haraken@chromium.org>
2999
3000         [perf-test] Add a benchmark for querySelector()
3001         https://bugs.webkit.org/show_bug.cgi?id=87742
3002
3003         Reviewed by Ryosuke Niwa.
3004
3005         Now I am optimizing querySelector() (bug 87625).
3006         This patch adds a performance test for querySelector().
3007         query-selector-first.html queries an element that appears
3008         at the head of the document. On the other hand,
3009         query-selector-last.html queries an element that appears
3010         at the tail of the document.
3011
3012         Test results in my desktop:
3013
3014         [query-selector-first.html]
3015         RESULT Parser: query-selector-first= 252.339803014 runs/s
3016         median= 253.646265594 runs/s, stdev= 2.32610873209 runs/s, min= 248.138957816 runs/s, max= 254.777070064 runs/s
3017
3018         RESULT Parser: query-selector-first= 252.688468897 runs/s
3019         median= 252.684876579 runs/s, stdev= 3.60008778708 runs/s, min= 246.002460025 runs/s, max= 258.397932817 runs/s
3020
3021         RESULT Parser: query-selector-first= 253.466019656 runs/s
3022         median= 254.129606099 runs/s, stdev= 1.78002675664 runs/s, min= 247.831474597 runs/s, max= 254.777070064 runs/s
3023
3024         RESULT Parser: query-selector-first= 256.245078189 runs/s
3025         median= 257.06940874 runs/s, stdev= 2.84722072201 runs/s, min= 249.687890137 runs/s, max= 259.74025974 runs/s
3026
3027         RESULT Parser: query-selector-first= 252.203100497 runs/s
3028         median= 252.047989175 runs/s, stdev= 1.75233446036 runs/s, min= 248.138957816 runs/s, max= 255.427841635 runs/s
3029
3030         [query-selector-last.html]
3031         RESULT Parser: query-selector-last= 356.009616076 runs/s
3032         median= 355.781448539 runs/s, stdev= 0.841519086864 runs/s, min= 354.430379747 runs/s, max= 358.056265985 runs/s
3033
3034         RESULT Parser: query-selector-last= 360.735271001 runs/s
3035         median= 361.057532424 runs/s, stdev= 1.12253219867 runs/s, min= 358.514724712 runs/s, max= 362.225097025 runs/s
3036
3037         RESULT Parser: query-selector-last= 359.598592463 runs/s
3038         median= 359.435173299 runs/s, stdev= 0.816538258728 runs/s, min= 358.056265985 runs/s, max= 360.824742268 runs/s
3039
3040         RESULT Parser: query-selector-last= 357.260651715 runs/s
3041         median= 357.598978289 runs/s, stdev= 1.17393159885 runs/s, min= 353.982300885 runs/s, max= 358.974358974 runs/s
3042
3043         RESULT Parser: query-selector-last= 351.696240713 runs/s
3044         median= 351.980025916 runs/s, stdev= 1.14200564038 runs/s, min= 348.692403487 runs/s, max= 353.535353535 runs/s
3045
3046         * Parser/query-selector-first.html: Added.
3047         * Parser/query-selector-last.html: Added.
3048
3049 2012-05-25  Ilya Tikhonovsky  <loislo@chromium.org>
3050
3051         Web Inspector: HeapSnapshot: introduce performance counter for HeapSnapshotConstructorsDataGrid._aggregatesReceived method.
3052         https://bugs.webkit.org/show_bug.cgi?id=87393
3053
3054         Reviewed by Yury Semikhatsky.
3055
3056         * inspector/heap-snapshot.html:
3057
3058 2012-05-25  Ilya Tikhonovsky  <loislo@chromium.org>
3059
3060         Web Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th times.
3061         https://bugs.webkit.org/show_bug.cgi?id=87476
3062
3063         The time tracking wrappers were attaching on each run.
3064
3065         Reviewed by Yury Semikhatsky.
3066
3067         * inspector/heap-snapshot.html:
3068
3069 2012-05-22  Ilya Tikhonovsky  <loislo@chromium.org>
3070
3071         Web Inspector: HeapProfiler: upstream retainedSize calculation.
3072         https://bugs.webkit.org/show_bug.cgi?id=87107
3073
3074         This patch upstreams V8::HeapSnapshotGenerator::CalculateRetainedSizes function to front-end.
3075         After that we will be able to drop retainedSize field from the snapshot serialized data.
3076         See meta-bug https://bugs.webkit.org/show_bug.cgi?id=87089
3077
3078         Reviewed by Yury Semikhatsky.
3079
3080         * inspector/heap-snapshot.html: add counter for the _calculateRetainedSize method.
3081
3082 2012-05-21  Kent Tamura  <tkent@chromium.org>
3083
3084         Add performance tests for <textarea>
3085         https://bugs.webkit.org/show_bug.cgi?id=86994
3086
3087         Reviewed by Ryosuke Niwa.
3088
3089         * DOM/textarea-dom.html: Added.
3090         * DOM/textarea-edit.html: Added.
3091         * Parser/textarea-parsing.html: Added.
3092
3093 2012-05-18  Ilya Tikhonovsky  <loislo@chromium.org>
3094
3095         Web Inspector: upstream build dominators tree procedure from v8.
3096         https://bugs.webkit.org/show_bug.cgi?id=86640
3097
3098         The idea is to reduce transfer size and move all the post-processing steps to the front-end.
3099         The JS implementation is ~1.5 times slower.
3100
3101         Reviewed by Yury Semikhatsky.
3102
3103         Covered by existing tests and performance tests.
3104
3105         * inspector/heap-snapshot.html:
3106
3107 2012-05-18  Kentaro Hara  <haraken@chromium.org>
3108
3109         [perf-test] Remove Bindings/dom-attributes.html
3110         https://bugs.webkit.org/show_bug.cgi?id=86820
3111
3112         Reviewed by Ryosuke Niwa.
3113
3114         Bindings/dom-attributes.html is just a collection of random
3115         DOM attributes and methods. Now we've added more reasonable
3116         micro benchmarks by classifying DOM binding call paths, we
3117         can remove Bindings/dom-attributes.html.
3118
3119         * Bindings/dom-attributes.html: Removed.
3120
3121 2012-05-18  Kentaro Hara  <haraken@chromium.org>
3122
3123         [perf-test] Add a binding benchmark for getElementById() for an undefined id
3124         https://bugs.webkit.org/show_bug.cgi?id=86812
3125
3126         Reviewed by Ryosuke Niwa.
3127
3128         We should remove Bindings/dom-attributes.html and instead add more
3129         reasonable micro benchmarks by classifying DOM binding call paths.
3130
3131         This patch adds a benchmark for document.getElementById() for an undefined id.
3132         This benchmark covers 'getElementById (not in document)' in Dromaeo/dom-query.html,
3133         and other Node-query methods that return a null.'
3134
3135         (Note: This benchmark is slower than document.getElementById() for a defined id.
3136         We will fix the performance issue soon.)
3137
3138         Test results in my Linux desktop:
3139
3140         RESULT Bindings: undefined-get-element-by-id= 271.945751345 runs/s
3141         median= 273.122389532 runs/s, stdev= 6.78219237299 runs/s, min= 257.4002574 runs/s, max= 281.690140845 runs/s
3142
3143         RESULT Bindings: undefined-get-element-by-id= 269.105872408 runs/s
3144         median= 268.948655257 runs/s, stdev= 5.73707323755 runs/s, min= 257.4002574 runs/s, max= 278.128950695 runs/s
3145
3146         RESULT Bindings: undefined-get-element-by-id= 269.987513372 runs/s
3147         median= 272.952853598 runs/s, stdev= 5.30252336078 runs/s, min= 255.754475703 runs/s, max= 273.97260274 runs/s
3148
3149         RESULT Bindings: undefined-get-element-by-id= 270.169625901 runs/s
3150         median= 271.604938272 runs/s, stdev= 5.29502391906 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
3151
3152         RESULT Bindings: undefined-get-element-by-id= 269.054631422 runs/s
3153         median= 267.966292802 runs/s, stdev= 6.27197240579 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
3154
3155         * Bindings/undefined-get-element-by-id.html: Added.
3156
3157 2012-05-18  Kentaro Hara  <haraken@chromium.org>
3158
3159         [perf-test] Add a binding benchmark for getElementsByTagName()
3160         https://bugs.webkit.org/show_bug.cgi?id=86810
3161
3162         Reviewed by Ryosuke Niwa.
3163
3164         We should remove Bindings/dom-attributes.html and instead add more
3165         reasonable micro benchmarks by classifying DOM binding call paths.
3166
3167         This patch adds a benchmark for document.getElementsByTagName().
3168         This benchmark covers 'getElementsByTagName (not in document)',
3169         'getElementsByTagName', 'getElementsByName (not in document)'
3170         and 'getElementsByName' in Dromaeo/dom-query.html, and other DOM
3171         methods that return a NodeList.
3172
3173         Test results in my Linux desktop:
3174
3175         RESULT Bindings: get-elements-by-tag-name= 364.542328875 runs/s
3176         median= 366.972477064 runs/s, stdev= 5.25387955333 runs/s, min= 351.317440402 runs/s, max= 368.421052632 runs/s
3177
3178         RESULT Bindings: get-elements-by-tag-name= 364.341569369 runs/s
3179         median= 366.492146597 runs/s, stdev= 4.867374197 runs/s, min= 352.644836272 runs/s, max= 367.936925099 runs/s
3180
3181         RESULT Bindings: get-elements-by-tag-name= 363.924242967 runs/s
3182         median= 366.013071895 runs/s, stdev= 5.16768212289 runs/s, min= 351.317440402 runs/s, max= 367.936925099 runs/s
3183
3184         RESULT Bindings: get-elements-by-tag-name= 365.332594438 runs/s
3185         median= 367.454068241 runs/s, stdev= 6.17046918572 runs/s, min= 350.0 runs/s, max= 370.37037037 runs/s
3186
3187         RESULT Bindings: get-elements-by-tag-name= 363.999514324 runs/s
3188         median= 366.492146597 runs/s, stdev= 5.31235674905 runs/s, min= 350.877192982 runs/s, max= 368.421052632 runs/s
3189
3190         * Bindings/get-elements-by-tag-name.html: Added.
3191
3192 2012-05-18  Kentaro Hara  <haraken@chromium.org>
3193
3194         [perf-test] Add 7 micro benchmarks for DOM bindings
3195         https://bugs.webkit.org/show_bug.cgi?id=86816
3196
3197         Reviewed by Ryosuke Niwa.
3198
3199         We should remove Bindings/dom-attributes.html and instead add more
3200         reasonable micro benchmarks by classifying DOM binding call paths.
3201         This patch adds seven micro benchmarks for DOM bindings.
3202
3203         id-getter.html covers 'element.property' in Dromaeo/dom-attr.html,
3204         'innerHTML' in Dromaeo/dom-modify.html, and other DOM attributes that
3205         return a String.
3206
3207         id-setter.html covers 'element.property = value' in Dromaeo/dom-attr.html,
3208         and other DOM attributes that sets a String.
3209
3210         undefined-id-getter.html covers undefined DOM attributes that return an empty String.
3211
3212         append-child.html covers 'appendChild' and 'removeChild' in Dromaeo/dom-modify.html.
3213
3214         insert-before.html covers 'insertBefore' in Dromaeo/dom-modify.html and replaceChild().
3215
3216         create-element.html covers 'createElement', 'createTextNode' and 'cloneNode'
3217         in Dromaeo/dom-modify.html, and other DOM methods that return a new Node object.
3218
3219         node-list-access.html covers 'childNodes' in Dromaeo/dom-traverse.html,
3220         and other DOM attributes that access NodeList.
3221
3222         Test results in my Linux desktop:
3223
3224         [id-getter]
3225         RESULT Bindings: id-getter= 550.517821097 runs/s
3226         median= 550.688360451 runs/s, stdev= 0.970723739106 runs/s, min= 548.628428928 runs/s, max= 552.070263488 runs/s
3227
3228         RESULT Bindings: id-getter= 550.655839847 runs/s
3229         median= 550.688360451 runs/s, stdev= 1.03312821884 runs/s, min= 549.313358302 runs/s, max= 552.070263488 runs/s
3230
3231         RESULT Bindings: id-getter= 550.277753355 runs/s
3232         median= 550.344180225 runs/s, stdev= 1.19960683464 runs/s, min= 547.945205479 runs/s, max= 552.070263488 runs/s
3233
3234         RESULT Bindings: id-getter= 550.072271009 runs/s
3235         median= 550.344180225 runs/s, stdev= 1.38925152131 runs/s, min= 547.263681592 runs/s, max= 552.070263488 runs/s
3236
3237         RESULT Bindings: id-getter= 548.802050235 runs/s
3238         median= 548.628428928 runs/s, stdev= 1.18244513683 runs/s, min= 545.905707196 runs/s, max= 550.688360451 runs/s
3239
3240         [id-setter]
3241         RESULT Bindings: id-setter= 211.370591663 runs/s
3242         median= 210.803689065 runs/s, stdev= 1.4555795889 runs/s, min= 209.973753281 runs/s, max= 214.285714286 runs/s
3243
3244         RESULT Bindings: id-setter= 215.439081352 runs/s
3245         median= 214.797136038 runs/s, stdev= 1.50920388121 runs/s, min= 213.049267643 runs/s, max= 218.446601942 runs/s
3246
3247         RESULT Bindings: id-setter= 216.721698466 runs/s
3248         median= 215.956886352 runs/s, stdev= 1.54090749644 runs/s, min= 214.285714286 runs/s, max= 219.78021978 runs/s
3249
3250         RESULT Bindings: id-setter= 216.343019087 runs/s
3251         median= 215.827338129 runs/s, stdev= 1.46619894553 runs/s, min= 215.053763441 runs/s, max= 218.97810219 runs/s
3252
3253         RESULT Bindings: id-setter= 216.799288017 runs/s
3254         median= 215.956886352 runs/s, stdev= 1.49100776978 runs/s, min= 215.311004785 runs/s, max= 219.78021978 runs/s
3255
3256         [undefined-id-getter]
3257         RESULT Bindings: undefined-id-getter= 494.104255241 runs/s
3258         median= 494.132368875 runs/s, stdev= 1.13092821109 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
3259
3260         RESULT Bindings: undefined-id-getter= 493.921802916 runs/s
3261         median= 493.827160494 runs/s, stdev= 1.25097443119 runs/s, min= 490.196078431 runs/s, max= 495.662949195 runs/s
3262
3263         RESULT Bindings: undefined-id-getter= 491.976485667 runs/s
3264         median= 492.004920049 runs/s, stdev= 0.947090576896 runs/s, min= 490.196078431 runs/s, max= 493.827160494 runs/s
3265
3266         RESULT Bindings: undefined-id-getter= 491.987710185 runs/s
3267         median= 494.132368875 runs/s, stdev= 8.66602543327 runs/s, min= 454.545454545 runs/s, max= 495.662949195 runs/s
3268
3269         RESULT Bindings: undefined-id-getter= 494.195515847 runs/s
3270         median= 494.437577256 runs/s, stdev= 1.06135681702 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
3271
3272         [append-child]
3273         RESULT Bindings: append-child= 260.628237026 runs/s
3274         median= 260.926399352 runs/s, stdev= 2.55231060598 runs/s, min= 256.739409499 runs/s, max= 265.604249668 runs/s
3275
3276         RESULT Bindings: append-child= 280.796193436 runs/s
3277         median= 280.791435348 runs/s, stdev= 2.53961321867 runs/s, min= 277.427490542 runs/s, max= 286.085825748 runs/s
3278
3279         RESULT Bindings: append-child= 279.856209714 runs/s
3280         median= 280.25477707 runs/s, stdev= 2.85447647301 runs/s, min= 275.344180225 runs/s, max= 284.237726098 runs/s
3281
3282         RESULT Bindings: append-child= 280.834502714 runs/s
3283         median= 280.25477707 runs/s, stdev= 2.67738046429 runs/s, min= 277.427490542 runs/s, max= 287.206266319 runs/s
3284
3285         RESULT Bindings: append-child= 274.723872106 runs/s
3286         median= 273.291925466 runs/s, stdev= 3.03671746706 runs/s, min= 272.614622057 runs/s, max= 282.413350449 runs/s
3287
3288         [insert-before]
3289         RESULT Bindings: insert-before= 180.986913006 runs/s
3290         median= 180.878552972 runs/s, stdev= 0.758038687299 runs/s, min= 180.18018018 runs/s, max= 183.968462549 runs/s
3291
3292         RESULT Bindings: insert-before= 186.339916144 runs/s
3293         median= 186.170212766 runs/s, stdev= 0.869022097127 runs/s, min= 185.676392573 runs/s, max= 189.798339265 runs/s
3294
3295         RESULT Bindings: insert-before= 189.45344838 runs/s
3296         median= 189.349112426 runs/s, stdev= 0.811854866567 runs/s, min= 187.79342723 runs/s, max= 192.539109507 runs/s
3297
3298         RESULT Bindings: insert-before= 189.363295991 runs/s
3299         median= 189.349112426 runs/s, stdev= 0.75387713097 runs/s, min= 188.014101058 runs/s, max= 192.076830732 runs/s
3300
3301         RESULT Bindings: insert-before= 189.252041642 runs/s
3302         median= 189.349112426 runs/s, stdev= 0.840447225363 runs/s, min= 187.573270809 runs/s, max= 192.076830732 runs/s
3303
3304         [create-element]
3305         RESULT Bindings: create-element= 280.675830077 runs/s
3306         median= 280.701824914 runs/s, stdev= 0.788606343054 runs/s, min= 279.441117764 runs/s, max= 282.542885974 runs/s
3307
3308         RESULT Bindings: create-element= 276.427631436 runs/s
3309         median= 277.227722772 runs/s, stdev= 3.39874667549 runs/s, min= 262.417994377 runs/s, max= 279.162512463 runs/s
3310
3311         RESULT Bindings: create-element= 277.156894411 runs/s
3312         median= 277.227722772 runs/s, stdev= 1.13255119226 runs/s, min= 274.914089347 runs/s, max= 278.884462151 runs/s
3313
3314         RESULT Bindings: create-element= 278.066825356 runs/s
3315         median= 278.191822254 runs/s, stdev= 0.686497782792 runs/s, min= 276.953511375 runs/s, max= 279.162512463 runs/s
3316
3317         RESULT Bindings: create-element= 276.431538109 runs/s
3318         median= 276.406712734 runs/s, stdev= 0.759593662298 runs/s, min= 275.229357798 runs/s, max= 278.053624628 runs/s
3319
3320         [node-list-access]
3321         RESULT Bindings: node-list-access= 222.747504073 runs/s
3322         median= 222.772277228 runs/s, stdev= 0.789027527555 runs/s, min= 221.674876847 runs/s, max= 224.159402242 runs/s
3323
3324         RESULT Bindings: node-list-access= 220.722448287 runs/s
3325         median= 221.266217576 runs/s, stdev= 1.65463497875 runs/s, min= 217.391304348 runs/s, max= 222.222222222 runs/s
3326
3327         RESULT Bindings: node-list-access= 222.195870443 runs/s
3328         median= 222.222222222 runs/s, stdev= 0.489709262091 runs/s, min= 221.13022113 runs/s, max= 223.048327138 runs/s
3329
3330         RESULT Bindings: node-list-access= 221.431121677 runs/s
3331         median= 221.538545435 runs/s, stdev= 0.608292116087 runs/s, min= 220.048899756 runs/s, max= 222.772277228 runs/s
3332
3333         RESULT Bindings: node-list-access= 219.001367135 runs/s
3334         median= 221.538545435 runs/s, stdev= 4.65773933007 runs/s, min= 209.973753281 runs/s, max= 222.496909765 runs/s
3335
3336         * Bindings/append-child.html: Added.
3337         * Bindings/create-element.html: Added.
3338         * Bindings/id-getter.html: Added.
3339         * Bindings/id-setter.html: Added.
3340         * Bindings/insert-before.html: Added.
3341         * Bindings/node-list-access.html: Added.
3342         * Bindings/undefined-id-getter.html: Added.
3343
3344 2012-05-18  Kentaro Hara  <haraken@chromium.org>
3345
3346         [perf-test] Add a binding benchmark for div.setAttribute()
3347         https://bugs.webkit.org/show_bug.cgi?id=86815
3348
3349         Reviewed by Ryosuke Niwa.
3350
3351         We should remove Bindings/dom-attributes.html and instead add more
3352         reasonable micro benchmarks by classifying DOM binding call paths.
3353
3354         This patch adds a benchmark for div.setAttribute(). This benchmark
3355         covers 'setAttribute' in Dromaeo/dom-attr.html and other DOM methods
3356         that return an undefined.
3357
3358         Test results in my Linux desktop:
3359
3360         RESULT Bindings: set-attribute= 793.745073252 runs/s
3361         median= 791.589665765 runs/s, stdev= 6.00467159709 runs/s, min= 785.27607362 runs/s, max= 808.080808081 runs/s
3362
3363         RESULT Bindings: set-attribute= 790.858444164 runs/s
3364         median= 787.918921436 runs/s, stdev= 7.86264953655 runs/s, min= 780.234070221 runs/s, max= 806.04534005 runs/s
3365
3366         RESULT Bindings: set-attribute= 787.277571417 runs/s
3367         median= 784.31372549 runs/s, stdev= 7.45363346657 runs/s, min= 778.588807786 runs/s, max= 804.020100503 runs/s
3368
3369         RESULT Bindings: set-attribute= 782.401393791 runs/s
3370         median= 779.062978802 runs/s, stdev= 6.48250081621 runs/s, min= 777.642770352 runs/s, max= 796.019900498 runs/s
3371
3372         RESULT Bindings: set-attribute= 791.792516608 runs/s
3373         median= 791.556728232 runs/s, stdev= 6.49182980397 runs/s, min= 779.220779221 runs/s, max= 808.080808081 runs/s
3374
3375         * Bindings/set-attribute.html: Added.
3376
3377 2012-05-17  Kentaro Hara  <haraken@chromium.org>
3378
3379         [perf-test] Add a binding benchmark for div.getAttribute()
3380         https://bugs.webkit.org/show_bug.cgi?id=86814
3381
3382         Reviewed by Ryosuke Niwa.
3383
3384         We should remove Bindings/dom-attributes.html and instead add more
3385         reasonable micro benchmarks by classifying DOM binding call paths.
3386
3387         This patch adds a benchmark for div.getAttribute(). This benchmark
3388         covers 'getAttribute' in Dromaeo/dom-attr.html, and other DOM methods
3389         that return a String.
3390
3391         Test results in my Linux desktop:
3392
3393         RESULT Bindings: get-attribute= 250.088158538 runs/s
3394         median= 250.469728765 runs/s, stdev= 4.66551901315 runs/s, min= 240.673886883 runs/s, max= 256.739409499 runs/s
3395
3396         RESULT Bindings: get-attribute= 250.209764698 runs/s
3397         median= 250.626959986 runs/s, stdev= 4.12030002477 runs/s, min= 241.254523522 runs/s, max= 255.102040816 runs/s
3398
3399         RESULT Bindings: get-attribute= 248.907532887 runs/s
3400         median= 250.312891114 runs/s, stdev= 3.23173125874 runs/s, min= 240.673886883 runs/s, max= 251.572327044 runs/s
3401
3402         RESULT Bindings: get-attribute= 250.243680844 runs/s
3403         median= 250.783797637 runs/s, stdev= 4.19327170024 runs/s, min= 240.963855422 runs/s, max= 255.102040816 runs/s
3404
3405         RESULT Bindings: get-attribute= 245.329046608 runs/s
3406         median= 244.948040416 runs/s, stdev= 2.24314248534 runs/s, min= 240.384615385 runs/s, max= 248.756218905 runs/s
3407
3408         * Bindings/get-attribute.html: Added.
3409
3410 2012-05-17  Kentaro Hara  <haraken@chromium.org>
3411
3412         [perf-test] Add a binding benchmark for getElementById()
3413         https://bugs.webkit.org/show_bug.cgi?id=86808
3414
3415         Reviewed by Ryosuke Niwa.
3416
3417         Currently Bindings/dom-attributes.html is just a collection
3418         of random DOM attributes and methods. We should remove it and
3419         instead add more reasonable micro benchmarks by classifying
3420         DOM binding call paths.
3421
3422         This patch adds a benchmark for document.getElementById(),
3423         which covers other DOM methods that return a Node Object.
3424
3425         The reason why we want to add a benchmark for document.getElementById()
3426         in spite of the fact that Dromaeo/dom-query.html is already testing
3427         document.getElementById(), is that Dromaeo/dom-query.html outputs one
3428         result for several benchmarks (i.e. getElementById().nodeType,
3429         getElementsByTagName()[0].nodeType etc), and thus we cannot observe
3430         regression of getElemen