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