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