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