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