1 2013-10-14 Sergio Villar Senin <svillar@igalia.com>
3 Use a Vector instead of HashSet to computed the orderValues in RenderFlexibleBox
4 https://bugs.webkit.org/show_bug.cgi?id=118620
6 Reviewed by Antti Koivisto.
8 From Blink r152960 by <ojan@chromium.org>
10 New performance test for layouts in flexboxes.
12 * Layout/flexbox-lots-of-data.html: Added.
14 2013-10-06 Ryosuke Niwa <rniwa@webkit.org>
16 DoYouEvenBench: Make it work on Internet Explorer 11 Release Preview
17 https://bugs.webkit.org/show_bug.cgi?id=122406
19 Reviewed by Darin Adler.
21 On Internet Explorer 11, $(elem).closest('li').data('id') fails to find the containig li of elem once
22 the first item is marked complete or deleted until we get back to the event loop in the jQuery/TodoMVC.
23 Worked around this limitation by overriding app.getTodo to use each item's id computed in advance.
25 Also use $.text instead of execCommand('InsertText') in FlightJS/MailClient since Internet Explorer
26 doesn't support execCommand('InsertText'). Also select the recipient to avoid exceptions.
28 * DoYouEvenBench/benchmark.html:
30 2013-10-05 Ryosuke Niwa <rniwa@webkit.org>
32 DoYouEvenBench: Add Facebook's React TodoMVC test case
33 https://bugs.webkit.org/show_bug.cgi?id=122379
35 Reviewed by Andreas Kling.
37 Add React/TodoMVC as a new test case. Somehow we beat Firefox on this one as well.
39 * DoYouEvenBench/benchmark.html:
40 * DoYouEvenBench/todomvc/labs: Added.
41 * DoYouEvenBench/todomvc/labs/architecture-examples: Added.
42 * DoYouEvenBench/todomvc/labs/architecture-examples/react: Added.
43 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower.json: Added.
44 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components: Added.
45 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director: Added.
46 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/LICENSE: Added.
47 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/README.md: Added.
48 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build: Added.
49 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build/director.js: Added.
50 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build/director.min.js: Added.
51 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/director/build/ender.js: Added.
52 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react: Added.
53 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/JSXTransformer.js: Added.
54 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/bower.json: Added.
55 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/react.js: Added.
56 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/react/react.min.js: Added.
57 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common: Added.
58 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/base.css: Added.
59 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/base.js: Added.
60 * DoYouEvenBench/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/bg.png: Added.
61 * DoYouEvenBench/todomvc/labs/architecture-examples/react/index.html: Added.
62 * DoYouEvenBench/todomvc/labs/architecture-examples/react/js: Added.
63 * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/app.jsx: Added.
64 * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/footer.jsx: Added.
65 * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/todoItem.jsx: Added.
66 * DoYouEvenBench/todomvc/labs/architecture-examples/react/js/utils.jsx: Added.
67 * DoYouEvenBench/todomvc/labs/architecture-examples/react/readme.md: Added.
69 2013-09-25 Ryosuke Niwa <rniwa@webkit.org>
71 DoYouEvenBench: Add a test case for FlightJS
72 https://bugs.webkit.org/show_bug.cgi?id=121926
74 Reviewed by Antti Koivisto.
76 Add a FlightJS test case.
78 * DoYouEvenBench/benchmark.html:
79 * DoYouEvenBench/benchmark.js:
80 * DoYouEvenBench/flightjs-example-app: Added.
81 * DoYouEvenBench/flightjs-example-app/LICENSE.md: Added.
82 * DoYouEvenBench/flightjs-example-app/README.md: Added.
83 * DoYouEvenBench/flightjs-example-app/app: Added.
84 * DoYouEvenBench/flightjs-example-app/app/boot: Added.
85 * DoYouEvenBench/flightjs-example-app/app/boot/page.js: Added.
86 * DoYouEvenBench/flightjs-example-app/app/component_data: Added.
87 * DoYouEvenBench/flightjs-example-app/app/component_data/compose_box.js: Added.
88 * DoYouEvenBench/flightjs-example-app/app/component_data/mail_items.js: Added.
89 * DoYouEvenBench/flightjs-example-app/app/component_data/move_to.js: Added.
90 * DoYouEvenBench/flightjs-example-app/app/component_ui: Added.
91 * DoYouEvenBench/flightjs-example-app/app/component_ui/compose_box.js: Added.
92 * DoYouEvenBench/flightjs-example-app/app/component_ui/folders.js: Added.
93 * DoYouEvenBench/flightjs-example-app/app/component_ui/mail_controls.js: Added.
94 * DoYouEvenBench/flightjs-example-app/app/component_ui/mail_items.js: Added.
95 * DoYouEvenBench/flightjs-example-app/app/component_ui/move_to_selector.js: Added.
96 * DoYouEvenBench/flightjs-example-app/app/component_ui/with_select.js: Added.
97 * DoYouEvenBench/flightjs-example-app/app/css: Added.
98 * DoYouEvenBench/flightjs-example-app/app/css/custom.css: Added.
99 * DoYouEvenBench/flightjs-example-app/app/data.js: Added.
100 * DoYouEvenBench/flightjs-example-app/app/templates.js: Added.
101 * DoYouEvenBench/flightjs-example-app/components: Added.
102 * DoYouEvenBench/flightjs-example-app/components/bootstrap: Added.
103 * DoYouEvenBench/flightjs-example-app/components/bootstrap/css: Added.
104 * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap-responsive.css: Added.
105 * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap-responsive.min.css: Added.
106 * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap.css: Added.
107 * DoYouEvenBench/flightjs-example-app/components/bootstrap/css/bootstrap.min.css: Added.
108 * DoYouEvenBench/flightjs-example-app/components/bootstrap/img: Added.
109 * DoYouEvenBench/flightjs-example-app/components/bootstrap/img/glyphicons-halflings-white.png: Added.
110 * DoYouEvenBench/flightjs-example-app/components/bootstrap/img/glyphicons-halflings.png: Added.
111 * DoYouEvenBench/flightjs-example-app/components/bootstrap/js: Added.
112 * DoYouEvenBench/flightjs-example-app/components/bootstrap/js/bootstrap.js: Added.
113 * DoYouEvenBench/flightjs-example-app/components/bootstrap/js/bootstrap.min.js: Added.
114 * DoYouEvenBench/flightjs-example-app/components/es5-shim: Added.
115 * DoYouEvenBench/flightjs-example-app/components/es5-shim/.gitignore: Added.
116 * DoYouEvenBench/flightjs-example-app/components/es5-shim/CHANGES: Added.
117 * DoYouEvenBench/flightjs-example-app/components/es5-shim/CONTRIBUTORS.md: Added.
118 * DoYouEvenBench/flightjs-example-app/components/es5-shim/LICENSE: Added.
119 * DoYouEvenBench/flightjs-example-app/components/es5-shim/README.md: Added.
120 * DoYouEvenBench/flightjs-example-app/components/es5-shim/component.json: Added.
121 * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-sham.js: Added.
122 * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-sham.min.js: Added.
123 * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-shim.js: Added.
124 * DoYouEvenBench/flightjs-example-app/components/es5-shim/es5-shim.min.js: Added.
125 * DoYouEvenBench/flightjs-example-app/components/es5-shim/package.json: Added.
126 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests: Added.
127 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers: Added.
128 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h-kill.js: Added.
129 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h-matchers.js: Added.
130 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/helpers/h.js: Added.
131 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/index.html: Added.
132 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib: Added.
133 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine-html.js: Added.
134 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine.css: Added.
135 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine.js: Added.
136 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/jasmine_favicon.png: Added.
137 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/lib/json2.js: Added.
138 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec: Added.
139 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-array.js: Added.
140 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-date.js: Added.
141 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-function.js: Added.
142 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-object.js: Added.
143 * DoYouEvenBench/flightjs-example-app/components/es5-shim/tests/spec/s-string.js: Added.
144 * DoYouEvenBench/flightjs-example-app/components/flight: Added.
145 * DoYouEvenBench/flightjs-example-app/components/flight/.travis.yml: Added.
146 * DoYouEvenBench/flightjs-example-app/components/flight/lib: Added.
147 * DoYouEvenBench/flightjs-example-app/components/flight/lib/advice.js: Added.
148 * DoYouEvenBench/flightjs-example-app/components/flight/lib/component.js: Added.
149 * DoYouEvenBench/flightjs-example-app/components/flight/lib/compose.js: Added.
150 * DoYouEvenBench/flightjs-example-app/components/flight/lib/index.js: Added.
151 * DoYouEvenBench/flightjs-example-app/components/flight/lib/logger.js: Added.
152 * DoYouEvenBench/flightjs-example-app/components/flight/lib/registry.js: Added.
153 * DoYouEvenBench/flightjs-example-app/components/flight/lib/utils.js: Added.
154 * DoYouEvenBench/flightjs-example-app/components/flight/tools: Added.
155 * DoYouEvenBench/flightjs-example-app/components/flight/tools/debug: Added.
156 * DoYouEvenBench/flightjs-example-app/components/flight/tools/debug/debug.js: Added.
157 * DoYouEvenBench/flightjs-example-app/components/jasmine-flight: Added.
158 * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/LICENSE.md: Added.
159 * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/README.md: Added.
160 * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/bower.json: Added.
161 * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/lib: Added.
162 * DoYouEvenBench/flightjs-example-app/components/jasmine-flight/lib/jasmine-flight.js: Added.
163 * DoYouEvenBench/flightjs-example-app/components/jasmine-jquery: Added.
164 * DoYouEvenBench/flightjs-example-app/components/jasmine-jquery/lib: Added.
165 * DoYouEvenBench/flightjs-example-app/components/jasmine-jquery/lib/jasmine-jquery.js: Added.
166 * DoYouEvenBench/flightjs-example-app/components/jquery: Added.
167 * DoYouEvenBench/flightjs-example-app/components/jquery/component.json: Added.
168 * DoYouEvenBench/flightjs-example-app/components/jquery/composer.json: Added.
169 * DoYouEvenBench/flightjs-example-app/components/jquery/jquery.js: Added.
170 * DoYouEvenBench/flightjs-example-app/components/jquery/jquery.min.js: Added.
171 * DoYouEvenBench/flightjs-example-app/components/mustache: Added.
172 * DoYouEvenBench/flightjs-example-app/components/mustache/mustache.js: Added.
173 * DoYouEvenBench/flightjs-example-app/components/requirejs: Added.
174 * DoYouEvenBench/flightjs-example-app/components/requirejs/require.js: Added.
175 * DoYouEvenBench/flightjs-example-app/index.html: Added.
176 * DoYouEvenBench/flightjs-example-app/karma.conf.js: Added.
177 * DoYouEvenBench/flightjs-example-app/package.json: Added.
178 * DoYouEvenBench/flightjs-example-app/requireMain.js: Added.
180 2013-09-19 Ryosuke Niwa <rniwa@webkit.org>
182 DoYouEvenBench: Indentations in benchmark.js and benchmark.html are all messed up
183 https://bugs.webkit.org/show_bug.cgi?id=121597
185 Reviewed by Anders Carlsson.
189 * DoYouEvenBench/benchmark.html:
190 * DoYouEvenBench/benchmark.js:
191 (SimplePromise.prototype.resolve.else):
192 (SimplePromise.prototype.resolve):
193 (BenchmarkRunner.waitForElement.resolveIfReady):
194 (BenchmarkRunner.waitForElement):
195 (BenchmarkRunner._waitAndWarmUp.Fibonacci):
196 (BenchmarkRunner._finalize):
198 2013-09-19 Ryosuke Niwa <rniwa@webkit.org>
200 Add an AngularJS test to DoYouEvenBench
201 https://bugs.webkit.org/show_bug.cgi?id=121595
203 Reviewed by Antti Koivisto.
205 * DoYouEvenBench/benchmark.html:
206 * DoYouEvenBench/todomvc/architecture-examples/angularjs: Added.
207 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower.json: Added.
208 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components: Added.
209 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular: Added.
210 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular-mocks: Added.
211 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular-mocks/angular-mocks.js: Added.
212 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/angular/angular.js: Added.
213 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common: Added.
214 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common/base.css: Added.
215 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common/base.js: Added.
216 * DoYouEvenBench/todomvc/architecture-examples/angularjs/bower_components/todomvc-common/bg.png: Added.
217 * DoYouEvenBench/todomvc/architecture-examples/angularjs/index.html: Added.
218 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js: Added.
219 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/app.js: Added.
220 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/controllers: Added.
221 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/controllers/todoCtrl.js: Added.
222 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives: Added.
223 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives/todoBlur.js: Added.
224 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives/todoEscape.js: Added.
225 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/directives/todoFocus.js: Added.
226 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/services: Added.
227 * DoYouEvenBench/todomvc/architecture-examples/angularjs/js/services/todoStorage.js: Added.
228 * DoYouEvenBench/todomvc/architecture-examples/angularjs/readme.md: Added.
229 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test: Added.
230 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/config: Added.
231 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/config/testacular.conf.js: Added.
232 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/package.json: Added.
233 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/readme.md: Added.
234 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/unit: Added.
235 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/unit/directivesSpec.js: Added.
236 * DoYouEvenBench/todomvc/architecture-examples/angularjs/test/unit/todoCtrlSpec.js: Added.
238 2013-09-17 Ryosuke Niwa <rniwa@webkit.org>
240 Add a not completely unrealistic DOM Benchmark
241 https://bugs.webkit.org/show_bug.cgi?id=121361
243 Reviewed by Filip Pizlo.
245 Add a DOM benchmark based on TodoMVC for vanilla JS, Ember.js, Backbone.js, and jQuery.
246 We'll add more frameworks and demo apps as we go.
248 * DoYouEvenBench: Added.
249 * DoYouEvenBench/benchmark.html: Added.
250 * DoYouEvenBench/benchmark.js: Added.
252 (SimplePromise.prototype.then):
253 (SimplePromise.prototype.resolve.else):
254 (SimplePromise.prototype.resolve):
255 (BenchmarkRunner.suite):
256 (BenchmarkRunner.waitForElement.resolveIfReady):
257 (BenchmarkRunner.waitForElement):
258 (BenchmarkRunner._removeFrame):
259 (BenchmarkRunner._appendFrame):
260 (BenchmarkRunner._waitAndWarmUp.Fibonacci):
261 (BenchmarkRunner._testName):
262 (BenchmarkRunner._testItemId):
263 (BenchmarkRunner.listSuites.button.onclick):
264 (BenchmarkRunner.listSuites.callNextStep):
265 (BenchmarkRunner.listSuites):
267 (BenchmarkState.prototype.currentSuite):
268 (BenchmarkState.prototype.currentTest):
269 (BenchmarkState.prototype.next):
270 (BenchmarkState.prototype.isFirstTest):
271 (BenchmarkState.prototype.prepareCurrentSuite.frame.onload):
272 (BenchmarkRunner.step):
273 (BenchmarkRunner._runTestAndRecordResults):
274 (BenchmarkRunner._finalize):
275 * DoYouEvenBench/todomvc: Added.
276 * DoYouEvenBench/todomvc/architecture-examples: Added.
277 * DoYouEvenBench/todomvc/architecture-examples/backbone: Added.
278 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower.json: Added.
279 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components: Added.
280 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone: Added.
281 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone.localStorage: Added.
282 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone.localStorage/backbone.localStorage.js: Added.
283 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/backbone/backbone.js: Added.
284 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/jquery: Added.
285 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/jquery/jquery.js: Added.
286 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common: Added.
287 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common/base.css: Added.
288 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common/base.js: Added.
289 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/todomvc-common/bg.png: Added.
290 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/underscore: Added.
291 * DoYouEvenBench/todomvc/architecture-examples/backbone/bower_components/underscore/underscore.js: Added.
292 * DoYouEvenBench/todomvc/architecture-examples/backbone/index.html: Added.
293 * DoYouEvenBench/todomvc/architecture-examples/backbone/js: Added.
294 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/app.js: Added.
295 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/collections: Added.
296 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/collections/todos.js: Added.
297 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/models: Added.
298 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/models/todo.js: Added.
299 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/routers: Added.
300 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/routers/router.js: Added.
301 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/views: Added.
302 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/views/app-view.js: Added.
303 * DoYouEvenBench/todomvc/architecture-examples/backbone/js/views/todo-view.js: Added.
304 * DoYouEvenBench/todomvc/architecture-examples/backbone/readme.md: Added.
305 * DoYouEvenBench/todomvc/architecture-examples/emberjs: Added.
306 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower.json: Added.
307 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components: Added.
308 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember: Added.
309 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember-localstorage-adapter: Added.
310 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember-localstorage-adapter/localstorage_adapter.js: Added.
311 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/ember/ember.js: Added.
312 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/handlebars: Added.
313 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/handlebars/handlebars.js: Added.
314 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/jquery: Added.
315 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/jquery/jquery.js: Added.
316 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common: Added.
317 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.css: Added.
318 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.js: Added.
319 * DoYouEvenBench/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/bg.png: Added.
320 * DoYouEvenBench/todomvc/architecture-examples/emberjs/index.html: Added.
321 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js: Added.
322 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/app.js: Added.
323 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/controllers: Added.
324 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/controllers/todo_controller.js: Added.
325 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/controllers/todos_controller.js: Added.
326 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/libs: Added.
327 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/libs/ember-data.js: Added.
328 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/models: Added.
329 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/models/store.js: Added.
330 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/models/todo.js: Added.
331 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/views: Added.
332 * DoYouEvenBench/todomvc/architecture-examples/emberjs/js/views/edit_todo_view.js: Added.
333 * DoYouEvenBench/todomvc/architecture-examples/emberjs/readme.md: Added.
334 * DoYouEvenBench/todomvc/architecture-examples/emberjs/test.html: Added.
335 * DoYouEvenBench/todomvc/architecture-examples/jquery: Added.
336 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower.json: Added.
337 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components: Added.
338 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/handlebars: Added.
339 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/handlebars/handlebars.js: Added.
340 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/jquery: Added.
341 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/jquery/jquery.js: Added.
342 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common: Added.
343 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common/base.css: Added.
344 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common/base.js: Added.
345 * DoYouEvenBench/todomvc/architecture-examples/jquery/bower_components/todomvc-common/bg.png: Added.
346 * DoYouEvenBench/todomvc/architecture-examples/jquery/css: Added.
347 * DoYouEvenBench/todomvc/architecture-examples/jquery/css/app.css: Added.
348 * DoYouEvenBench/todomvc/architecture-examples/jquery/index.html: Added.
349 * DoYouEvenBench/todomvc/architecture-examples/jquery/js: Added.
350 * DoYouEvenBench/todomvc/architecture-examples/jquery/js/app.js: Added.
351 * DoYouEvenBench/todomvc/architecture-examples/jquery/readme.md: Added.
352 * DoYouEvenBench/todomvc/license.md: Added.
353 * DoYouEvenBench/todomvc/readme.md: Added.
354 * DoYouEvenBench/todomvc/vanilla-examples: Added.
355 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs: Added.
356 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower.json: Added.
357 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components: Added.
358 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common: Added.
359 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common/base.css: Added.
360 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common/base.js: Added.
361 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/bower_components/todomvc-common/bg.png: Added.
362 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/index.html: Added.
363 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js: Added.
364 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/app.js: Added.
365 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/controller.js: Added.
366 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/helpers.js: Added.
367 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/model.js: Added.
368 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/store.js: Added.
369 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/js/view.js: Added.
370 * DoYouEvenBench/todomvc/vanilla-examples/vanillajs/readme.md: Added.
373 2013-09-04 Filip Pizlo <fpizlo@apple.com>
375 Introduce a version of SunSpider that runs for a really long time (about 1 sec on my machine)
377 Rubber stamped by Mark Hahnenberg.
379 This isn't meant for serious VM-to-VM performance comparisons, but it is useful
380 to see how these benchmarks behave when they're completely warmed up.
383 * LongSpider/3d-cube.js: Added.
399 * LongSpider/3d-morph.js: Added.
400 (loops.3500.nx.120.nz.120.morph):
401 * LongSpider/3d-raytrace.js: Added.
419 (Triangle.prototype.intersect):
421 (Scene.prototype.intersect):
422 (Scene.prototype.blocked):
424 (Camera.prototype.generateRayPair):
426 (Camera.prototype.render):
427 (raytraceScene.floorShader):
429 (arrayToCanvasCommands):
430 * LongSpider/access-binary-trees.js: Added.
432 (TreeNode.prototype.itemCheck):
434 * LongSpider/access-fannkuch.js: Added.
436 * LongSpider/access-nbody.js: Added.
438 (Body.prototype.offsetMomentum):
445 (NBodySystem.prototype.advance):
446 (NBodySystem.prototype.energy):
447 * LongSpider/access-nsieve.js: Added.
451 * LongSpider/bitops-3bit-bits-in-byte.js: Added.
454 * LongSpider/bitops-bits-in-byte.js: Added.
457 * LongSpider/bitops-nsieve-bits.js: Added.
461 * LongSpider/controlflow-recursive.js: Added.
465 * LongSpider/crypto-aes.js: Added.
477 * LongSpider/crypto-md5.js: Added.
498 * LongSpider/crypto-sha1.js: Added.
516 * LongSpider/date-format-tofte.js: Added.
546 (Date.prototype.formatDate):
547 * LongSpider/date-format-xparb.js: Added.
548 (Date.prototype.dateFormat):
549 (Date.createNewFormat):
550 (Date.getFormatCode):
553 (Date.formatCodeToRegex):
554 (Date.prototype.getTimezone):
555 (Date.prototype.getGMTOffset):
556 (Date.prototype.getDayOfYear):
557 (Date.prototype.getWeekOfYear):
558 (Date.prototype.isLeapYear):
559 (Date.prototype.getFirstDayOfMonth):
560 (Date.prototype.getLastDayOfMonth):
561 (Date.prototype.getDaysInMonth):
562 (Date.prototype.getSuffix):
564 * LongSpider/math-cordic.js: Added.
570 * LongSpider/math-partial-sums.js: Added.
572 * LongSpider/math-spectral-norm.js: Added.
578 * LongSpider/string-base64.js: Added.
581 * LongSpider/string-fasta.js: Added.
586 * LongSpider/string-tagcloud.js: Added.
587 (.Array.prototype.toJSONString):
588 (.Boolean.prototype.toJSONString):
589 (.Date.prototype.toJSONString):
590 (.Number.prototype.toJSONString):
591 (.Object.prototype.toJSONString):
594 2013-06-10 Radu Stavila <stavila@adobe.com>
596 [CSS Regions] Rename region-overflow to region-fragment
597 https://bugs.webkit.org/show_bug.cgi?id=117397
599 Renamed -webkit-region-overflow to -webkit-region-fragment according to the new working draft
600 at http://www.w3.org/TR/2013/WD-css3-regions-20130528/#the-region-fragment-property
602 Reviewed by Alexander Pavlov.
604 * Layout/resources/regions.css:
606 2013-06-05 Zan Dobersek <zdobersek@igalia.com>
608 Move MemoryInfo under window.internals
609 https://bugs.webkit.org/show_bug.cgi?id=117197
611 Reviewed by Ryosuke Niwa.
613 * resources/runner.js: Remove the setMemoryEnabled call, it's not required anymore as the memory
614 info is now accessed through window.internals and doesn't need the setting to be enabled to work.
616 2013-05-30 Ryosuke Niwa <rniwa@webkit.org>
618 Web Inspector: tests in PerformanceTests/inspector/ are timing out
619 https://bugs.webkit.org/show_bug.cgi?id=77024
621 Reviewed by Andreas Kling.
623 These tests have been disabled for ages and don't conform to the standard format.
626 * inspector: Removed.
627 * inspector/console-300-lines.html: Removed.
628 * inspector/first-open-elements.html: Removed.
629 * inspector/first-open-resources.html: Removed.
630 * inspector/first-open-scripts.html.broken: Removed.
631 * inspector/heap-snapshot-advanced.html: Removed.
632 * inspector/heap-snapshot-performance-test.js: Removed.
633 * inspector/heap-snapshot.html: Removed.
634 * inspector/inspector-startup-time.html: Removed.
635 * inspector/network-append-30-requests.html.broken: Removed.
636 * inspector/performance-test.js: Removed.
637 * inspector/show-panel.html.broken: Removed.
639 2013-05-27 Benjamin Poulain <benjamin@webkit.org>
641 Add a balanced benchmark for QuerySelector
642 https://bugs.webkit.org/show_bug.cgi?id=116811
644 Reviewed by Sam Weinig.
646 The goal of this benchmark is to have an overview of querySelector as typically used
649 It uses queries similar to what is used by popular websites and applies somewhat
650 similar weighting for each type of query.
652 The tree used for the queries is intentionally kept simple to ensure we measure QuerySelector
653 a not purely the overhead of traversal.
655 * CSS/QuerySelector.html: Added.
656 * CSS/resources/query-selector.html: Added.
658 2013-05-18 Ryosuke Niwa <rniwa@webkit.org>
660 Add a performance test for copying
661 https://bugs.webkit.org/show_bug.cgi?id=116394
663 Reviewed by Andreas Kling.
665 Added. We're going to skip this test by default since it's such a microbenchmark, and also because
666 it currently takes 30 minutes to run. As insane as it sounds, each copy takes rouhgly 57 seconds.
668 Running Interactive/CopyAll.html (1 of 1)
669 RESULT Interactive: CopyAll: Time= 57618.05 ms
670 median= 57135.0 ms, stdev= 1542.07271571 ms, min= 55095.0 ms, max= 60913.0 ms
671 RESULT Interactive: CopyAll: JSHeap= 102811.2 bytes
672 median= 103272.0 bytes, stdev= 1115.28148913 bytes, min= 100648.0 bytes, max= 103504.0 bytes
673 RESULT Interactive: CopyAll: Malloc= 446408712.0 bytes
674 median= 459156772.0 bytes, stdev= 20007346.3266 bytes, min= 415564040.0 bytes, max= 462011928.0 bytes
675 Finished: 1766.883236 s
677 * Interactive/CopyAll.html: Added.
680 2013-05-13 Seokju Kwon <seokju.kwon@gmail.com>
682 Web Inspector: Get rid of native-memory-snapshot in performance test
683 https://bugs.webkit.org/show_bug.cgi?id=116013
685 Reviewed by Andreas Kling.
687 Remove native-memory-snapshot.html from PerformanceTests.
689 * inspector/native-memory-snapshot.html: Removed.
690 * inspector/performance-test.js:
691 (initialize_TimeTracker.Timer):
692 (initialize_TimeTracker.Timer.prototype._dump):
693 (initialize_TimeTracker.InspectorTest.runPerformanceTest):
695 2013-04-10 Benjamin Poulain <bpoulain@apple.com>
697 Mass remove all the empty directories
699 Rubberstamped by Ryosuke Niwa.
701 * Bindings/resources: Removed.
703 2013-04-02 Glenn Adams <glenn@skynav.com>
705 Need japanese line layout performance test
706 https://bugs.webkit.org/show_bug.cgi?id=113811
708 Reviewed by Ryosuke Niwa.
710 Will be used by https://bugs.webkit.org/show_bug.cgi?id=105692 to test potential performance regression
711 for Japanese (and other CJK) line break changes.
713 * Layout/LineLayoutJapanese.html: Added.
714 * Skipped: Skip this test by default.
716 2013-03-29 Andrei Bucur <abucur@adobe.com>
718 [CSS Regions] Add performance tests
719 https://bugs.webkit.org/show_bug.cgi?id=113303
721 Reviewed by Antti Koivisto.
723 Add simple performance tests for regions, without nested named flows: a region chain and a flow article.
724 The regions.js script is used to generate the tests and can set the following parameters: the number of regions,
725 the number of paragraphs, the regions width, height, max-height and the propability of a forced break after a paragraph.
727 The tests are skipped for now. They should be enabled once the regions performance is stable enough to create a baseline.
729 * Layout/RegionsAuto.html: Added. A few regions with a short article. The regions have auto-height and some
730 paragraphs (80%) have forced breaks after. Stress test for the auto-height algorithm.
731 * Layout/RegionsAutoMaxHeight.html: Added. A lot of regions with auto-height and max-height. Tests the impact of
732 max-height on the auto-height algorithm.
733 * Layout/RegionsFixed.html: Added. A lot of regions with a long article. Some paragraphs (50%) have forced breaks after.
734 Stress test for the regions layout algorithm.
735 * Layout/RegionsFixedShort.html: Added. A lot of short regions with a long content. Tests the impact of unforced breaks
737 * Layout/resources/regions.css: Added.
744 * Layout/resources/regions.js: Added.
748 2013-03-26 Ryosuke Niwa <rniwa@webkit.org>
750 Add a performance tests for selecting all content in a document
751 https://bugs.webkit.org/show_bug.cgi?id=113358
753 Reviewed by Levi Weintraub.
755 Add a performance test for selecting all. We wait for paint to happen by setTimeout(~, 0).
758 RESULT Interactive: SelectAll: Time= 652.6 ms
759 median= 644.5 ms, stdev= 54.6177144967 ms, min= 599.0 ms, max= 773.0 ms
761 RESULT Interactive: SelectAll: Time= 654.4 ms
762 median= 633.5 ms, stdev= 55.9223145368 ms, min= 600.0 ms, max= 769.0 ms
764 RESULT Interactive: SelectAll: Time= 657.9 ms
765 median= 640.0 ms, stdev= 54.1420159833 ms, min= 604.0 ms, max= 774.0 ms
767 * Interactive/SelectAll.html: Added.
770 2013-03-19 Alexei Filippov <alph@chromium.org>
772 Web Inspector: Fix heap profiler performance tests.
773 https://bugs.webkit.org/show_bug.cgi?id=112701
775 Reviewed by Yury Semikhatsky.
777 The tests were broken by profile types refactoring.
779 * inspector/heap-snapshot-performance-test.js:
780 (test.performanceTest.step0):
781 (test.performanceTest.step1):
783 2013-03-05 Eric Seidel <eric@webkit.org>
785 Add html-parser-threaded perf test now that the threaded parser is enabled by default
786 https://bugs.webkit.org/show_bug.cgi?id=111200
788 Reviewed by Ryosuke Niwa.
790 The old srcdoc test no longer triggers the threaded parser due to compatibility fixes.
792 * Parser/html-parser-threaded.html: Renamed from PerformanceTests/Parser/html-parser-srcdoc.html.
793 * Skipped: Unfortunately this new test is still skipped too.
795 2013-03-04 Eric Seidel <eric@webkit.org>
797 Add PerformanceTest for document startup via iframe append/remove
798 https://bugs.webkit.org/show_bug.cgi?id=111389
800 Reviewed by Kentaro Hara.
802 We'd like pages with lots of iframes to be fast.
803 This test shows that at least for V8/Chromium we spend
804 all our time booting v8.
806 On my 32-core linux machine I see about 70 runs/sec in
807 Release and 5 runs/sec in Debug.
809 * DOM/iframe-append-remove.html: Added.
811 2013-03-03 Ryosuke Niwa <rniwa@webkit.org>
813 Some perf. tests have variances that differ greatly between runs
814 https://bugs.webkit.org/show_bug.cgi?id=97510
816 Reviewed by Benjamin Poulain.
818 In order to control the number of iterations and processes to use from run-perf-tests, always use 20
819 iterations on all tests except Dromaeo, where even doing 5 iterations is prohibitively slow, by default.
820 Without this change, it'll become extremely hard for us to tweak the number of iterations and processes
821 to use from run-perf-tests.
823 * Animation/balls.html:
825 * DOM/resources/dom-perf.js:
826 (runBenchmarkSuite.PerfTestRunner.measureTime):
827 * Dromaeo/resources/dromaeorunner.js:
828 * Layout/floats_100_100.html:
829 * Layout/floats_100_100_nested.html:
830 * Layout/floats_20_100.html:
831 * Layout/floats_20_100_nested.html:
832 * Layout/floats_2_100.html:
833 * Layout/floats_2_100_nested.html:
834 * Layout/floats_50_100.html:
835 * Layout/floats_50_100_nested.html:
836 * Layout/subtree-detaching.html:
837 * Parser/html5-full-render.html:
838 * SVG/SvgHitTesting.html:
839 * resources/runner.js:
840 * resources/results-template.html:
842 2013-02-25 Ryosuke Niwa <rniwa@webkit.org>
844 Use perf.webkit.org JSON format in results page
845 https://bugs.webkit.org/show_bug.cgi?id=110842
847 Reviewed by Benjamin Poulain.
849 Updated the results page template to use the new JSON format.
851 Since new JSON format doesn't contain statistics such as stdev and min, added statistics.js to compute
852 these values. Also use 95% percentile confidence interval instead of standard deviation in various places.
854 * resources/results-template.html: Added statistics.js as dependency.
855 (TestResult): Updated to take a metric instead of its test. Replaced stdev() with confidenceIntervalDelta()
856 now that we have a fancy Statistics class.
858 (TestRun.webkitRevision):
859 (PerfTestMetric): Renamed from PerfTest since this object now encapsulates each measurement (such as time,
860 JS heap, and malloc) in test. Also added a conversion table from a metric name to a unit since new format
861 doesn't contain units.
862 (PerfTestMetric.name): Updated to compute the full metric name from test name and metric name, matching
864 (PerfTestMetric.isMemoryTest): Explicitly look for 'JSHeap' and 'Malloc' tests.
865 (PerfTestMetric.smallerIsBetter):
867 (attachPlot): Deleted the code to deal with tests that don't provide individual iteration measurement
868 since such tests no longer exist. Also fixed up the code compute y-axis range.
870 (createTableRow.markupForRun): Updated to use confidenceIntervalDelta() instead of stdev().
872 (init.addTests): Added. Recursively add metrics.
874 * resources/statistics.js: Added. Imported from perf.webkit.org.
878 (Statistics.squareSum):
879 (Statistics.sampleStandardDeviation):
880 (Statistics.supportedConfidenceLevels):
881 (Statistics.confidenceIntervalDelta):
882 (Statistics.confidenceInterval):
884 2013-02-11 Alexei Filippov <alph@chromium.org>
886 Web Inspector: Split Profiler domain in protocol into Profiler and HeapProfiler
887 https://bugs.webkit.org/show_bug.cgi?id=108653
889 Reviewed by Yury Semikhatsky.
891 Currently CPU and heap profilers share the same domain 'Profiler' in the protocol.
892 In fact these two profile types have not too much in common. So put each into its own domain.
893 It should also help when Profiles panel gets split into several tools.
894 This is the phase 1 which adds InspectorHeapProfilerAgent but doesn't
895 change the original InspectorProfilerAgent.
897 * inspector/heap-snapshot-performance-test.js:
898 (test.performanceTest.cleanup):
900 2013-02-05 Dominik Röttsches <dominik.rottsches@intel.com>
902 Add a performance test for arabic line breaking
903 https://bugs.webkit.org/show_bug.cgi?id=108948
905 Reviewed by Eric Seidel.
907 Adding a perfomance test based to exercise the complex
908 font path used in rendering arabic script.
910 * Layout/ArabicLineLayout.html: Added.
911 * Skipped: New test skipped by default as per Ryosuke's request.
913 2013-01-23 Yury Semikhatsky <yurys@chromium.org>
915 Web Inspector: some measurements are missing in PerformanceTests/inspector/heap-*.html
916 https://bugs.webkit.org/show_bug.cgi?id=107687
918 Reviewed by Pavel Feldman.
920 * inspector/heap-snapshot-performance-test.js: override methods on JSHeapSnapshot instead
921 of HeapSnapshot, otherwise overrides from JSHeapSnapshot will rule.
923 2013-01-18 Ryosuke Niwa <rniwa@webkit.org>
925 Skip DOM/TraverseChildNodes.html as intended in r140070.
929 2013-01-17 Dominic Cooney <dominicc@chromium.org>
931 Unreviewed, re-land r140051.
933 I overzealously rolled this out; the test was intended to be
934 skipped, but was not skipped because of a typo in Skipped. See
935 <https://bugs.webkit.org/show_bug.cgi?id=107210>
937 * Parser/html-parser-srcdoc.html: Added.
938 * Skipped: Big-P Parser.
940 2013-01-17 Sheriff Bot <webkit.review.bot@gmail.com>
942 Unreviewed, rolling out r140051.
943 http://trac.webkit.org/changeset/140051
944 https://bugs.webkit.org/show_bug.cgi?id=107210
946 html-parser-srcdoc.html failing on Chromium Linux Perf and
947 Chromium Mac Perf with a lot of error spew about blocked
948 script execution in 'about:srcdoc' (Requested by dominicc on
951 * Parser/html-parser-srcdoc.html: Removed.
954 2013-01-16 Ryosuke Niwa <rniwa@webkit.org>
956 Remove NodeListsNodeData when it's no longer needed
957 https://bugs.webkit.org/show_bug.cgi?id=107074
959 Reviewed by Darin Adler.
961 Added a micro benchmark to see the benefit of removing NodeListsNodeData.
962 The test traverses all elements in the html5 specification page and accesses childNodes.
964 Don't enable this test for now since it's really a micro benchmark specifically
965 designed to test this patch.
967 * DOM/TraverseChildNodes.html: Added.
968 * Skipped: Don't enable newly added test by default.
969 * resources/results-template.html: Compare against the unscaled unit (e.g. "bytes") as
970 opposed to scaled units such as "K bytes".
971 * resources/runner.js:
972 (.start): Moved the code to call currentTest.setup from measureRunsPerSecondOnce so that
973 it'll be ran for all test types, namely of PerfTestRunner.measureTime.
974 (.measureRunsPerSecondOnce):
976 2013-01-17 Eric Seidel <eric@webkit.org>
978 Add a version of the html-parser benchmark which uses srcdoc instead of document.write so it tests the threaded parser
979 https://bugs.webkit.org/show_bug.cgi?id=107158
981 Reviewed by Ryosuke Niwa.
983 Currently this test even opts-in to the threaded parser if available.
984 We'll remove that line when the threaded parser becomes default or goes away.
986 * Parser/html-parser-srcdoc.html: Added.
988 2013-01-16 Arnaud Renevier <a.renevier@sisa.samsung.com>
990 inconsistency in drawImage with target rect negative dimensions.
991 https://bugs.webkit.org/show_bug.cgi?id=100026
993 Reviewed by Dean Jackson.
995 Create a drawImage performance test. There is no significative change
996 in performance: 27144.6851528 runs/s without the patch; 27153.517612
997 runs/s with the patch. Test is currently skipped.
999 * Canvas/drawimage.html: Added.
1002 2013-01-15 Dominic Cooney <dominicc@chromium.org>
1004 Allow zero values as results from the runFunction.
1005 https://bugs.webkit.org/show_bug.cgi?id=102500
1007 Reviewed by Kentaro Hara.
1009 DOM/DOMWalk.js fails on the Chromium Win perf bot because one or
1010 more parts of the test usually return zero at some point.
1012 * resources/runner.js: Accept merely non-negative results.
1014 2012-12-28 Yury Semikhatsky <yurys@chromium.org>
1016 Web Inspector: rename distanceToWindow to distance
1017 https://bugs.webkit.org/show_bug.cgi?id=105823
1019 Reviewed by Pavel Feldman.
1021 Updated heap profiler performance test after renaming distanceToWindow to distance.
1023 * inspector/heap-snapshot-performance-test.js:
1025 2012-12-18 Hayato Ito <hayato@chromium.org>
1027 Use element.webkitCreateShadowRoot instead of WebKitShadowRoot in PerformanceTests.
1028 https://bugs.webkit.org/show_bug.cgi?id=105256
1030 Reviewed by Dimitri Glazkov.
1032 WebKitShadowRoot constructor was deleted in favor of element.webkitCreateShadowRoot().
1034 * ShadowDOM/ChangingClassNameShadowDOM.html:
1035 * ShadowDOM/ChangingSelect.html:
1036 * ShadowDOM/ContentReprojection.html:
1037 * ShadowDOM/DistributionWithMultipleShadowRoots.html:
1038 * ShadowDOM/LargeDistributionWithLayout.html:
1039 * ShadowDOM/MultipleInsertionPoints.html:
1040 * ShadowDOM/ShadowReprojection.html:
1041 * ShadowDOM/SmallDistributionWithLayout.html:
1043 2012-12-17 Shinya Kawanaka <shinyak@chromium.org>
1045 [Shadow] LargeDistributionWithLayout.html should be updated
1046 https://bugs.webkit.org/show_bug.cgi?id=105242
1048 Reviewed by Ryosuke Niwa.
1050 Since this test was written when distribution took O(N^2). However, now it's almost O(N), so this test finishes
1051 in very short time. We should convert it unit to runs/s.
1053 This test contains a some error to cause test failure, e.g. using obsolete API, so they also should be fixed.
1055 * ShadowDOM/LargeDistributionWithLayout.html:
1057 2012-12-13 Ryosuke Niwa <rniwa@webkit.org>
1059 [chromium perf] DOM/DOMWalk.html failures
1060 https://bugs.webkit.org/show_bug.cgi?id=104866
1062 Reviewed by Eric Seidel.
1064 Use PerfTestRunner.now which in turn uses window.performance.now() when it's available.
1066 * DOM/resources/dom-perf.js:
1069 (BenchmarkSuite.prototype.RunSingle):
1071 2012-12-05 Shinya Kawanaka <shinyak@chromium.org>
1073 [Shadow] Performance tests for ShadowDOM distribution
1074 https://bugs.webkit.org/show_bug.cgi?id=103617
1076 Reviewed by Dimitri Glazkov.
1078 We would like to measure ShadowDOM distribution performance in various cases.
1079 In this patch, we add performance tests for several distribution patterns.
1081 * ShadowDOM/ContentReprojection.html: Added.
1082 * ShadowDOM/DistributionWithMultipleShadowRoots.html: Added.
1083 * ShadowDOM/LargeDistributionWithLayout.html: Added.
1084 * ShadowDOM/MultipleInsertionPoints.html: Added.
1085 * ShadowDOM/ShadowReprojection.html: Added.
1086 * ShadowDOM/SmallDistributionWithLayout.html: Added.
1088 2012-12-05 Shinya Kawanaka <shinyak@chromium.org>
1090 [Shadow] Performance tests of distribution for changing className
1091 https://bugs.webkit.org/show_bug.cgi?id=103612
1093 Reviewed by Dimitri Glazkov.
1095 We would like to measure ShadowDOM performance and compare it to the similar functional HTML without using ShadowDOM.
1096 In this patch, we add a case when classNames of distributed elemeents are changed.
1098 * ShadowDOM/ChangingClassName.html: Added.
1099 * ShadowDOM/ChangingClassNameShadowDOM.html: Added.
1101 2012-12-03 Ryosuke Niwa <rniwa@webkit.org>
1103 Dromaeo should report individual test result
1104 https://bugs.webkit.org/show_bug.cgi?id=99800
1106 Reviewed by Eric Seidel.
1108 Made one small modification to Droameo's webrunner.js so that it reports individual runs/s values
1109 for each subtest. This allows us to compute the aggregated run/s for each iteration like other
1112 Also stop measuring memory usage in Dromaeo tests because some Dromaeo tests (e.g. jslib-modify-jquery)
1113 have unrealistic memory usage, and measuring them at the time of teardown doesn't make much sense.
1115 * Animation/balls.html: Fixed typo: measureValueAync.
1116 * Dromaeo/resources/dromaeo/web/webrunner.js:
1118 * Dromaeo/resources/dromaeorunner.js:
1119 (DRT.setup): Call prepareToMeasureValuesAsync so that DRT.teardown can use meausreValueAsync, and log
1120 "Running 5 times". Since the log container will be inserted before iframe, we need to explicitly insert
1121 the iframe as the first child of the body element to avoid logs from affecting the iframe's position.
1122 Also specify the number of iterations by calling PerfTestRunner.iterationCount() so that we may adjust
1123 the number of iterations in PerfTestRunner.
1125 (DRT.progress): Log individual measurement for each subtest.
1126 (DRT.teardown): Compute the aggregated result for each iteration, and log them using measureValueAsync.
1128 * resources/runner.js:
1129 (PerfTestRunner.logStatistics): Merged printStatistics since it's no longer needed after r131638.
1130 (PerfTestRunner): Removed getAndPrintMemoryStatistics since it was used only in Dromaeo tests but
1131 we no longer measure memory usage in Dromaeo tests.
1133 (start): Increment completedRuns from -1 to 0 for Dromaeo tests where we don't want to ignore the initial
1134 measurement. Note that ignoreWarmUpAndLog ignores the measurements for which completedRuns is negative.
1136 (ignoreWarmUpAndLog): We don't measure memory usage in Dromaeo tests. See above.
1137 (PerfTestRunner.iterationCount): Added. This abstraction allows us to auto-adjust the number of iterations from
1138 run-perf-tests in near future.
1139 (PerfTestRunner.measureValueAsync): Renamed from measureValueAync.
1141 2012-11-29 Shinya Kawanaka <shinyak@chromium.org>
1143 [Shadow] Performance tests of distribution for changing select attribute
1144 https://bugs.webkit.org/show_bug.cgi?id=103611
1146 Reviewed by Hajime Morita.
1148 We would like to measure ShadowDOM performance and compare it to the similar functional HTML without using ShadowDOM.
1149 In this patch, we add a case when select attribute of HTMLContentElement is changed.
1151 * ShadowDOM/ChangingSelect.html: Added.
1152 * ShadowDOM/ChangingSelectWithoutShadow.html: Added.
1155 2012-11-19 Shinya Kawanaka <shinyak@chromium.org>
1157 Changing id, className, or attribute should invalidate distribution
1158 https://bugs.webkit.org/show_bug.cgi?id=100738
1160 Reviewed by Dimitri Glazkov.
1162 Added test code to modify id/class/attribute.
1164 * DOM/ModifyAttribute.html: Added.
1165 * DOM/resources/dom-perf/modify-attribute.js: Added.
1166 (ModifyAttribute.CreateElementToSetUp):
1167 (ModifyAttribute.ModifyId):
1168 (ModifyAttribute.ModifyClass):
1169 (ModifyAttribute.ModifyTitle):
1171 2012-11-14 Ryosuke Niwa <rniwa@webkit.org>
1173 runCount in runner.js should be renamed to iterationCount
1174 https://bugs.webkit.org/show_bug.cgi?id=102208
1176 Reviewed by Tony Chang.
1178 Prior to this patch, there were terminology confusions between "runs" and "iterations".
1179 The term "run" should refer to running a performance test once, and "iteration" should
1180 refer to one measurement in the test. i.e. Executing run-perf-should once will result in
1181 a single "run" of performance tests and each test may execute multiple "iterations"
1182 to complete the run.
1184 Unfortunately, we still overload the meaning of "runs" in "runs/s" (is "function calls/s")
1185 but that could be addressed in a separate patch.
1187 * Animation/balls.html:
1188 * DOM/DOMTable.html:
1189 * DOM/resources/dom-perf.js:
1190 * Layout/floats_100_100.html:
1191 * Layout/floats_100_100_nested.html:
1192 * Layout/floats_20_100.html:
1193 * Layout/floats_20_100_nested.html:
1194 * Layout/floats_2_100.html:
1195 * Layout/floats_2_100_nested.html:
1196 * Layout/floats_50_100.html:
1197 * Layout/floats_50_100_nested.html:
1198 * Layout/subtree-detaching.html:
1199 * Parser/html5-full-render.html:
1200 * SVG/SvgHitTesting.html:
1201 * resources/runner.js:
1203 2012-11-13 Dimitri Glazkov <dglazkov@chromium.org>
1205 Unreviewed, rolling out r134367.
1206 http://trac.webkit.org/changeset/134367
1207 https://bugs.webkit.org/show_bug.cgi?id=100738
1209 Speculative rollout, could have cause Dromaeo setAttribute
1212 * DOM/ModifyAttribute.html: Removed.
1213 * DOM/resources/dom-perf/modify-attribute.js: Removed.
1215 2012-11-12 Shinya Kawanaka <shinyak@chromium.org>
1217 Changing id, className, or attribute should invalidate distribution
1218 https://bugs.webkit.org/show_bug.cgi?id=100738
1220 Reviewed by Dimitri Glazkov.
1222 Added test code to modify id/class/attribute.
1224 * DOM/ModifyAttribute.html: Added.
1225 * DOM/resources/dom-perf/modify-attribute.js: Added.
1226 (ModifyAttribute.CreateElementToSetUp):
1227 (ModifyAttribute.ModifyId):
1228 (ModifyAttribute.ModifyClass):
1229 (ModifyAttribute.ModifyTitle):
1231 2012-11-06 Adam Barth <abarth@webkit.org>
1233 DOMImplementation should use ScriptWrappable
1234 https://bugs.webkit.org/show_bug.cgi?id=101279
1236 Reviewed by Eric Seidel.
1238 This simple PerformanceTest measure how quickly we can access
1239 document.implementation. The goal of this performance test is just to
1240 validate that using ScriptWrappable actually makes the bindings faster.
1242 * Bindings/document-implementation.html: Added.
1244 2012-11-05 Geoffrey Garen <ggaren@apple.com>
1246 WebKit should have performance tests for book chapter reflow
1247 https://bugs.webkit.org/show_bug.cgi?id=101271
1249 Reviewed by Dan Bernstein.
1251 I grabbed a book chapter from the Project Gutenberg front page:
1253 * Layout/chapter-reflow-once.html: Added.
1254 * Layout/chapter-reflow-thrice.html: Added.
1255 * Layout/chapter-reflow-twice.html: Added.
1256 * Layout/chapter-reflow.html: Added.
1258 I also created a torture-test random text generator:
1260 * Layout/chapter-reflow-once-random.html: Added.
1262 2012-10-29 Zoltan Horvath <zoltan@webkit.org>
1264 Turn PageLoad tests into simple performancetests, commit #7 (last)
1265 https://bugs.webkit.org/show_bug.cgi?id=99899
1267 Reviewed by Ryosuke Niwa.
1269 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1270 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1271 to their new location and adds html/js wrappers for them.
1273 This is the #7 (last) commit of the whole patch.
1275 * PageLoad: Removed.
1276 * PageLoad/svg: Removed.
1277 * PageLoad/svg/LICENSES: Removed.
1278 * PageLoad/svg/files: Removed.
1279 * PageLoad/svg/files/33041-Samurai.svg: Removed.
1280 * PageLoad/svg/files/42450-under the see.svg: Removed.
1281 * PageLoad/svg/files/world-iso.svg: Removed.
1282 * PageLoad/svg/svg.pltsuite: Removed.
1283 * SVG/Samurai.html: Added.
1284 * SVG/UnderTheSee.html: Added.
1285 * SVG/WorldIso.html: Added.
1286 * SVG/resources/LICENSES: Copied from PerformanceTests/PageLoad/svg/LICENSES.
1287 * SVG/resources/Samurai.svg: Copied from PerformanceTests/PageLoad/svg/files/33041-Samurai.svg.
1288 * SVG/resources/UnderTheSee.svg: Copied from PerformanceTests/PageLoad/svg/files/42450-under%20the%20see.svg.
1289 * SVG/resources/WorldIso.svg: Copied from PerformanceTests/PageLoad/svg/files/world-iso.svg.
1290 * SVG/resources/svg.pltsuite: Copied from PerformanceTests/PageLoad/svg/svg.pltsuite.
1291 * Skipped: Rename the files on the skipped list also.
1293 2012-10-26 Eric Seidel <eric@webkit.org>
1295 Add a microbenchmark for Hindi (complex-text) line-layout
1296 https://bugs.webkit.org/show_bug.cgi?id=100024
1298 Reviewed by Ryosuke Niwa.
1300 I wrote this to make sure that we don't regress line-breaking performance
1301 for the complex-text codepath. This test has shown me that TOT is
1302 already 5% slower than Safari 6.0.1 here. :(
1304 * Layout/hindi-line-layout.html: Added.
1306 2012-10-26 Zoltan Horvath <zoltan@webkit.org>
1308 Turn PageLoad tests into simple performancetests, commit #6
1309 https://bugs.webkit.org/show_bug.cgi?id=99899
1311 Reviewed by Ryosuke Niwa.
1313 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1314 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1315 to their new location and adds html/js wrappers for them.
1317 This is the #6 commit of the whole patch.
1319 * PageLoad/svg/files/gearflowers.svg: Removed.
1320 * PageLoad/svg/files/hereGear4.svg: Removed.
1321 * PageLoad/svg/files/worldcup.svg: Removed.
1322 * SVG/GearFlowers.html: Added.
1323 * SVG/HereGear.html: Added.
1324 * SVG/Worldcup.html: Added.
1325 * SVG/resources/GearFlowers.svg: Copied from PerformanceTests/PageLoad/svg/files/gearflowers.svg.
1326 * SVG/resources/HereGear.svg: Copied from PerformanceTests/PageLoad/svg/files/hereGear4.svg.
1327 * SVG/resources/Worldcup.svg: Copied from PerformanceTests/PageLoad/svg/files/worldcup.svg.
1328 * Skipped: Rename the files on the skipped list also.
1330 2012-10-26 Zoltan Horvath <zoltan@webkit.org>
1332 Turn PageLoad tests into simple performancetests, commit #5
1333 https://bugs.webkit.org/show_bug.cgi?id=99899
1335 Reviewed by Ryosuke Niwa.
1337 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1338 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1339 to their new location and adds html/js wrappers for them.
1341 This is the #5 commit of the whole patch.
1343 * PageLoad/svg/files/Harvey_Rayner.svg: Removed.
1344 * PageLoad/svg/files/Sierpinski_carpet_6.svg: Removed.
1345 * PageLoad/svg/files/mtsthelens.svg: Removed.
1346 * PageLoad/svg/files/mtsthelens0.jpg: Removed.
1347 * SVG/HarveyRayner.html: Added.
1348 * SVG/MtSaintHelens.html: Added.
1349 * SVG/SierpinskiCarpet.html: Added.
1350 * SVG/resources/HarveyRayner.svg: Copied from PerformanceTests/PageLoad/svg/files/Harvey_Rayner.svg.
1351 * SVG/resources/MtSaintHelens.svg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens.svg.
1352 * SVG/resources/SierpinskiCarpet.svg: Copied from PerformanceTests/PageLoad/svg/files/Sierpinski_carpet_6.svg.
1353 * SVG/resources/mtsthelens0.jpg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens0.jpg.
1354 * Skipped: Rename the files on the skipped list also.
1356 2012-10-25 Zoltan Horvath <zoltan@webkit.org>
1358 Turn PageLoad tests into simple performancetests, commit #4
1359 https://bugs.webkit.org/show_bug.cgi?id=99899
1361 Reviewed by Ryosuke Niwa.
1363 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1364 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1365 to their new location and adds html/js wrappers for them.
1367 This is the #4 commit of the whole patch.
1369 * PageLoad/svg/files/france.svg: Removed.
1370 * PageLoad/svg/files/francobollo_gnome_ezechi_02.svg: Removed.
1371 * SVG/France.html: Added.
1372 * SVG/FrancoBolloGnomeEzechi.html: Added.
1373 * SVG/resources/France.svg: Copied from PerformanceTests/PageLoad/svg/files/france.svg.
1374 * SVG/resources/FrancoBolloGnomeEzechi.svg: Copied from PerformanceTests/PageLoad/svg/files/francobollo_gnome_ezechi_02.svg.
1375 * Skipped: Rename the files on the skipped list also.
1377 2012-10-25 Zoltan Horvath <zoltan@webkit.org>
1379 Turn PageLoad tests into simple performancetests, commit #3
1380 https://bugs.webkit.org/show_bug.cgi?id=99899
1382 Reviewed by Ryosuke Niwa.
1384 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1385 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1386 to their new location and adds html/js wrappers for them.
1388 This is the #3 commit of the whole patch.
1390 * PageLoad/svg/files/42470-flower_from_my_garden_v2.svg: Removed.
1391 * PageLoad/svg/files/44057-drops on a blade.svg: Removed.
1392 * PageLoad/svg/files/deb9frac1.svg: Removed.
1393 * PageLoad/svg/files/food_leif_lodahl_01.svg: Removed.
1394 * SVG/Debian.html: Added.
1395 * SVG/DropsOnABlade.html: Added.
1396 * SVG/FlowerFromMyGarden.html: Added.
1397 * SVG/FoodLeifLodahl.html: Added.
1398 * SVG/resources/Debian.svg: Copied from PerformanceTests/PageLoad/svg/files/deb9frac1.svg.
1399 * SVG/resources/DropsOnABlade.svg: Copied from PerformanceTests/PageLoad/svg/files/44057-drops%20on%20a%20blade.svg.
1400 * SVG/resources/FlowerFromMyGarden.svg: Copied from PerformanceTests/PageLoad/svg/files/42470-flower_from_my_garden_v2.svg.
1401 * SVG/resources/FoodLeifLodahl.svg: Copied from PerformanceTests/PageLoad/svg/files/food_leif_lodahl_01.svg.
1403 2012-10-24 Zoltan Horvath <zoltan@webkit.org>
1405 Turn PageLoad tests into simple performancetests, commit #2
1406 https://bugs.webkit.org/show_bug.cgi?id=99899
1408 Reviewed by Ryosuke Niwa.
1410 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1411 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1412 to their new location and adds html/js wrappers for them.
1414 This is the #2 commit of the whole patch.
1416 * PageLoad/svg/files/cacuts_01.svg: Removed.
1417 * PageLoad/svg/files/cowboy.svg: Removed.
1418 * PageLoad/svg/files/crawfish2_ganson.svg: Removed.
1419 * SVG/Cactus.html: Added.
1420 * SVG/Cowboy.html: Added.
1421 * SVG/CrawFishGanson.html: Added.
1422 * SVG/resources/Cactus.svg: Copied from PerformanceTests/PageLoad/svg/files/cacuts_01.svg.
1423 * SVG/resources/Cowboy.svg: Copied from PerformanceTests/PageLoad/svg/files/cowboy.svg.
1424 * SVG/resources/CrawFishGanson.svg: Copied from PerformanceTests/PageLoad/svg/files/crawfish2_ganson.svg.
1425 * Skipped: Remove az-lizard_benji_park_01.svg from the skipped list.
1427 2012-10-24 Zoltan Horvath <zoltan@webkit.org>
1429 Turn PageLoad tests into simple performancetests, commit #1
1430 https://bugs.webkit.org/show_bug.cgi?id=99899
1432 Reviewed by Ryosuke Niwa.
1434 We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
1435 performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
1436 to their new location and adds html/js wrappers for them.
1438 This is the #1 commit of the whole patch.
1440 * PageLoad/svg/files/az-lizard_benji_park_01.svg: Removed.
1441 * PageLoad/svg/files/bamboo_01.svg: Removed.
1442 * SVG/AzLizardBenjiPark.html: Added.
1443 * SVG/Bamboo.html: Added.
1444 * SVG/resources: Added.
1445 * SVG/resources/AzLizardBenjiPark.svg: Copied from PerformanceTests/PageLoad/svg/files/az-lizard_benji_park_01.svg.
1446 * SVG/resources/Bamboo.svg: Copied from PerformanceTests/PageLoad/svg/files/bamboo_01.svg.
1448 2012-10-24 Zoltan Horvath <zoltan@webkit.org>
1450 REGRESSION(r131982): Skip SVG/SvgNestedUse.html performancetest since it is crashing
1451 https://bugs.webkit.org/show_bug.cgi?id=100262
1455 Skip until proper fix.
1457 * Skipped: Add SVG/SvgNestedUse.html
1459 2012-10-23 Zoltan Horvath <zoltan@webkit.org>
1461 Store the loaded file locally in measurePageLoadTime
1462 https://bugs.webkit.org/show_bug.cgi?id=100172
1464 Reviewed by Csaba Osztrogonác.
1466 Store the loaded file as a local variable instead of attaching it to the test object.
1467 Handle chunkSize inside test.run.
1469 * resources/runner.js:
1472 2012-10-23 Zoltan Horvath <zoltan@webkit.org>
1474 Add measurePageLoadTime function to PerfTestRunner
1475 https://bugs.webkit.org/show_bug.cgi?id=100029
1477 Reviewed by Ryosuke Niwa.
1479 Adopt chunk based loading logic from html5-full-render.html into measurePageLoadTime function,
1480 this is needed to measure the performance and the memory consumption of the PageLoadTests as
1481 we do it for all other performancetests.
1483 * Parser/html5-full-render.html: Move the behavior to runner.js.
1484 * resources/runner.js:
1485 (.): Add measurePageLoadTime function.
1487 2012-10-22 Adam Barth <abarth@webkit.org>
1489 [V8] Vastly simplify V8GCController's NodeVisitor
1490 https://bugs.webkit.org/show_bug.cgi?id=99884
1492 Reviewed by Kentaro Hara.
1494 Adds some performance tests for the garbage collector.
1496 * Bindings/gc-forest.html: Added.
1497 * Bindings/gc-mini-tree.html: Added.
1498 * Bindings/gc-tree.html: Added.
1500 2012-10-17 Ryosuke Niwa <rniwa@webkit.org>
1502 Bump up the number of iterations of html5-full-render to 5
1503 https://bugs.webkit.org/show_bug.cgi?id=99657
1505 Reviewed by Andreas Kling.
1507 Now that html5-full-render.html runs in less than 15 seconds after r131553,
1508 we can afford to get 5 instead of 2 samples.
1510 * Parser/html5-full-render.html:
1512 2012-10-17 Ryosuke Niwa <rniwa@webkit.org>
1514 Rename PerfTestRunner.runPerSecond to PerfTestRunner.measureRunsPerSecond for consistency
1515 https://bugs.webkit.org/show_bug.cgi?id=99642
1517 Reviewed by Dirk Pranke.
1521 * Bindings/append-child.html:
1522 * Bindings/create-element.html:
1523 * Bindings/event-target-wrapper.html:
1524 * Bindings/first-child.html:
1525 * Bindings/get-attribute.html:
1526 * Bindings/get-element-by-id.html:
1527 * Bindings/get-elements-by-tag-name.html:
1528 * Bindings/id-getter.html:
1529 * Bindings/id-setter.html:
1530 * Bindings/insert-before.html:
1531 * Bindings/node-list-access.html:
1532 * Bindings/scroll-top.html:
1533 * Bindings/set-attribute.html:
1534 * Bindings/typed-array-construct-from-array.html:
1535 * Bindings/typed-array-construct-from-same-type.html:
1536 * Bindings/typed-array-construct-from-typed.html:
1537 * Bindings/typed-array-set-from-typed.html:
1538 * Bindings/undefined-first-child.html:
1539 * Bindings/undefined-get-element-by-id.html:
1540 * Bindings/undefined-id-getter.html:
1541 * CSS/CSSPropertySetterGetter.html:
1542 * CSS/CSSPropertyUpdateValue.html:
1543 * CSS/PseudoClassSelectors.html:
1544 * DOM/textarea-dom.html:
1545 * DOM/textarea-edit.html:
1546 * Interactive/resources/window-resize.js:
1547 * Layout/flexbox-column-nowrap.html:
1548 * Layout/flexbox-column-wrap.html:
1549 * Layout/flexbox-row-nowrap.html:
1550 * Layout/flexbox-row-wrap.html:
1551 * Layout/line-layout.html:
1552 * Parser/css-parser-yui.html:
1553 * Parser/innerHTML-setter.html:
1554 * Parser/query-selector-deep.html:
1555 * Parser/query-selector-first.html:
1556 * Parser/query-selector-last.html:
1557 * Parser/simple-url.html:
1558 * Parser/textarea-parsing.html:
1559 * Parser/tiny-innerHTML.html:
1560 * Parser/url-parser.html:
1561 * Parser/xml-parser.html:
1562 * SVG/SvgNestedUse.html:
1563 * resources/runner.js:
1565 2012-10-17 Ryosuke Niwa <rniwa@webkit.org>
1567 Performance test should support asynchronous tests
1568 https://bugs.webkit.org/show_bug.cgi?id=95668
1570 Reviewed by Dirk Pranke.
1572 Added PerfTestRunner.prepareToMeasureValuesAsync and PerfTestRunner.measureValueAsync,
1573 and deployed it in Animation/balls.
1575 * Animation/balls.html:
1576 * resources/runner.js:
1578 2012-10-16 Elliott Sprehn <esprehn@chromium.org>
1580 html5-full-render.html test uses substring but meant substr
1581 https://bugs.webkit.org/show_bug.cgi?id=99495
1583 Reviewed by Adam Barth.
1585 This test intended to chunk up the HTML5 spec into chunks of 500k chars, but used
1586 substring(to,from) instead of substr(from,length) so it actually loaded 5x more
1587 content than was in the HTML5 spec.
1589 * Parser/html5-full-render.html:
1591 2012-10-11 James Simonsen <simonjam@chromium.org>
1593 unprefix window.performance.webkitNow()
1594 https://bugs.webkit.org/show_bug.cgi?id=88278
1596 Reviewed by Tony Gentilcore.
1598 * resources/runner.js: Bind to proper object to avoid invalid invocation errors.
1600 2012-10-08 Ryosuke Niwa <rniwa@webkit.org>
1602 Skip Layout/subtree-detaching.html temporarily as it's very noisy and
1603 takes 112s to run on Chromium Mac. This is tracked by the bug 98708.
1607 2012-10-08 Ryosuke Niwa <rniwa@webkit.org>
1609 Perf. test results page is broken when runs have different sets of tests
1610 https://bugs.webkit.org/show_bug.cgi?id=98691
1612 Reviewed by Daniel Bates.
1614 Add "missing" columns for tests that are missing some runs.
1616 Also fix regressions from the previous patch:
1617 - Make reference run switch work again
1618 - Load jquery plugins from the remote server when the jquery is loaded from the remote server.
1620 * resources/results-template.html:
1622 2012-10-08 Ryosuke Niwa <rniwa@webkit.org>
1624 Perf test pesults page takes forever to load on a machine with a slow Internet connection
1625 https://bugs.webkit.org/show_bug.cgi?id=98561
1627 Reviewed by Ojan Vafai.
1629 Try loading jquery both locally and remotely, and use the same method to load the remaining
1630 jquery plugins when either one succeeds.
1632 * resources/results-template.html:
1634 2012-10-04 Hayato Ito <hayato@chromium.org>
1636 [Refactoring] Introduce a traversal strategy in SelectorChecker
1637 https://bugs.webkit.org/show_bug.cgi?id=97298
1639 Reviewed by Antti Koivisto.
1641 Introduces querySelector() performance tests to check SelectorChecker performance.
1643 * CSS/PseudoClassSelectors.html: Added.
1645 2012-10-03 Philip Rogers <pdr@google.com>
1647 Force GC between PageLoad tests.
1648 https://bugs.webkit.org/show_bug.cgi?id=98203
1650 Reviewed by Ryosuke Niwa.
1652 Previously, our PageLoad PerfTests had multi-modal distributions,
1653 typically with a small cluster at 1-2x the median. This turned out
1654 to be caused by not garbage collecting between tests!
1656 This patch adds a new file, force-gc.html, and loads this file between
1657 PageLoad tests to force a GC. I manually verified that this cleans up
1658 our perf test outliers.
1660 * resources/force-gc.html: Added.
1662 2012-10-03 Julien Chaffraix <jchaffraix@webkit.org>
1664 Add a performance test for subtree detaching
1665 https://bugs.webkit.org/show_bug.cgi?id=98281
1667 Reviewed by Eric Seidel.
1669 The new test tries to stress detaching on a heavy subtree (2 levels deep but with 1,000 nodes per level).
1670 We set display: none on the root and measure the time it takes to update the tree. Note that we will also
1671 measure the time taken by recalcStyle and relayout but I don't think we can avoid that.
1673 * Layout/subtree-detaching.html: Added.
1675 2012-10-02 Ryosuke Niwa <rniwa@webkit.org>
1677 Build fix after r130135. Dromaeo tests only report single memory value,
1678 and computeStatistics should report variance as 0 in such cases.
1680 * resources/runner.js:
1682 2012-10-02 Philip Rogers <pdr@google.com>
1684 Fix PerfTest standard deviation calculation.
1685 https://bugs.webkit.org/show_bug.cgi?id=98115
1687 Reviewed by Ryosuke Niwa.
1689 Previously our standard deviation calculation was incorrect. This patch
1690 updates perftest.py's algorithm to calculate the sample standard deviation
1691 (with Bessel's correction) using Knuth's online algorithm:
1692 http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Online_algorithm
1693 An existing test has been modified to prove our new results.
1695 This patch also updates runner.js to use Bessel's correction in
1696 its sample standard deviation calculation, which is more accurate
1697 for small sample sizes.
1699 Additionally, runner.js has been modified to not calculate
1700 the 'sum' statistic, which was not very useful.
1702 * resources/runner.js:
1703 (PerfTestRunner.computeStatistics):
1705 2012-10-01 Ryosuke Niwa <rniwa@webkit.org>
1707 PerfTestRunner: Move all functions into the closure and always use double quotation for string literals
1708 https://bugs.webkit.org/show_bug.cgi?id=98093
1710 Reviewed by Ojan Vafai.
1712 Move all methods of PerfTestRunner into the closure that defines it.
1713 Also always use double quotations for string literals for consistency.
1715 * resources/runner.js:
1717 2012-10-01 Ryosuke Niwa <rniwa@webkit.org>
1719 Encapsulate private properties in PerfTestRunner better
1720 https://bugs.webkit.org/show_bug.cgi?id=97833
1722 Reviewed by Ojan Vafai.
1724 This patch moves "private" methods and properties of PerfTestRunner into a closure so that they're
1725 inaccssible from outside. Also catch exceptions from test.run, test.done, and other runner code
1726 to ensure we call notifyDone() even if we broke tests. Otherwise DRT will timeout and we end up
1727 waiting for 10 minutes per each broken test on bots.
1729 * resources/runner.js:
1730 (PerfTestRunner.gc):
1731 (logInDocument): Extracted from PerfTestRunner.log.
1732 (PerfTestRunner.log): Moved.
1733 (logFatalError): Added.
1734 (start): Renamed from PerfTestRunner._start.
1735 (scheduleNextRun): Extracted from PerfTestRunner._runLoop. Also catch any exceptions that happen
1736 in the runner and ignoreWarmUpAndLog so that we don't end up timing out. We call logFatalError in
1737 such cases, which in turn ensures notifyDone() is called.
1738 (ignoreWarmUpAndLog): Renamed from PerfTestRunner._ignoreWarmUpAndLog.
1739 (finish): Extracted from PerfTestRunner._runLoop.
1740 (PerfTestRunner.measureTime): Moved. The initialization of runCount is moved into start().
1741 (measureTimeOnce): Renamed from PerfTestRunner._measureTimeOnce.
1742 (PerfTestRunner.runPerSecond): Moved. Ditto about runCount.
1743 (measureRunsPerSecondOnce): Renamed from PerfTestRunner._measureRunsPerSecondOnce.
1744 (callRunAndMeasureTime): Renamed from PerfTestRunner._perSecondRunnerIterator.
1746 2012-10-01 Florin Malita <fmalita@chromium.org>
1748 Add a performance test for nested <use> elements
1749 https://bugs.webkit.org/show_bug.cgi?id=98047
1751 Reviewed by Ryosuke Niwa.
1753 Currently at ~5 runs per second on my workstation, but should go up significantly (100+)
1754 after landing a fix for https://bugs.webkit.org/show_bug.cgi?id=97905.
1756 * SVG/SvgNestedUse.html: Added.
1758 2012-09-28 Ryosuke Niwa <rniwa@webkit.org>
1760 Add back test.runCount for runPerSecond as it's used by tests in fast/harness/perftests.
1762 * resources/runner.js:
1763 (PerfTestRunner.runPerSecond):
1765 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
1767 Build fix after r129824.
1769 * DOM/resources/dom-perf.js:
1770 (runBenchmarkSuite):
1772 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
1774 Remove unused features and reduce code duplications in PerfTestRunner
1775 https://bugs.webkit.org/show_bug.cgi?id=97852
1777 Reviewed by Kentaro Hara.
1779 Made the following refactoring changes:
1780 - Remove PerfTestRunner.info since it's never used.
1781 - Moved the js heap/malloc related functions up to where they belong.
1782 - Moved the initialization of _callsPerIteration, _test, and -description into _start,
1783 and stopped initializing _runFunction and _doneFunction since both test times now
1785 - Made _measureTimeOnce and _measureRunsPerSecondOnce return the measured value
1786 instead of calling ignoreWarmUpAndLog and _runLoop to share the code; they're now
1787 called in _measureRunsPerSecondOnce.
1789 * resources/runner.js:
1790 (PerfTestRunner.storeHeapResults): Moved.
1791 (PerfTestRunner.getUsedMallocHeap): Moved.
1792 (PerfTestRunner.getUsedJSHeap): Moved.
1793 (PerfTestRunner.getAndPrintMemoryStatistics): Moved.
1794 (PerfTestRunner._scheduleNextMeasurementOrNotifyDone): Renamed from _runLoop. Calls
1795 ignoreWarmUpAndLog and schedules the next call.
1796 (PerfTestRunner._measureTimeOnce): Renamed from _runner.
1797 (PerfTestRunner._start): Renamed from initAndStartLoop.
1798 (PerfTestRunner.measureTime):
1799 (PerfTestRunner.runPerSecond):
1800 (PerfTestRunner._measureRunsPerSecondOnce): Renamed from _measureRunsPerSecondOnce.
1801 (PerfTestRunner._perSecondRunnerIterator):
1803 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
1805 PerfTestRunner.run should take an object
1806 https://bugs.webkit.org/show_bug.cgi?id=97743
1808 Reviewed by Kentaro Hara.
1810 Rename PerfTestRunner.run to PerfTestRunner.measureTime and make it take an object instead of
1811 5 arguments. Also get rid of PerfTestRunner._loopsPerRun since it's no longer used (it's always 1).
1813 * CSS/StyleSheetInsert.html:
1814 * DOM/resources/dom-perf.js:
1815 * Layout/floats_100_100.html:
1816 * Layout/floats_100_100_nested.html:
1817 * Layout/floats_20_100.html:
1818 * Layout/floats_20_100_nested.html:
1819 * Layout/floats_2_100.html:
1820 * Layout/floats_2_100_nested.html:
1821 * Layout/floats_50_100.html:
1822 * Layout/floats_50_100_nested.html:
1823 * Parser/html-parser.html:
1824 * Parser/html5-full-render.html:
1825 * SVG/SvgCubics.html:
1826 * SVG/SvgHitTesting.html:
1827 * resources/runner.js:
1829 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
1831 PerformanceTests/CSS/StyleSheetInsert.html has a time-dependent non-Gaussian distribution
1832 https://bugs.webkit.org/show_bug.cgi?id=97741
1834 Reviewed by Antti Koivisto.
1836 Reset the content in the iframe in each run so that the runtime from each run follows a normal distribution.
1837 We can cleanup this code once my patch to replace the argument list of run by an object is landed.
1839 * CSS/StyleSheetInsert.html:
1841 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
1843 Unreviewed. Minor appearance tweaks after r129813.
1845 * resources/results-template.html:
1847 2012-09-27 Ryosuke Niwa <rniwa@webkit.org>
1849 Results page should warn about time-dependent distributions
1850 https://bugs.webkit.org/show_bug.cgi?id=97818
1852 Reviewed by Ojan Vafai.
1854 Add a simple linear regression analysis on results page to detect time-dependent distributions.
1855 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.
1856 Also added time-series graphs per run under the bar graphs so that humans can manually inspect them.
1858 A nice follow up would be to add some normality test (e.g. Shapiro-Wilk) to detect bi-modal distributions
1859 but we probably need to restructure the code to run it asynchronously since normality tests are slow.
1861 * resources/results-template.html:
1863 2012-09-26 Ryosuke Niwa <rniwa@webkit.org>
1865 Use runPerSecond in PerformanceTests/Bindings/typed-array* and event-target-wrapper
1866 https://bugs.webkit.org/show_bug.cgi?id=97625
1868 Reviewed by Eric Seidel.
1870 Use PerfTestRunner.runPerSecond instead of PerfTestRunner.run. Also reduce the fixed number of
1871 elements and iterations in these tests by a factor of 10 since runPerSecond can dynamically
1872 adjust the number of function calls.
1874 * Bindings/event-target-wrapper.html:
1875 * Bindings/typed-array-construct-from-array.html:
1876 * Bindings/typed-array-construct-from-same-type.html:
1877 * Bindings/typed-array-construct-from-typed.html:
1878 * Bindings/typed-array-set-from-typed.html:
1880 2012-09-25 Antti Koivisto <antti@apple.com>
1882 Optimize stylesheet insertions
1883 https://bugs.webkit.org/show_bug.cgi?id=97627
1885 Reviewed by Andreas Kling.
1887 Add synthetic performance test for avoiding style recalcs on stylesheet inserts.
1889 * CSS/StyleSheetInsert.html: Added.
1891 2012-09-25 Ryosuke Niwa <rniwa@webkit.org>
1893 Skip Dromaeo/jslib-modify-jquery.html per bug 95376.
1894 It runs out of memory on Chromium port, and it takes unreasonably long time (~5 minutes)
1895 to run on other ports.
1899 2012-09-20 Ryosuke Niwa <rniwa@webkit.org>
1901 Results page should show indivisual value
1902 https://bugs.webkit.org/show_bug.cgi?id=97178
1904 Reviewed by Tony Chang.
1906 Show indivisual values instead of statistics (min, max, stdev).
1908 * resources/results-template.html:
1910 2012-09-20 Ryosuke Niwa <rniwa@webkit.org>
1912 run-perf-tests should record individual value instead of statistics
1913 https://bugs.webkit.org/show_bug.cgi?id=97155
1915 Reviewed by Hajime Morita.
1917 Report the list of values as "values" so that run-perf-tests can parse them.
1919 * resources/runner.js:
1920 (PerfTestRunner.computeStatistics):
1921 (PerfTestRunner.printStatistics):
1923 2012-09-20 Sheriff Bot <webkit.review.bot@gmail.com>
1925 Unreviewed, rolling out r129091.
1926 http://trac.webkit.org/changeset/129091
1927 https://bugs.webkit.org/show_bug.cgi?id=97205
1929 It broke perf tests everywhere (Requested by Ossy on #webkit).
1931 * resources/runner.js:
1932 (PerfTestRunner.computeStatistics):
1933 (PerfTestRunner.printStatistics):
1935 2012-09-19 Ryosuke Niwa <rniwa@webkit.org>
1937 run-perf-tests should record indivisual value instead of statistics
1938 https://bugs.webkit.org/show_bug.cgi?id=97155
1940 Reviewed by Hajime Morita.
1942 Report the list of values as "values" so that run-perf-tests can parse them.
1944 * resources/runner.js:
1945 (PerfTestRunner.computeStatistics):
1946 (PerfTestRunner.printStatistics):
1948 2012-09-17 Ryosuke Niwa <rniwa@webkit.org>
1950 Perf test results is incomprehensive
1951 https://bugs.webkit.org/show_bug.cgi?id=94668
1953 Reviewed by Eric Seidel.
1955 Overhauled the results page to have a tabular view. Clicking on each row shows a flot graph we used to have.
1956 For each run and test, we show the mean value with the standard deviation along with the percent difference
1957 against the reference run chosen by the user if the difference is statistically significant; it also indicates
1958 whether the new value is progression or not.
1960 The unit of each test is adjusted automatically using SI prefixes (Kilo, Mega, Milli), and rows can be sorted
1961 by each column. Time and memory results are separated into two tabs.
1963 * resources/jquery.tablesorter.min.js: Added.
1964 * resources/results-template.html:
1966 2012-09-14 Ryosuke Niwa <rniwa@webkit.org>
1968 Use performance.webkitNow in PerfTestRunner
1969 https://bugs.webkit.org/show_bug.cgi?id=92826
1971 Reviewed by Eric Seidel.
1973 Use performance.webkitNow with Date.now as a fallback for more accurate time measurements.
1975 * resources/runner.js:
1976 (PerfTestRunner._runner):
1977 (PerfTestRunner._perSecondRunnerIterator):
1979 2012-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
1981 Unreviewed, rolling out r128562.
1982 http://trac.webkit.org/changeset/128562
1983 https://bugs.webkit.org/show_bug.cgi?id=96747
1985 It broke perf tests on Qt and Chromium (Requested by Ossy on
1988 * resources/runner.js:
1989 (PerfTestRunner._runner):
1990 (PerfTestRunner._perSecondRunnerIterator):
1992 2012-09-14 Ryosuke Niwa <rniwa@webkit.org>
1994 Use performance.webkitNow in PerfTestRunner
1995 https://bugs.webkit.org/show_bug.cgi?id=92826
1997 Reviewed by Eric Seidel.
1999 Use performance.webkitNow with Date.now as a fallback for more acurate time measurements.
2001 * resources/runner.js:
2002 (PerfTestRunner._runner):
2003 (PerfTestRunner._perSecondRunnerIterator):
2005 2012-08-23 Ilya Tikhonovsky <loislo@chromium.org>
2007 WebInspector: unreviewed single line test fix.
2009 The test has to open profiles panel explicitly because it is creating lazily.
2011 * inspector/heap-snapshot-performance-test.js:
2013 2012-08-15 Scott Graham <scottmg@chromium.org>
2015 Rename window.internals.fastMallocStatistics to mallocStatistics
2016 https://bugs.webkit.org/show_bug.cgi?id=94033
2018 Reviewed by Adam Barth.
2020 * resources/runner.js:
2021 (PerfTestRunner.storeHeapResults):
2022 (PerfTestRunner.getUsedMallocHeap):
2023 (PerfTestRunner.getAndPrintMemoryStatistics):
2024 (PerfTestRunner.initAndStartLoop):
2026 2012-08-10 Ryosuke Niwa <rniwa@webkit.org>
2028 Unreviewed; fix an insanely silly typo.
2030 * resources/results-template.html:
2032 2012-08-09 Ryosuke Niwa <rniwa@webkit.org>
2034 Another build fix after r125178.
2036 * resources/runner.js:
2038 2012-08-09 Zoltan Horvath <zoltan@webkit.org>
2040 Add memory measurement to balls.html and dromaeorunner.js
2041 https://bugs.webkit.org/show_bug.cgi?id=93617
2043 Reviewed by Adam Barth.
2045 Since we added memory measurement support to performance tests we need to modify these tests.
2047 * Animation/balls.html:
2048 * Dromaeo/resources/dromaeorunner.js:
2050 2012-08-09 Zoltan Horvath <zoltan@webkit.org>
2052 JSHeap and FastMallocStatistics based memory measurement for performance-tests
2053 https://bugs.webkit.org/show_bug.cgi?id=90858
2055 Reviewed Ryosuke Niwa.
2057 Measure the memory usage of the performancetests with the help of the windows.memory.usedJSHeapSize
2058 object and the window.internals.fastMallocStatistics() function call.
2060 * resources/runner.js:
2061 (PerfTestRunner.logStatistics):
2062 (PerfTestRunner.printStatistics):
2063 (PerfTestRunner.storeHeapResults):
2064 (PerfTestRunner.getUsedFastMallocHeap):
2065 (PerfTestRunner.getUsedJSHeap):
2066 (PerfTestRunner.getAndPrintMemoryStatistics):
2067 (PerfTestRunner.ignoreWarmUpAndLog):
2068 (PerfTestRunner.initAndStartLoop):
2070 2012-08-08 Benjamin Poulain <benjamin@webkit.org>
2072 Calling internals from the performance test runner prevents manual running
2073 https://bugs.webkit.org/show_bug.cgi?id=93527
2075 Reviewed by Ryosuke Niwa.
2077 Since r125065, it is impossible to run the Performance tests manually. The problem is
2078 "internals" is not defined when running outside the test runner, so the whole script
2081 * resources/runner.js: Verify is window.internals is available before invoking something on it.
2083 2012-08-08 Zoltan Horvath <zoltan@webkit.org>
2085 Set access to MemoryInfo enabled for the performance tests
2086 https://bugs.webkit.org/show_bug.cgi?id=92498
2088 Reviewed by Ryosuke Niwa.
2090 We need access to console.memory for the memory measurements.
2092 * resources/runner.js:
2094 2012-08-07 Ryosuke Niwa <rniwa@webkit.org>
2096 run-perf-tests should support --no-show-results
2097 https://bugs.webkit.org/show_bug.cgi?id=93409
2099 Reviewed by Dirk Pranke.
2101 Add a flot as a separate file and load it as an external resource.
2103 Also include scripts as external resources from both local filesystem and webkit.org
2104 so that it continues to work regardless of where you put it.
2106 It breaks when someone else receives the file and save it somewhere and doesn't have
2107 a network connection but that seems like a scenario we don't care that much.
2109 * resources/jquery.flot.min.js: Added.
2110 * resources/results-template.html:
2112 2012-08-06 Ryosuke Niwa <rniwa@webkit.org>
2114 run-webkit-tests should have ability to add description to its JSON output
2115 https://bugs.webkit.org/show_bug.cgi?id=93296
2117 Reviewed by Dirk Pranke.
2119 Parse description and show it with the WebKit revision on the results page. Also use bar graphs
2120 instead of line graphs since we're not depicting the time series here per arv's suggestion.
2121 Finally, add the ability to adjust y-axis between the adjusted value and 0 (plot even doesn't adjust
2122 y-axis automatically now) by a mouse click.
2124 * resources/results-template.html:
2126 2012-08-04 Ryosuke Niwa <rniwa@webkit.org>
2128 Use testRunner instead of layoutTestController in performance tests
2129 https://bugs.webkit.org/show_bug.cgi?id=93184
2131 Reviewed by Adam Barth.
2133 * Animation/balls.html:
2134 * Dromaeo/resources/dromaeorunner.js:
2135 * inspector/console-300-lines.html:
2136 * inspector/inspector-startup-time.html:
2137 * inspector/network-append-30-requests.html.broken:
2138 * inspector/show-panel.html.broken:
2139 * resources/runner.js:
2140 (PerfTestRunner.logInfo):
2141 (PerfTestRunner.initAndStartLoop):
2143 2012-08-02 Arnaud Renevier <a.renevier@sisa.samsung.com>
2145 TypedArray set method is slow when called with another typed array
2146 https://bugs.webkit.org/show_bug.cgi?id=92556
2148 Reviewed by Kenneth Russell.
2150 * Bindings/typed-array-set-from-typed.html: Added.
2152 2012-07-28 Ryosuke Niwa <rniwa@webkit.org>
2154 run-perf-tests should generate a results page
2155 https://bugs.webkit.org/show_bug.cgi?id=92575
2157 Reviewed by Eric Seidel.
2159 Add a results page template. This page includes flot and flot.fillbetween.
2160 jQuery and the json that contains test results are injected by run-perf-tests.
2162 * resources/results-template.html: Added.
2164 2012-07-27 Arnaud Renevier <a.renevier@sisa.samsung.com>
2166 use createUninitialized when creating TypedArray from another array
2167 https://bugs.webkit.org/show_bug.cgi?id=92518
2169 Reviewed by Kenneth Russell.
2171 * Bindings/typed-array-construct-from-array.html: Added.
2173 2012-07-27 Ryosuke Niwa <rniwa@webkit.org>
2175 Add more Russian replay performance tests
2176 https://bugs.webkit.org/show_bug.cgi?id=92462
2178 Reviewed by Tony Chang.
2180 Add more Russian sites as suggested by loislo.
2182 * Replay/Russian/lenta.ru.replay: Added.
2183 * Replay/Russian/www.ixbt.com.replay: Added.
2184 * Replay/Russian/www.kp.ru.replay: Added.
2185 * Replay/Russian/www.liveinternet.ru.replay: Added.
2186 * Replay/Russian/www.pravda.ru.replay: Added.
2188 2012-07-26 Arnaud Renevier <a.renevier@sisa.samsung.com>
2190 constructing TypedArray from another TypedArray is slow
2191 https://bugs.webkit.org/show_bug.cgi?id=90838
2193 Reviewed by Kenneth Russell.
2195 * Bindings/typed-array-construct-from-same-type.html: Added.
2196 * Bindings/typed-array-construct-from-typed.html: Added.
2198 2012-07-25 Ryosuke Niwa <rniwa@webkit.org>
2200 Import more replay performance tests from Mozilla's Tp5 test suite
2201 https://bugs.webkit.org/show_bug.cgi?id=92229
2203 Reviewed by Andreas Kling.
2205 Add more replay tests based on Mozilla's Tp5 test suite [1]. Unfortunately,
2206 we cannot import all URLs because some of them are not archived on archive.org
2207 and others do not replay well on web-page-replay. Nonethless, we're still adding
2208 60+ URLs in this patch.
2210 [1] http://people.mozilla.org/~jmaher/tp5.manifest
2212 * Replay/Chinese: Added.
2213 * Replay/Chinese/chinaz.com.replay: Added.
2214 * Replay/Chinese/www.163.com.replay: Added.
2215 * Replay/Chinese/www.alipay.com.replay: Added.
2216 * Replay/Chinese/www.baidu.com.replay: Added.
2217 * Replay/Chinese/www.csdn.net.replay: Added.
2218 * Replay/Chinese/www.douban.com.replay: Added.
2219 * Replay/Chinese/www.hao123.com.replay: Added.
2220 * Replay/Chinese/www.xinhuanet.com.replay: Added.
2221 * Replay/Chinese/www.xunlei.com.replay: Added.
2222 * Replay/Chinese/www.youku.com.replay: Added.
2223 * Replay/English: Added.
2224 * Replay/English/beatonna.livejournal.com.replay: Added.
2225 * Replay/English/cakewrecks.blogspot.com.replay: Added.
2226 * Replay/English/chemistry.about.com.replay: Added.
2227 * Replay/English/digg.com.replay: Added.
2228 * Replay/English/en.wikipedia.org-rorschach_test.replay: Added.
2229 * Replay/English/icanhascheezburger.com.replay: Added.
2230 * Replay/English/imgur.com-gallery.replay: Added.
2231 * Replay/English/online.wsj.com.replay: Added.
2232 * Replay/English/stockoverflow.com-best-comment.replay: Added.
2233 * Replay/English/www.alibaba.com.replay: Added.
2234 * Replay/English/www.amazon.com-kindle.replay: Added.
2235 * Replay/English/www.apple.com.replay: Added.
2236 * Replay/English/www.cnet.com.replay: Added.
2237 * Replay/English/www.dailymotion.com.replay: Added.
2238 * Replay/English/www.ehow.com-prevent-fire.replay: Added.
2239 * Replay/English/www.filestube.com-amy-adams.replay: Added.
2240 * Replay/English/www.foxnews.replay: Added.
2241 * Replay/English/www.huffingtonpost.com.replay: Added.
2242 * Replay/English/www.imdb.com-twilight.replay: Added.
2243 * Replay/English/www.mozilla.com-all-order.replay: Added.
2244 * Replay/English/www.php.net.replay: Added.
2245 * Replay/English/www.reddit.com.replay: Added.
2246 * Replay/English/www.telegraph.co.uk.replay: Added.
2247 * Replay/English/www.w3.org-htmlcss.replay: Added.
2248 * Replay/English/www.w3schools.com-html.replay: Added.
2249 * Replay/English/www.youtube.com-music.replay: Added.
2250 * Replay/French: Added.
2251 * Replay/French/www.orange.fr.replay: Added.
2252 * Replay/German: Added.
2253 * Replay/Italian: Added.
2254 * Replay/Italian/www.repubblica.it.replay: Added.
2255 * Replay/Japanese/entameblog.seesaa.net.replay: Added.
2256 * Replay/Japanese/www.hatena.ne.jp.replay: Added.
2257 * Replay/Japanese/www.nicovideo.jp.replay: Added.
2258 * Replay/Korean: Added.
2259 * Replay/Korean/www.naver.com.replay: Added.
2260 * Replay/Persian: Added.
2261 * Replay/Persian/blogfa.com.replay: Added.
2262 * Replay/Polish: Added.
2263 * Replay/Polish/www.wp.pl.replay: Added.
2264 * Replay/Portuguese: Added.
2265 * Replay/Portuguese/www.uol.com.br.replay: Added.
2266 * Replay/Russian: Added.
2267 * Replay/Russian/vkontakte.ru-help.replay: Added.
2268 * Replay/Russian/www.rambler.ru.replay: Added.
2269 * Replay/Russian/www.ucoz.ru.replay: Added.
2270 * Replay/Russian/www.yandex.ru.replay: Added.
2271 * Replay/Spanish: Added.
2272 * Replay/Spanish/www.taringa.net.replay: Added.
2274 2012-07-24 Ryosuke Niwa <rniwa@webkit.org>
2276 Add some Japanese and Swedish websites to replay tests
2277 https://bugs.webkit.org/show_bug.cgi?id=92076
2279 Reviewed by Andreas Kling.
2281 Added new replay tests as follows.
2283 * Replay/Japanese: Added.
2284 * Replay/Japanese/2ch.net-newsplus.replay: Added.
2285 * Replay/Japanese/ja.wikipedia.org.replay: Added.
2286 * Replay/Japanese/www.livedoor.com.replay: Added.
2287 * Replay/Japanese/www.rakuten.co.jp.replay: Added.
2288 * Replay/Japanese/www.yahoo.co.jp.replay: Added.
2289 * Replay/Swedish: Added.
2290 * Replay/Swedish/www.flashback.se.replay: Added.
2291 * Replay/Swedish/www.tradera.com.replay: Added.
2292 * Replay/www.techcrunch.com.replay: Added.
2294 2012-07-18 MORITA Hajime <morrita@google.com>
2296 Add window resize benchmark
2297 https://bugs.webkit.org/show_bug.cgi?id=91070
2299 Reviewed by Ryosuke Niwa.
2301 Added window-resize.html which exercise html5.html. This test
2302 resizes the window and forces re-layout repeatedly.
2304 * Interactive/resources/window-resize.js: Added.
2305 * Interactive/window-resize.html: Added.
2306 * Parser/resources/html5.html: Modified to inject driver scripts.
2308 2012-07-11 Philip Rogers <pdr@google.com>
2310 Add a performance test for hit testing in SVG
2311 https://bugs.webkit.org/show_bug.cgi?id=90811
2313 Reviewed by Ryosuke Niwa.
2315 The shape rendering code is changing a lot and I'd like a performance test to
2316 make sure we don't regress, and to track our improvements.
2318 Performance results in my Linux desktop:
2319 RESULT SVG: SvgHitTesting= 105.0 ms
2320 median= 103.5 ms, stdev= 4.60434577329 ms, min= 101.0 ms, max= 116.0 ms
2322 RESULT SVG: SvgHitTesting= 97.8 ms
2323 median= 96.5 ms, stdev= 2.67581763205 ms, min= 95.0 ms, max= 102.0 ms
2325 RESULT SVG: SvgHitTesting= 104.3 ms
2326 median= 104.0 ms, stdev= 1.41774468788 ms, min= 102.0 ms, max= 107.0 ms
2328 RESULT SVG: SvgHitTesting= 103.6 ms
2329 median= 103.5 ms, stdev= 1.2 ms, min= 102.0 ms, max= 106.0 ms
2331 * SVG/SvgHitTesting.html: Added.
2333 2012-07-03 Jan Keromnes <janx@linux.com>
2335 Web Inspector: WebInspector.TextViewer should be renamed WebInspector.TextEditor
2336 https://bugs.webkit.org/show_bug.cgi?id=89939
2338 Reviewed by Vsevolod Vlasov.
2340 * inspector/first-open-scripts.html.broken:
2342 2012-06-22 Philip Rogers <pdr@google.com>
2344 Make SvgCubics performance test more consistent
2345 https://bugs.webkit.org/show_bug.cgi?id=89778
2347 Reviewed by Ryosuke Niwa.
2349 Previously this test ran twice for each iteration, but this led to inconsistent repaints.
2350 This change updates the test to only run once per iteration, and adds even more cubics
2351 so that the test runs consistently in the 80ms range on my Linux desktop.
2353 Performance results on my desktop:
2354 RESULT SVG: SvgCubics= 80.5 ms
2355 median= 82.0 ms, stdev= 3.04138126515 ms, min= 75.0 ms, max= 85.0 ms
2357 RESULT SVG: SvgCubics= 80.1 ms
2358 median= 81.0 ms, stdev= 4.27668095607 ms, min= 74.0 ms, max= 88.0 ms
2360 RESULT SVG: SvgCubics= 81.45 ms
2361 median= 83.0 ms, stdev= 4.01839520207 ms, min= 75.0 ms, max= 89.0 ms
2363 RESULT SVG: SvgCubics= 78.9 ms
2364 median= 80.0 ms, stdev= 4.75289385533 ms, min= 72.0 ms, max= 87.0 ms
2366 * SVG/SvgCubics.html:
2368 2012-06-22 Ilya Tikhonovsky <loislo@chromium.org>
2370 Web Inspector: partially instrument DOM Tree native memory.
2371 https://bugs.webkit.org/show_bug.cgi?id=89568
2373 This patch adds MemoryInstrumentation class that counts all visited
2374 objects and calls reportMemoryUsage.
2376 Reviewed by Yury Semikhatsky.
2378 * inspector/native-memory-snapshot.html:
2380 2012-06-21 Kentaro Hara <haraken@chromium.org>
2382 Add a perf-test for innerHTML setter for a large DOM tree
2383 https://bugs.webkit.org/show_bug.cgi?id=89723
2385 Reviewed by Ryosuke Niwa.
2387 We want a benchmark for innerHTML setter for the following reason:
2389 - innerHTML setter is widely used in the real world.
2390 - I am planning to optimize innerHTML setter in the near future.
2391 - I want to use the innerHTML setter benchmark for the patch of bug 88834.
2393 Performance results in my Linux desktop:
2395 RESULT Parser: innerHTML-setter= 289.782649995 runs/s
2396 median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s
2398 RESULT Parser: innerHTML-setter= 289.020706132 runs/s
2399 median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s
2401 RESULT Parser: innerHTML-setter= 288.912051701 runs/s
2402 median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s
2404 RESULT Parser: innerHTML-setter= 288.644186666 runs/s
2405 median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s
2407 RESULT Parser: innerHTML-setter= 288.698714577 runs/s
2408 median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s
2410 * Parser/innerHTML-setter.html: Added.
2412 2012-06-20 Philip Rogers <pdr@google.com>
2414 Add a performance test for paths in SVG
2415 https://bugs.webkit.org/show_bug.cgi?id=89547
2417 Reviewed by Ryosuke Niwa.
2419 This change adds the first performance test for SVG paths.
2420 In the test we modify complex cubic paths in several ways, testing:
2421 transformations, clipping, d attribute changes, stroke properties,
2422 text on a path, and opacity.
2424 Sample test results on my Linux desktop:
2425 RESULT SVG: SvgCubics= 68.85 ms
2426 median= 69.5 ms, stdev= 4.70398767005 ms, min= 56.0 ms, max= 75.0 ms
2428 RESULT SVG: SvgCubics= 68.4 ms
2429 median= 69.0 ms, stdev= 3.51283361405 ms, min= 59.0 ms, max= 74.0 ms
2431 RESULT SVG: SvgCubics= 66.95 ms
2432 median= 67.0 ms, stdev= 3.4420197559 ms, min= 59.0 ms, max= 74.0 ms
2434 RESULT SVG: SvgCubics= 70.2 ms
2435 median= 71.5 ms, stdev= 3.23419232576 ms, min= 63.0 ms, max= 74.0 ms
2438 * SVG/SvgCubics.html: Added.
2440 2012-06-20 Tom Zakrajsek <tomz@codeaurora.org>
2442 Import themaninblue.com/experiment/AnimationBenchmark/ as performance tests
2443 https://bugs.webkit.org/show_bug.cgi?id=78789
2445 Reviewed by Ryosuke Niwa.
2447 Added PerfTestRunner fixture around it.
2449 * Animation/balls.html: Added.
2451 2012-06-18 Ilya Tikhonovsky <loislo@chromium.org>
2453 Web Inspector: native memory snapshot performance and coverage test implementation.
2454 https://bugs.webkit.org/show_bug.cgi?id=89363
2456 We have to track the performance of MemoryAgent.getProcessMemoryDistribution.
2457 Also this test will work as a burn down chart for Unknown memory metric.
2459 Reviewed by Pavel Feldman.
2461 * inspector/native-memory-snapshot.html: Added.
2462 * inspector/performance-test.js:
2463 (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer):
2464 (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.reportSize):
2465 (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
2466 (initialize_TimeTracker.InspectorTest.runPerformanceTest):
2468 2012-06-05 Alexei Filippov <alexeif@chromium.org>
2470 Web Inspector: serialize edge counts instead of indexes in heap snapshot
2471 https://bugs.webkit.org/show_bug.cgi?id=88324
2473 The serialized node structure currently holds an index
2474 of its first containment edge in the edges array.
2475 The index can be quite big (up to 7 digits for large snapshots).
2476 The patch changes the serialization format to pass
2477 node containment edge count instead. For most nodes the count
2478 is just a single digit number.
2479 This reduces serialized snapshot size and therefore its transfer time.
2481 Reviewed by Yury Semikhatsky.
2483 * inspector/heap-snapshot-performance-test.js:
2485 2012-06-04 Alexei Filippov <alexeif@chromium.org>
2487 Web Inspector: speed up _calculateRetainedSizes function
2488 https://bugs.webkit.org/show_bug.cgi?id=87863
2490 Reviewed by Yury Semikhatsky.
2492 * inspector/heap-snapshot-advanced.html: Added.
2493 * inspector/heap-snapshot-performance-test.js: Copied from PerformanceTests/inspector/heap-snapshot.html.
2494 (test.performanceTest.step0):
2495 (test.performanceTest.step1):
2496 (test.performanceTest.step2):
2497 (test.performanceTest.cleanup):
2498 (test.performanceTest.done):
2499 (test.performanceTest):
2501 * inspector/heap-snapshot.html:
2503 2012-06-03 Kentaro Hara <haraken@chromium.org>
2505 [perf-test] Add a benchmark of querySelector() for an element that appears in the depths in the document
2506 https://bugs.webkit.org/show_bug.cgi?id=88202
2508 Reviewed by Ryosuke Niwa.
2510 query-selector-first.html tests querySelector() for an element
2511 that appears at the head of the document. query-selector-last.html
2512 tests querySelector() for an element that appears at the tail of
2513 the document. In addition, we want a benchmark of querySelector()
2514 for an element that appears in the depths in the document.
2516 Test results in my Linux desktop:
2518 RESULT Parser: query-selector-deep= 460.776980611 runs/s
2519 median= 460.947503201 runs/s, stdev= 1.72274941942 runs/s, min= 455.696202532 runs/s, max= 463.32046332 runs/s
2521 RESULT Parser: query-selector-deep= 458.925050915 runs/s
2522 median= 459.183673469 runs/s, stdev= 1.47930124139 runs/s, min= 454.545454545 runs/s, max= 460.947503201 runs/s
2524 RESULT Parser: query-selector-deep= 461.866981491 runs/s
2525 median= 461.538461538 runs/s, stdev= 1.14613123359 runs/s, min= 459.183673469 runs/s, max= 463.917525773 runs/s
2527 RESULT Parser: query-selector-deep= 453.922010788 runs/s
2528 median= 454.258855898 runs/s, stdev= 1.77279123317 runs/s, min= 447.204968944 runs/s, max= 455.696202532 runs/s
2530 RESULT Parser: query-selector-deep= 454.666321221 runs/s
2531 median= 454.545454545 runs/s, stdev= 1.65775667417 runs/s, min= 451.127819549 runs/s, max= 456.852791878 runs/s
2533 * Parser/query-selector-deep.html: Added.
2535 2012-06-03 Kentaro Hara <haraken@chromium.org>
2537 [perf-test] Make query-selector-last.html more realistic
2538 https://bugs.webkit.org/show_bug.cgi?id=88203
2540 Reviewed by Ryosuke Niwa.
2542 query-selector-last.html tests querySelector() for an element
2543 that appears after 1000 div elements, all of which have the same
2544 id and class. To test the performance of querySelector() under
2545 a lot of ids and classes, we should make the ids and classes of
2546 the 1000 elements different.
2548 This patch degrades the performance of query-selector-last.html
2552 RESULT Parser: query-selector-last= 476.382274152 runs/s
2553 median= 476.821192053 runs/s, stdev= 1.14578875814 runs/s, min= 474.308300395 runs/s, max= 478.087649402 runs/s
2555 RESULT Parser: query-selector-last= 478.423061861 runs/s
2556 median= 478.723404255 runs/s, stdev= 1.54876867255 runs/s, min= 473.684210526 runs/s, max= 481.347773767 runs/s
2558 RESULT Parser: query-selector-last= 479.849287174 runs/s
2559 median= 480.0 runs/s, stdev= 1.69849752498 runs/s, min= 475.561426684 runs/s, max= 481.927710843 runs/s
2561 RESULT Parser: query-selector-last= 476.765438846 runs/s
2562 median= 477.453580902 runs/s, stdev= 1.8724488664 runs/s, min= 471.821756225 runs/s, max= 478.723404255 runs/s
2564 RESULT Parser: query-selector-last= 481.715340644 runs/s
2565 median= 481.637742305 runs/s, stdev= 1.81446361145 runs/s, min= 475.561426684 runs/s, max= 483.675937122 runs/s
2568 RESULT Parser: query-selector-last= 458.866623582 runs/s
2569 median= 459.183673469 runs/s, stdev= 1.48881464737 runs/s, min= 453.972257251 runs/s, max= 460.947503201 runs/s
2571 RESULT Parser: query-selector-last= 460.363532897 runs/s
2572 median= 460.358056266 runs/s, stdev= 1.58512056995 runs/s, min= 456.273764259 runs/s, max= 462.130937099 runs/s
2574 RESULT Parser: query-selector-last= 457.727448451 runs/s
2575 median= 458.015267176 runs/s, stdev= 1.23681915516 runs/s, min= 453.972257251 runs/s, max= 459.183673469 runs/s
2577 RESULT Parser: query-selector-last= 465.57336853 runs/s
2578 median= 465.717981889 runs/s, stdev= 1.6616925374 runs/s, min= 460.947503201 runs/s, max= 467.532467532 runs/s
2580 RESULT Parser: query-selector-last= 459.836252019 runs/s
2581 median= 459.770114943 runs/s, stdev= 1.84485630505 runs/s, min= 455.696202532 runs/s, max= 462.724935733 runs/s
2583 * Parser/query-selector-last.html:
2585 2012-06-01 Ryosuke Niwa <rniwa@webkit.org>
2587 Add public page loading performance tests using web-page-replay
2588 https://bugs.webkit.org/show_bug.cgi?id=84008
2590 Reviewed by Dirk Pranke.
2592 Add replay tests for google.com and youtube.com as examples.
2595 * Replay/www.google.com.replay: Added.
2596 * Replay/www.youtube.com.replay: Added.
2598 2012-05-30 Kentaro Hara <haraken@chromium.org>
2600 [perf-test] Add a benchmark for querySelector()
2601 https://bugs.webkit.org/show_bug.cgi?id=87742
2603 Reviewed by Ryosuke Niwa.
2605 Now I am optimizing querySelector() (bug 87625).
2606 This patch adds a performance test for querySelector().
2607 query-selector-first.html queries an element that appears
2608 at the head of the document. On the other hand,
2609 query-selector-last.html queries an element that appears
2610 at the tail of the document.
2612 Test results in my desktop:
2614 [query-selector-first.html]
2615 RESULT Parser: query-selector-first= 252.339803014 runs/s
2616 median= 253.646265594 runs/s, stdev= 2.32610873209 runs/s, min= 248.138957816 runs/s, max= 254.777070064 runs/s
2618 RESULT Parser: query-selector-first= 252.688468897 runs/s
2619 median= 252.684876579 runs/s, stdev= 3.60008778708 runs/s, min= 246.002460025 runs/s, max= 258.397932817 runs/s
2621 RESULT Parser: query-selector-first= 253.466019656 runs/s
2622 median= 254.129606099 runs/s, stdev= 1.78002675664 runs/s, min= 247.831474597 runs/s, max= 254.777070064 runs/s
2624 RESULT Parser: query-selector-first= 256.245078189 runs/s
2625 median= 257.06940874 runs/s, stdev= 2.84722072201 runs/s, min= 249.687890137 runs/s, max= 259.74025974 runs/s
2627 RESULT Parser: query-selector-first= 252.203100497 runs/s
2628 median= 252.047989175 runs/s, stdev= 1.75233446036 runs/s, min= 248.138957816 runs/s, max= 255.427841635 runs/s
2630 [query-selector-last.html]
2631 RESULT Parser: query-selector-last= 356.009616076 runs/s
2632 median= 355.781448539 runs/s, stdev= 0.841519086864 runs/s, min= 354.430379747 runs/s, max= 358.056265985 runs/s
2634 RESULT Parser: query-selector-last= 360.735271001 runs/s
2635 median= 361.057532424 runs/s, stdev= 1.12253219867 runs/s, min= 358.514724712 runs/s, max= 362.225097025 runs/s
2637 RESULT Parser: query-selector-last= 359.598592463 runs/s
2638 median= 359.435173299 runs/s, stdev= 0.816538258728 runs/s, min= 358.056265985 runs/s, max= 360.824742268 runs/s
2640 RESULT Parser: query-selector-last= 357.260651715 runs/s
2641 median= 357.598978289 runs/s, stdev= 1.17393159885 runs/s, min= 353.982300885 runs/s, max= 358.974358974 runs/s
2643 RESULT Parser: query-selector-last= 351.696240713 runs/s
2644 median= 351.980025916 runs/s, stdev= 1.14200564038 runs/s, min= 348.692403487 runs/s, max= 353.535353535 runs/s
2646 * Parser/query-selector-first.html: Added.
2647 * Parser/query-selector-last.html: Added.
2649 2012-05-25 Ilya Tikhonovsky <loislo@chromium.org>
2651 Web Inspector: HeapSnapshot: introduce performance counter for HeapSnapshotConstructorsDataGrid._aggregatesReceived method.
2652 https://bugs.webkit.org/show_bug.cgi?id=87393
2654 Reviewed by Yury Semikhatsky.
2656 * inspector/heap-snapshot.html:
2658 2012-05-25 Ilya Tikhonovsky <loislo@chromium.org>
2660 Web Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th times.
2661 https://bugs.webkit.org/show_bug.cgi?id=87476
2663 The time tracking wrappers were attaching on each run.
2665 Reviewed by Yury Semikhatsky.
2667 * inspector/heap-snapshot.html:
2669 2012-05-22 Ilya Tikhonovsky <loislo@chromium.org>
2671 Web Inspector: HeapProfiler: upstream retainedSize calculation.
2672 https://bugs.webkit.org/show_bug.cgi?id=87107
2674 This patch upstreams V8::HeapSnapshotGenerator::CalculateRetainedSizes function to front-end.
2675 After that we will be able to drop retainedSize field from the snapshot serialized data.
2676 See meta-bug https://bugs.webkit.org/show_bug.cgi?id=87089
2678 Reviewed by Yury Semikhatsky.
2680 * inspector/heap-snapshot.html: add counter for the _calculateRetainedSize method.
2682 2012-05-21 Kent Tamura <tkent@chromium.org>
2684 Add performance tests for <textarea>
2685 https://bugs.webkit.org/show_bug.cgi?id=86994
2687 Reviewed by Ryosuke Niwa.
2689 * DOM/textarea-dom.html: Added.
2690 * DOM/textarea-edit.html: Added.
2691 * Parser/textarea-parsing.html: Added.
2693 2012-05-18 Ilya Tikhonovsky <loislo@chromium.org>
2695 Web Inspector: upstream build dominators tree procedure from v8.
2696 https://bugs.webkit.org/show_bug.cgi?id=86640
2698 The idea is to reduce transfer size and move all the post-processing steps to the front-end.
2699 The JS implementation is ~1.5 times slower.
2701 Reviewed by Yury Semikhatsky.
2703 Covered by existing tests and performance tests.
2705 * inspector/heap-snapshot.html:
2707 2012-05-18 Kentaro Hara <haraken@chromium.org>
2709 [perf-test] Remove Bindings/dom-attributes.html
2710 https://bugs.webkit.org/show_bug.cgi?id=86820
2712 Reviewed by Ryosuke Niwa.
2714 Bindings/dom-attributes.html is just a collection of random
2715 DOM attributes and methods. Now we've added more reasonable
2716 micro benchmarks by classifying DOM binding call paths, we
2717 can remove Bindings/dom-attributes.html.
2719 * Bindings/dom-attributes.html: Removed.
2721 2012-05-18 Kentaro Hara <haraken@chromium.org>
2723 [perf-test] Add a binding benchmark for getElementById() for an undefined id
2724 https://bugs.webkit.org/show_bug.cgi?id=86812
2726 Reviewed by Ryosuke Niwa.
2728 We should remove Bindings/dom-attributes.html and instead add more
2729 reasonable micro benchmarks by classifying DOM binding call paths.
2731 This patch adds a benchmark for document.getElementById() for an undefined id.
2732 This benchmark covers 'getElementById (not in document)' in Dromaeo/dom-query.html,
2733 and other Node-query methods that return a null.'
2735 (Note: This benchmark is slower than document.getElementById() for a defined id.
2736 We will fix the performance issue soon.)
2738 Test results in my Linux desktop:
2740 RESULT Bindings: undefined-get-element-by-id= 271.945751345 runs/s
2741 median= 273.122389532 runs/s, stdev= 6.78219237299 runs/s, min= 257.4002574 runs/s, max= 281.690140845 runs/s
2743 RESULT Bindings: undefined-get-element-by-id= 269.105872408 runs/s
2744 median= 268.948655257 runs/s, stdev= 5.73707323755 runs/s, min= 257.4002574 runs/s, max= 278.128950695 runs/s
2746 RESULT Bindings: undefined-get-element-by-id= 269.987513372 runs/s
2747 median= 272.952853598 runs/s, stdev= 5.30252336078 runs/s, min= 255.754475703 runs/s, max= 273.97260274 runs/s
2749 RESULT Bindings: undefined-get-element-by-id= 270.169625901 runs/s
2750 median= 271.604938272 runs/s, stdev= 5.29502391906 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
2752 RESULT Bindings: undefined-get-element-by-id= 269.054631422 runs/s
2753 median= 267.966292802 runs/s, stdev= 6.27197240579 runs/s, min= 258.064516129 runs/s, max= 278.481012658 runs/s
2755 * Bindings/undefined-get-element-by-id.html: Added.
2757 2012-05-18 Kentaro Hara <haraken@chromium.org>
2759 [perf-test] Add a binding benchmark for getElementsByTagName()
2760 https://bugs.webkit.org/show_bug.cgi?id=86810
2762 Reviewed by Ryosuke Niwa.
2764 We should remove Bindings/dom-attributes.html and instead add more
2765 reasonable micro benchmarks by classifying DOM binding call paths.
2767 This patch adds a benchmark for document.getElementsByTagName().
2768 This benchmark covers 'getElementsByTagName (not in document)',
2769 'getElementsByTagName', 'getElementsByName (not in document)'
2770 and 'getElementsByName' in Dromaeo/dom-query.html, and other DOM
2771 methods that return a NodeList.
2773 Test results in my Linux desktop:
2775 RESULT Bindings: get-elements-by-tag-name= 364.542328875 runs/s
2776 median= 366.972477064 runs/s, stdev= 5.25387955333 runs/s, min= 351.317440402 runs/s, max= 368.421052632 runs/s
2778 RESULT Bindings: get-elements-by-tag-name= 364.341569369 runs/s
2779 median= 366.492146597 runs/s, stdev= 4.867374197 runs/s, min= 352.644836272 runs/s, max= 367.936925099 runs/s
2781 RESULT Bindings: get-elements-by-tag-name= 363.924242967 runs/s
2782 median= 366.013071895 runs/s, stdev= 5.16768212289 runs/s, min= 351.317440402 runs/s, max= 367.936925099 runs/s
2784 RESULT Bindings: get-elements-by-tag-name= 365.332594438 runs/s
2785 median= 367.454068241 runs/s, stdev= 6.17046918572 runs/s, min= 350.0 runs/s, max= 370.37037037 runs/s
2787 RESULT Bindings: get-elements-by-tag-name= 363.999514324 runs/s
2788 median= 366.492146597 runs/s, stdev= 5.31235674905 runs/s, min= 350.877192982 runs/s, max= 368.421052632 runs/s
2790 * Bindings/get-elements-by-tag-name.html: Added.
2792 2012-05-18 Kentaro Hara <haraken@chromium.org>
2794 [perf-test] Add 7 micro benchmarks for DOM bindings
2795 https://bugs.webkit.org/show_bug.cgi?id=86816
2797 Reviewed by Ryosuke Niwa.
2799 We should remove Bindings/dom-attributes.html and instead add more
2800 reasonable micro benchmarks by classifying DOM binding call paths.
2801 This patch adds seven micro benchmarks for DOM bindings.
2803 id-getter.html covers 'element.property' in Dromaeo/dom-attr.html,
2804 'innerHTML' in Dromaeo/dom-modify.html, and other DOM attributes that
2807 id-setter.html covers 'element.property = value' in Dromaeo/dom-attr.html,
2808 and other DOM attributes that sets a String.
2810 undefined-id-getter.html covers undefined DOM attributes that return an empty String.
2812 append-child.html covers 'appendChild' and 'removeChild' in Dromaeo/dom-modify.html.
2814 insert-before.html covers 'insertBefore' in Dromaeo/dom-modify.html and replaceChild().
2816 create-element.html covers 'createElement', 'createTextNode' and 'cloneNode'
2817 in Dromaeo/dom-modify.html, and other DOM methods that return a new Node object.
2819 node-list-access.html covers 'childNodes' in Dromaeo/dom-traverse.html,
2820 and other DOM attributes that access NodeList.
2822 Test results in my Linux desktop:
2825 RESULT Bindings: id-getter= 550.517821097 runs/s
2826 median= 550.688360451 runs/s, stdev= 0.970723739106 runs/s, min= 548.628428928 runs/s, max= 552.070263488 runs/s
2828 RESULT Bindings: id-getter= 550.655839847 runs/s
2829 median= 550.688360451 runs/s, stdev= 1.03312821884 runs/s, min= 549.313358302 runs/s, max= 552.070263488 runs/s
2831 RESULT Bindings: id-getter= 550.277753355 runs/s
2832 median= 550.344180225 runs/s, stdev= 1.19960683464 runs/s, min= 547.945205479 runs/s, max= 552.070263488 runs/s
2834 RESULT Bindings: id-getter= 550.072271009 runs/s
2835 median= 550.344180225 runs/s, stdev= 1.38925152131 runs/s, min= 547.263681592 runs/s, max= 552.070263488 runs/s
2837 RESULT Bindings: id-getter= 548.802050235 runs/s
2838 median= 548.628428928 runs/s, stdev= 1.18244513683 runs/s, min= 545.905707196 runs/s, max= 550.688360451 runs/s
2841 RESULT Bindings: id-setter= 211.370591663 runs/s
2842 median= 210.803689065 runs/s, stdev= 1.4555795889 runs/s, min= 209.973753281 runs/s, max= 214.285714286 runs/s
2844 RESULT Bindings: id-setter= 215.439081352 runs/s
2845 median= 214.797136038 runs/s, stdev= 1.50920388121 runs/s, min= 213.049267643 runs/s, max= 218.446601942 runs/s
2847 RESULT Bindings: id-setter= 216.721698466 runs/s
2848 median= 215.956886352 runs/s, stdev= 1.54090749644 runs/s, min= 214.285714286 runs/s, max= 219.78021978 runs/s
2850 RESULT Bindings: id-setter= 216.343019087 runs/s
2851 median= 215.827338129 runs/s, stdev= 1.46619894553 runs/s, min= 215.053763441 runs/s, max= 218.97810219 runs/s
2853 RESULT Bindings: id-setter= 216.799288017 runs/s
2854 median= 215.956886352 runs/s, stdev= 1.49100776978 runs/s, min= 215.311004785 runs/s, max= 219.78021978 runs/s
2856 [undefined-id-getter]
2857 RESULT Bindings: undefined-id-getter= 494.104255241 runs/s
2858 median= 494.132368875 runs/s, stdev= 1.13092821109 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
2860 RESULT Bindings: undefined-id-getter= 493.921802916 runs/s
2861 median= 493.827160494 runs/s, stdev= 1.25097443119 runs/s, min= 490.196078431 runs/s, max= 495.662949195 runs/s
2863 RESULT Bindings: undefined-id-getter= 491.976485667 runs/s
2864 median= 492.004920049 runs/s, stdev= 0.947090576896 runs/s, min= 490.196078431 runs/s, max= 493.827160494 runs/s
2866 RESULT Bindings: undefined-id-getter= 491.987710185 runs/s
2867 median= 494.132368875 runs/s, stdev= 8.66602543327 runs/s, min= 454.545454545 runs/s, max= 495.662949195 runs/s
2869 RESULT Bindings: undefined-id-getter= 494.195515847 runs/s
2870 median= 494.437577256 runs/s, stdev= 1.06135681702 runs/s, min= 490.797546012 runs/s, max= 495.662949195 runs/s
2873 RESULT Bindings: append-child= 260.628237026 runs/s
2874 median= 260.926399352 runs/s, stdev= 2.55231060598 runs/s, min= 256.739409499 runs/s, max= 265.604249668 runs/s
2876 RESULT Bindings: append-child= 280.796193436 runs/s
2877 median= 280.791435348 runs/s, stdev= 2.53961321867 runs/s, min= 277.427490542 runs/s, max= 286.085825748 runs/s
2879 RESULT Bindings: append-child= 279.856209714 runs/s
2880 median= 280.25477707 runs/s, stdev= 2.85447647301 runs/s, min= 275.344180225 runs/s, max= 284.237726098 runs/s
2882 RESULT Bindings: append-child= 280.834502714 runs/s
2883 median= 280.25477707 runs/s, stdev= 2.67738046429 runs/s, min= 277.427490542 runs/s, max= 287.206266319 runs/s
2885 RESULT Bindings: append-child= 274.723872106 runs/s
2886 median= 273.291925466 runs/s, stdev= 3.03671746706 runs/s, min= 272.614622057 runs/s, max= 282.413350449 runs/s
2889 RESULT Bindings: insert-before= 180.986913006 runs/s
2890 median= 180.878552972 runs/s, stdev= 0.758038687299 runs/s, min= 180.18018018 runs/s, max= 183.968462549 runs/s
2892 RESULT Bindings: insert-before= 186.339916144 runs/s
2893 median= 186.170212766 runs/s, stdev= 0.869022097127 runs/s, min= 185.676392573 runs/s, max= 189.798339265 runs/s
2895 RESULT Bindings: insert-before= 189.45344838 runs/s
2896 median= 189.349112426 runs/s, stdev= 0.811854866567 runs/s, min= 187.79342723 runs/s, max= 192.539109507 runs/s
2898 RESULT Bindings: insert-before= 189.363295991 runs/s
2899 median= 189.349112426 runs/s, stdev= 0.75387713097 runs/s, min= 188.014101058 runs/s, max= 192.076830732 runs/s
2901 RESULT Bindings: insert-before= 189.252041642 runs/s
2902 median= 189.349112426 runs/s, stdev= 0.840447225363 runs/s, min= 187.573270809 runs/s, max= 192.076830732 runs/s
2905 RESULT Bindings: create-element= 280.675830077 runs/s
2906 median= 280.701824914 runs/s, stdev= 0.788606343054 runs/s, min= 279.441117764 runs/s, max= 282.542885974 runs/s
2908 RESULT Bindings: create-element= 276.427631436 runs/s
2909 median= 277.227722772 runs/s, stdev= 3.39874667549 runs/s, min= 262.417994377 runs/s, max= 279.162512463 runs/s
2911 RESULT Bindings: create-element= 277.156894411 runs/s
2912 median= 277.227722772 runs/s, stdev= 1.13255119226 runs/s, min= 274.914089347 runs/s, max= 278.884462151 runs/s
2914 RESULT Bindings: create-element= 278.066825356 runs/s
2915 median= 278.191822254 runs/s, stdev= 0.686497782792 runs/s, min= 276.953511375 runs/s, max= 279.162512463 runs/s
2917 RESULT Bindings: create-element= 276.431538109 runs/s
2918 median= 276.406712734 runs/s, stdev= 0.759593662298 runs/s, min= 275.229357798 runs/s, max= 278.053624628 runs/s
2921 RESULT Bindings: node-list-access= 222.747504073 runs/s
2922 median= 222.772277228 runs/s, stdev= 0.789027527555 runs/s, min= 221.674876847 runs/s, max= 224.159402242 runs/s
2924 RESULT Bindings: node-list-access= 220.722448287 runs/s
2925 median= 221.266217576 runs/s, stdev= 1.65463497875 runs/s, min= 217.391304348 runs/s, max= 222.222222222 runs/s
2927 RESULT Bindings: node-list-access= 222.195870443 runs/s
2928 median= 222.222222222 runs/s, stdev= 0.489709262091 runs/s, min= 221.13022113 runs/s, max= 223.048327138 runs/s
2930 RESULT Bindings: node-list-access= 221.431121677 runs/s
2931 median= 221.538545435 runs/s, stdev= 0.608292116087 runs/s, min= 220.048899756 runs/s, max= 222.772277228 runs/s
2933 RESULT Bindings: node-list-access= 219.001367135 runs/s
2934 median= 221.538545435 runs/s, stdev= 4.65773933007 runs/s, min= 209.973753281 runs/s, max= 222.496909765 runs/s
2936 * Bindings/append-child.html: Added.
2937 * Bindings/create-element.html: Added.
2938 * Bindings/id-getter.html: Added.
2939 * Bindings/id-setter.html: Added.
2940 * Bindings/insert-before.html: Added.
2941 * Bindings/node-list-access.html: Added.
2942 * Bindings/undefined-id-getter.html: Added.
2944 2012-05-18 Kentaro Hara <haraken@chromium.org>
2946 [perf-test] Add a binding benchmark for div.setAttribute()
2947 https://bugs.webkit.org/show_bug.cgi?id=86815
2949 Reviewed by Ryosuke Niwa.
2951 We should remove Bindings/dom-attributes.html and instead add more
2952 reasonable micro benchmarks by classifying DOM binding call paths.
2954 This patch adds a benchmark for div.setAttribute(). This benchmark
2955 covers 'setAttribute' in Dromaeo/dom-attr.html and other DOM methods
2956 that return an undefined.
2958 Test results in my Linux desktop:
2960 RESULT Bindings: set-attribute= 793.745073252 runs/s
2961 median= 791.589665765 runs/s, stdev= 6.00467159709 runs/s, min= 785.27607362 runs/s, max= 808.080808081 runs/s
2963 RESULT Bindings: set-attribute= 790.858444164 runs/s
2964 median= 787.918921436 runs/s, stdev= 7.86264953655 runs/s, min= 780.234070221 runs/s, max= 806.04534005 runs/s
2966 RESULT Bindings: set-attribute= 787.277571417 runs/s
2967 median= 784.31372549 runs/s, stdev= 7.45363346657 runs/s, min= 778.588807786 runs/s, max= 804.020100503 runs/s
2969 RESULT Bindings: set-attribute= 782.401393791 runs/s
2970 median= 779.062978802 runs/s, stdev= 6.48250081621 runs/s, min= 777.642770352 runs/s, max= 796.019900498 runs/s
2972 RESULT Bindings: set-attribute= 791.792516608 runs/s
2973 median= 791.556728232 runs/s, stdev= 6.49182980397 runs/s, min= 779.220779221 runs/s, max= 808.080808081 runs/s
2975 * Bindings/set-attribute.html: Added.
2977 2012-05-17 Kentaro Hara <haraken@chromium.org>
2979 [perf-test] Add a binding benchmark for div.getAttribute()
2980 https://bugs.webkit.org/show_bug.cgi?id=86814
2982 Reviewed by Ryosuke Niwa.
2984 We should remove Bindings/dom-attributes.html and instead add more
2985 reasonable micro benchmarks by classifying DOM binding call paths.
2987 This patch adds a benchmark for div.getAttribute(). This benchmark
2988 covers 'getAttribute' in Dromaeo/dom-attr.html, and other DOM methods
2989 that return a String.
2991 Test results in my Linux desktop:
2993 RESULT Bindings: get-attribute= 250.088158538 runs/s
2994 median= 250.469728765 runs/s, stdev= 4.66551901315 runs/s, min= 240.673886883 runs/s, max= 256.739409499 runs/s
2996 RESULT Bindings: get-attribute= 250.209764698 runs/s
2997 median= 250.626959986 runs/s, stdev= 4.12030002477 runs/s, min= 241.254523522 runs/s, max= 255.102040816 runs/s
2999 RESULT Bindings: get-attribute= 248.907532887 runs/s
3000 median= 250.312891114 runs/s, stdev= 3.23173125874 runs/s, min= 240.673886883 runs/s, max= 251.572327044 runs/s
3002 RESULT Bindings: get-attribute= 250.243680844 runs/s
3003 median= 250.783797637 runs/s, stdev= 4.19327170024 runs/s, min= 240.963855422 runs/s, max= 255.102040816 runs/s
3005 RESULT Bindings: get-attribute= 245.329046608 runs/s
3006 median= 244.948040416 runs/s, stdev= 2.24314248534 runs/s, min= 240.384615385 runs/s, max= 248.756218905 runs/s
3008 * Bindings/get-attribute.html: Added.
3010 2012-05-17 Kentaro Hara <haraken@chromium.org>
3012 [perf-test] Add a binding benchmark for getElementById()
3013 https://bugs.webkit.org/show_bug.cgi?id=86808
3015 Reviewed by Ryosuke Niwa.
3017 Currently Bindings/dom-attributes.html is just a collection
3018 of random DOM attributes and methods. We should remove it and
3019 instead add more reasonable micro benchmarks by classifying
3020 DOM binding call paths.
3022 This patch adds a benchmark for document.getElementById(),
3023 which covers other DOM methods that return a Node Object.
3025 The reason why we want to add a benchmark for document.getElementById()
3026 in spite of the fact that Dromaeo/dom-query.html is already testing
3027 document.getElementById(), is that Dromaeo/dom-query.html outputs one
3028 result for several benchmarks (i.e. getElementById().nodeType,
3029 getElementsByTagName()[0].nodeType etc), and thus we cannot observe
3030 regression of getElementById() itself. (Catching regression of
3031 getElementById() would be critical.)
3033 Test results in my Linux desktop:
3035 RESULT Bindings: get-element-by-id= 300.933707795 runs/s
3036 median= 302.267002519 runs/s, stdev= 3.04954648504 runs/s, min= 295.930949445 runs/s, max= 305.34351145 runs/s
3038 RESULT Bindings: get-element-by-id= 302.030324483 runs/s
3039 median= 302.267481977 runs/s, stdev= 1.78518068367 runs/s, min= 298.507462687 runs/s, max= 304.568527919 runs/s
3041 RESULT Bindings: get-element-by-id= 301.993483538 runs/s
3042 median= 302.648171501 runs/s, stdev= 1.87604126626 runs/s, min= 296.662546354 runs/s, max= 304.568527919 runs/s
3044 RESULT Bindings: get-element-by-id= 301.936607982 runs/s
3045 median= 302.45758701 runs/s, stdev= 1.88991087072 runs/s, min= 298.879202989 runs/s, max= 304.955527319 runs/s
3047 RESULT Bindings: get-element-by-id= 301.952234563 runs/s
3048 median= 302.648171501 runs/s, stdev= 1.59929752614 runs/s, min= 299.625468165 runs/s, max= 304.568527919 runs/s
3050 * Bindings/get-element-by-id.html: Added.
3052 2012-05-17 Kentaro Hara <haraken@chromium.org>
3054 [perf-test] Add a benchmark for body.scrollTop
3055 https://bugs.webkit.org/show_bug.cgi?id=86806
3057 Reviewed by Ryosuke Niwa.
3059 Currently Bindings/dom-attributes.html is just a collection of random
3060 DOM attributes and methods. We should remove it and instead add more
3061 reasonable micro benchmarks by classifying DOM binding call paths.
3063 This patch adds a benchmark for body.scrollTop, which covers other
3064 DOM attributes that return small integers.
3066 (Note: Performance optimization for the benchmark will be coming soon.)
3068 Test results in my Linux desktop:
3070 RESULT Bindings: scroll-top= 209.410654239 runs/s
3071 median= 211.64021164 runs/s, stdev= 4.09958741195 runs/s, min= 201.005025126 runs/s, max= 212.483399734 runs/s
3073 RESULT Bindings: scroll-top= 195.651111157 runs/s
3074 median= 196.319018405 runs/s, stdev= 1.77011627406 runs/s, min= 191.846522782 runs/s, max= 197.28729963 runs/s
3075 RESULT Bindings: scroll-top= 200.004907612 runs/s
3076 median= 201.511335013 runs/s, stdev= 3.27455403827 runs/s, min= 193.236714976 runs/s, max= 202.53164557 runs/s
3078 RESULT Bindings: scroll-top= 209.582737512 runs/s
3079 median= 210.803689065 runs/s, stdev= 3.16769655464 runs/s, min= 203.045685279 runs/s, max= 211.920529801 runs/s
3081 RESULT Bindings: scroll-top= 199.924607687 runs/s
3082 median= 201.13144338 runs/s, stdev= 3.11080503619 runs/s, min= 193.003618818 runs/s, max= 202.02020202 runs/s
3084 * Bindings/scroll-top.html: Added.
3086 2012-05-17 Kentaro Hara <haraken@chromium.org>
3088 [perf-test] Add a micro benchmark for div.firstChild getter for an undefined firstChild
3089 https://bugs.webkit.org/show_bug.cgi?id=86725
3091 Reviewed by Ryosuke Niwa.
3093 We are going to remove Bindings/dom-attributes.html and instead add more
3094 reasonable micro benchmarks by classifying DOM binding call paths.
3096 In this bug, we add a micro benchmark for div.firstChild getter for an
3097 undefined firstChild. This benchmark covers other undefined DOM attributes
3100 (Note: In V8, div.firstChild for an undefined firstChild is currently slower
3101 than div.firstChild for a defined firstChild.)
3103 Test results in my Linux desktop:
3105 RESULT Bindings: undefined-first-child= 541.408311042 runs/s
3106 median= 541.205412054 runs/s, stdev= 1.29841219187 runs/s, min= 537.897310513 runs/s, max= 543.209876543 runs/s
3108 RESULT Bindings: undefined-first-child= 541.00750695 runs/s
3109 median= 540.540540541 runs/s, stdev= 0.967521230965 runs/s, min= 539.215686275 runs/s, max= 543.209876543 runs/s
3111 RESULT Bindings: undefined-first-child= 523.630714897 runs/s
3112 median= 523.560209424 runs/s, stdev= 1.01570919645 runs/s, min= 522.193211488 runs/s, max= 525.624178712 runs/s
3114 RESULT Bindings: undefined-first-child= 553.077663588 runs/s
3115 median= 553.459119497 runs/s, stdev= 0.805697397863 runs/s, min= 551.378446115 runs/s, max= 554.156171285 runs/s
3117 RESULT Bindings: undefined-first-child= 541.5401432 runs/s
3118 median= 541.538666618 runs/s, stdev= 0.954301364767 runs/s, min= 539.877300613 runs/s, max= 543.209876543 runs/s
3120 * Bindings/undefined-first-child.html: Added.
3122 2012-05-17 Kentaro Hara <haraken@chromium.org>
3124 [Performance test] Add a micro benchmark for div.firstChild getter
3125 https://bugs.webkit.org/show_bug.cgi?id=86582
3127 Reviewed by Ryosuke Niwa.
3129 We are going to remove Bindings/dom-attributes.html and instead add more
3130 reasonable micro benchmarks by classifying DOM binding call paths.
3132 In this bug, we add a micro benchmark for div.firstChild getter.
3133 This benchmark covers 'firstChild', 'lastChild', 'nextSibling' and
3134 'previousSibling' in Dromaeo/dom-traverse.html, and other DOM attributes
3135 that return a Node object.
3137 Multiple test results in my Linux desktop:
3139 RESULT Bindings: first-child= 798.157160346 runs/s
3140 median= 798.004987531 runs/s, stdev= 1.52006063407 runs/s, min= 796.019900498 runs/s, max= 801.001251564 runs/s
3141 RESULT Bindings: first-child= 797.603608554 runs/s
3142 median= 797.872340426 runs/s, stdev= 2.2522621261 runs/s, min= 791.556728232 runs/s, max= 801.001251564 runs/s
3143 RESULT Bindings: first-child= 798.656295468 runs/s
3144 median= 798.004987531 runs/s, stdev= 1.79367478063 runs/s, min= 797.01120797 runs/s, max= 803.011292346 runs/s
3145 RESULT Bindings: first-child= 797.812784267 runs/s
3146 median= 798.004987531 runs/s, stdev= 2.31766523191 runs/s, min= 791.100123609 runs/s, max= 802.005012531 runs/s
3147 RESULT Bindings: first-child= 797.963311597 runs/s
3148 median= 798.004987531 runs/s, stdev= 2.53014907337 runs/s, min= 789.14919852 runs/s, max= 801.001251564 runs/s
3150 * Bindings/first-child.html: Added.
3152 2012-05-16 Kentaro Hara <haraken@chromium.org>
3154 [Performance test] Support "description" for PerfTestRunner.run and PerfTestRunner.runPerSecond
3155 https://bugs.webkit.org/show_bug.cgi?id=86696
3157 Reviewed by Ryosuke Niwa.
3159 We want to add some description for each PerfTestRunner.run and
3160 PerfTestRunner.runPerSecond, so that people can know what each
3165 $ ./Tools/Scripts/run-perf-tests Bindings/first-child.html
3166 Running Bindings/first-child.html (1 of 1)
3167 DESCRIPTION: Benchmark for DOM attributes that return a Node object.
3168 RESULT Bindings: first-child= 788.359076534 runs/s
3169 median= 797.508097751 runs/s, stdev= 19.0972905207 runs/s, min= 746.666666667 runs/s, max= 801.001251564 runs/s
3171 * resources/runner.js:
3172 (PerfTestRunner.logStatistics):
3173 (PerfTestRunner.printStatistics):
3174 (PerfTestRunner.runPerSecond):
3176 2012-05-16 Yury Semikhatsky <yurys@chromium.org>
3178 Unreviewed. Fix heap profiler performance test after r117234.
3180 * inspector/heap-snapshot.html:
3182 2012-05-14 Ryosuke Niwa <rniwa@webkit.org>
3184 Convert CSS and Parser tests to runs/s tests
3185 https://bugs.webkit.org/show_bug.cgi?id=86399
3187 Reviewed by Ojan Vafai.
3189 Use runPerSecond instead of run to measure results in function calls per second (run/s) instead of time (ms).
3190 This allows us to continue measuring performance reliably even when WebKit's performance improves and results
3191 become too small for Date.now()'s precision (around 15 ms).
3193 It should also reduce perf. bots cycle time for slower tests because we limit the number of function calls by time.
3195 * CSS/CSSPropertySetterGetter.html:
3196 * CSS/CSSPropertyUpdateValue.html:
3197 * Parser/css-parser-yui.html:
3198 * Parser/simple-url.html:
3199 * Parser/tiny-innerHTML.html:
3200 * Parser/url-parser.html:
3201 * Parser/xml-parser.html:
3203 2012-05-14 Dan Bernstein <mitz@apple.com>
3205 Add a line layout performance test
3206 https://bugs.webkit.org/show_bug.cgi?id=86216
3208 Reviewed by Ryosuke Niwa.
3210 * Layout/line-layout.html: Added.
3212 2012-05-14 Tony Chang <tony@chromium.org>
3214 Don't append log lines while perf tests are running.
3215 https://bugs.webkit.org/show_bug.cgi?id=86028
3217 Reviewed by Ryosuke Niwa.
3219 In some tests, the extra DOM nodes can cause the test timing to change.
3220 Avoid adding DOM nodes until the test is over. When running in a browser,
3221 we append nodes as we run so the user can have some feedback.
3223 * resources/runner.js:
3224 (PerfTestRunner.log): Store the log lines in an array until the test is finished.
3226 2012-05-14 Ryosuke Niwa <rniwa@webkit.org>
3228 Build fix. Don't adjust calls per iteration in the second run.
3230 * resources/runner.js:
3231 (PerfTestRunner._perSecondRunner):
3233 2012-05-13 Ryosuke Niwa <rniwa@webkit.org>
3235 performance tests should be able to measure runs/sec rather than time
3236 https://bugs.webkit.org/show_bug.cgi?id=86021
3238 Reviewed by Ojan Vafai.
3240 Add PerfTestRunner.runPerSecond. It uses _runLoop but replaces _runner by _perSecondRunner
3241 to compute runs/s of runFunction.
3243 When _perSecondRunner is called for the first time, i.e. _completedRuns is 0 (notice this is -1
3244 in regular run/_runner), it slowly increases the number of function calls to runFunction between
3245 time measurements in order to discount the time used by new Date() calls themselves until the
3246 total time spent reaches 100 milliseconds.
3248 By default, runPerSecond runs the test for at least 750 milliseconds in each run, and executes
3249 21 runs, yielding the total run time of roughly 18 seconds. This is significantly faster than
3250 most of existing performance tests. Also see http://ejohn.org/blog/accuracy-of-javascript-time/.
3252 Finally, refactored the existing methods of PerfTestRunner to allow "runs/s" unit and share code.
3254 * Layout/flexbox-column-nowrap.html:
3255 * Layout/flexbox-column-wrap.html:
3256 * Layout/flexbox-row-nowrap.html:
3257 * Layout/flexbox-row-wrap.html:
3258 * resources/runner.js:
3259 (PerfTestRunner.computeStatistics): Takes unit.
3260 (PerfTestRunner.logStatistics): Ditto.
3261 (PerfTestRunner._runLoop):
3262 (PerfTestRunner._runner):
3263 (PerfTestRunner.runPerSecond): Added.
3264 (PerfTestRunner._perSecondRunner): Added. Called by _runLoop.
3265 (PerfTestRunner._perSecondRunnerIterator): Added.
3267 2012-05-09 Tony Chang <tony@chromium.org>
3269 add some basic perf-o-matic tests for flexbox
3270 https://bugs.webkit.org/show_bug.cgi?id=86017
3272 Reviewed by Ryosuke Niwa.
3274 Each of these tests take < 3s on my machine.
3276 * Layout/flexbox-column-nowrap.html: Added.
3277 * Layout/flexbox-column-wrap.html: Added.
3278 * Layout/flexbox-row-nowrap.html: Added.
3279 * Layout/flexbox-row-wrap.html: Added.
3281 2012-05-05 Ilya Tikhonovsky <loislo@chromium.org>
3283 Web Inspector: unreviewed followup fix for the performance test after r116218.
3285 * inspector/heap-snapshot.html:
3287 2012-05-02 Tom Zakrajsek <tomz@codeaurora.org>
3289 Need tests for PerfTestRunner.computeStatistics
3290 https://bugs.webkit.org/show_bug.cgi?id=85410
3292 Reviewed by Ryosuke Niwa.
3294 * resources/runner.js:
3296 2012-05-02 Sheriff Bot <webkit.review.bot@gmail.com>
3298 Unreviewed, rolling out r115905.
3299 http://trac.webkit.org/changeset/115905
3300 https://bugs.webkit.org/show_bug.cgi?id=85435
3302 New computeStatistics test is failing on chromium ports
3303 (Requested by tomz on #webkit).
3305 * resources/runner.js:
3307 2012-05-02 Tom Zakrajsek <tomz@codeaurora.org>
3309 Need tests for PerfTestRunner.computeStatistics
3310 https://bugs.webkit.org/show_bug.cgi?id=85410
3312 Reviewed by Ryosuke Niwa.
3314 * resources/runner.js:
3316 2012-04-29 Tom Zakrajsek <tomz@codeaurora.org>
3318 PerfTestRunner.computeStatistics incorrectly calculates min, max and median
3319 https://bugs.webkit.org/show_bug.cgi?id=85111
3321 Reviewed by Ryosuke Niwa.
3323 The sort of the data input was being done alphabetically.
3324 So I provided a numeric compare function.
3326 * resources/runner.js:
3328 2012-04-17 Ilya Tikhonovsky <loislo@chromium.org>
3330 Web Inspector: the fix for test after massive rename in r114271.
3331 https://bugs.webkit.org/show_bug.cgi?id=84147
3333 Drive by fix. The test was renamed to heap-snapshot.html
3335 Reviewed by Yury Semikhatsky.
3337 * inspector/heap-snapshot.html: Renamed from PerformanceTests/inspector/detailed-heapshots-smoke-test.html.
3339 2012-04-16 Yury Semikhatsky <yurys@chromium.org>
3341 Web Inspector: rename heap profiler files and classes DetailedHeapshot* ->HeapSnapshot*
3342 https://bugs.webkit.org/show_bug.cgi?id=84038
3344 A bunch of renames "detailed heapshot" -> "heap snapshot".
3346 Reviewed by Pavel Feldman.
3348 * inspector/detailed-heapshots-smoke-test.html:
3350 2012-04-13 Ryosuke Niwa <rniwa@webkit.org>
3356 2012-04-12 Ryosuke Niwa <rniwa@webkit.org>
3358 Enable SVG page loading performance tests
3359 https://bugs.webkit.org/show_bug.cgi?id=83861
3361 Reviewed by Adam Barth.
3363 Unskip PageLoad directory and skip tests that load too fast (less than 100ms) and are unstable,
3364 and the ones that take too long to load (more than 20s).
3368 2012-04-04 Ilya Tikhonovsky <loislo@chromium.org>
3370 Web Inspector: Unreviewed. temporary disable broken inspector tests.
3372 * inspector/first-open-scripts.html.broken: Renamed from PerformanceTests/inspector/first-open-scripts.html.
3373 * inspector/network-append-30-requests.html.broken: Renamed from PerformanceTests/inspector/network-append-30-requests.html.
3374 * inspector/show-panel.html.broken: Renamed from PerformanceTests/inspector/show-panel.html.
3376 2012-04-04 Ilya Tikhonovsky <loislo@chromium.org>
3378 Web Inspector: linearise aggregate's retaining size calculation.
3379 https://bugs.webkit.org/show_bug.cgi?id=83125
3381 This version is twice as fast as the original and it is non-recursive.
3383 Reviewed by Yury Semikhatsky.
3385 * inspector/detailed-heapshots-smoke-test.html:
3387 2012-03-30 David Barr <davidbarr@chromium.org>
3389 Split up top-level .gitignore and .gitattributes
3390 https://bugs.webkit.org/show_bug.cgi?id=82687
3392 Reviewed by Tor Arne Vestbø.
3394 * .gitattributes: Added.
3396 2012-03-28 Yury Semikhatsky <yurys@chromium.org>
3398 Web Inspector: switch heap profiler front-end to separate storage of nodes and edges
3399 https://bugs.webkit.org/show_bug.cgi?id=82453
3401 Updated heap profiler performance test after heap profiler front-end
3404 Reviewed by Pavel Feldman.
3406 * inspector/detailed-heapshots-smoke-test.html:
3408 2012-03-27 Alexis Menard <alexis.menard@openbossa.org>
3410 Add a perf test which updates the value of an already declared CSS property.
3411 https://bugs.webkit.org/show_bug.cgi?id=82321
3413 Reviewed by Andreas Kling.
3415 This benchmark update CSS existing properties of the style from JS.
3417 * CSS/CSSPropertyUpdateValue.html: Added.
3419 2012-03-15 Kentaro Hara <haraken@chromium.org>
3421 [PerformanceTests] run-perf-tests should output correct units
3422 https://bugs.webkit.org/show_bug.cgi?id=78303
3424 Reviewed by Ryosuke Niwa.
3426 Previously run-perf-tests just supported "ms" for units.
3427 Consequently, Dromaeo perf tests had been reporting runs/s as "ms".
3428 This patch fixes run-perf-tests so that they can support custom units.
3429 The default unit is "ms".
3431 The test result looks like this:
3433 $ ./Tools/Scripts/run-perf-tests Dromaeo/dom-attr.html
3434 RESULT Dromaeo: dom-attr= 6465.9525483 runs/s
3435 median= 0.0 runs/s, stdev= 24.2983433436 runs/s, min= 6435.87649402 runs/s, max= 6515.63693392 runs/s
3437 * Dromaeo/resources/dromaeorunner.js:
3439 * resources/runner.js:
3440 (PerfTestRunner.computeStatistics):
3441 (PerfTestRunner.printStatistics):
3443 2012-03-15 Alexis Menard <alexis.menard@openbossa.org>
3445 Fix the test failing with run-perf-tests.
3447 Rubber stamped by Ryosuke Niwa.
3449 * CSS/CSSPropertySetterGetter.html:
3451 2012-03-14 Alexis Menard <alexis.menard@openbossa.org>
3453 Add a new perf test to benchmark setting and reading CSS properties from JS.
3454 https://bugs.webkit.org/show_bug.cgi?id=81155
3456 Reviewed by Ryosuke Niwa.
3458 This benchmark read and set CSS properties from JS. It contains a list
3459 of common CSS properties.
3461 * CSS/CSSPropertySetterGetter.html: Added.
3463 2012-03-14 Alexandru Chiculita <achicu@adobe.com>
3465 Layout/floats.html should be runnable by run-perf-tests
3466 https://bugs.webkit.org/show_bug.cgi?id=77051
3468 Reviewed by Ryosuke Niwa.
3470 I've split Layout/floats.html into multiple tests for each button in the original manual test.
3471 Some tests take longer to run and I've changed the number of iterations, so that each tests finishes under 30s per run.
3473 * DOM/resources/dom-perf.js:
3474 * Layout/floats.html: Removed.
3475 * Layout/floats_100_100.html: Added.
3476 * Layout/floats_100_100_nested.html: Added.
3477 * Layout/floats_20_100.html: Added.
3478 * Layout/floats_20_100_nested.html: Added.
3479 * Layout/floats_2_100.html: Added.
3480 * Layout/floats_2_100_nested.html: Added.
3481 * Layout/floats_50_100.html: Added.
3482 * Layout/floats_50_100_nested.html: Added.
3483 * Layout/resources/floats.css: Added.
3488 * Layout/resources/floats.js: Added.
3491 * resources/runner.js:
3492 (PerfTestRunner.resetRandomSeed):
3493 (PerfTestRunner.random):
3495 Moved the Math.random to runner.js to be used by all tests.
3496 Added resetRandomSeed to bring the randomizer back to initial seed.
3497 It is useful to get the same results at every run and minimize the
3498 differences between runs.
3500 2012-03-14 Sheriff Bot <webkit.review.bot@gmail.com>
3502 Unreviewed, rolling out r110559.
3503 http://trac.webkit.org/changeset/110559
3504 https://bugs.webkit.org/show_bug.cgi?id=81142
3506 Broke Dromaeo tests (Requested by rniwa on #webkit).
3508 * Dromaeo/resources/dromaeorunner.js:
3511 2012-03-13 Kentaro Hara <haraken@chromium.org>
3513 Dromaeo perf-tests results are wrong
3514 https://bugs.webkit.org/show_bug.cgi?id=80974
3516 Reviewed by Hajime Morita.
3518 Dromaeo perf-tests had reported the sum of runs/seconds as "ms".
3519 This patch fixes them to report the execution time per run.
3521 At present, they report "0.0ms" for "stdev". This is because
3522 dromaeorunner.js can just know stdev of "runs/seconds"
3523 and cannot calculate stdev of "ms" from that. We can fix it later.
3525 * Dromaeo/resources/dromaeorunner.js:
3528 2012-03-12 Ilya Tikhonovsky <loislo@chromium.org>
3530 Web Inspector: chromium: increase heap snapshot performance coverage.
3531 https://bugs.webkit.org/show_bug.cgi?id=80829
3533 Reviewed by Yury Semikhatsky.
3535 * inspector/detailed-heapshots-smoke-test.html:
3536 * inspector/performance-test.js:
3537 (initialize_TimeTracker.InspectorTest.measureFunction):
3539 2012-03-06 Kentaro Hara <haraken@chromium.org>
3541 [Perf tests] Reduce the number of loops in dom-attributes.html
3542 https://bugs.webkit.org/show_bug.cgi?id=80077
3544 Reviewed by Ryosuke Niwa.
3546 dom-attributes.html takes 100~ seconds in the perf bots. This patch reduces
3547 the time by reducing the number of loops.
3549 This is just a temporary fix. After more detailed investigation, I will reduce
3550 the number of tests in dom-attributes.html, and revert back the number of loops
3551 to guarantee the reliability of the perf test results.
3553 * Bindings/dom-attributes.html:
3555 2012-03-06 Ilya Tikhonovsky <loislo@chromium.org>
3557 Web Inspector: Heap Snapshot test: split overal time metric into separate metrics.
3558 https://bugs.webkit.org/show_bug.cgi?id=80409
3560 Reviewed by Yury Semikhatsky.
3562 * inspector/detailed-heapshots-smoke-test.html:
3564 2012-03-05 Ilya Tikhonovsky <loislo@chromium.org>
3566 Web Inspector: [chromium] introduce HeapSnapshot performance test.
3567 https://bugs.webkit.org/show_bug.cgi?id=80280
3569 Reviewed by Pavel Feldman.
3571 * inspector/detailed-heapshots-smoke-test.html: Added.
3573 2012-03-01 Ryosuke Niwa <rniwa@webkit.org>
3575 DOM tests take too long to run
3576 https://bugs.webkit.org/show_bug.cgi?id=80082
3578 Reviewed by Eric Seidel.
3580 Reduce benchmark.timeToRun from 500ms to 100ms. Doesn't seem to affect test results much
3581 (except DOM/DOMTable.html) but significantly reduces the runtime of tests.
3583 * DOM/resources/dom-perf.js:
3584 (BenchmarkSuite.prototype.RunSingle):
3586 2012-02-26 Kentaro Hara <haraken@chromium.org>
3588 [Performance Tests] [Chromium] Bindings/dom-attributes.html is timing out
3589 https://bugs.webkit.org/show_bug.cgi?id=79593
3591 Reviewed by Adam Barth.
3593 This patch halves the execution time of Bindings/dom-attributes.html
3594 in order to avoid timeout in Chromium. The reason for the timeout is that
3595 V8 DOM bindings are too much slower than JSC bindings.
3596 I am a bit afraid that this patch will reduce the accuracy of the
3597 perf test results, but it would make sense to reduce the execution time
3598 until we fix the performance issue in V8 DOM bindings.
3600 * Bindings/dom-attributes.html:
3602 2012-02-24 Ryosuke Niwa <rniwa@webkit.org>
3604 Rename dom*_*attributes.html to dom*-*attributes.html to follow the WebKit convention.
3606 * Bindings/dom-attributes.html: Copied from PerformanceTests/Bindings/dom_attributes.html.
3607 * Bindings/dom_attributes.html: Removed.
3609 2012-02-24 Kentaro Hara <haraken@chromium.org>
3611 Unreviewed, rolling out r108477.
3612 http://trac.webkit.org/changeset/108477
3613 https://bugs.webkit.org/show_bug.cgi?id=79209
3615 The perf tests committed in r108748 covers the perf tests
3616 committed in r108477. So I'll roll out r108477.
3618 * Bindings/dom_attributes_id_getter.html: Removed.
3619 * Bindings/dom_attributes_id_setter.html: Removed.
3620 * Bindings/resources/dom_attributes_common.js: Removed.
3622 2012-02-24 Kentaro Hara <haraken@chromium.org>
3624 Add performance tests for DOM attribute getters and setters
3625 https://bugs.webkit.org/show_bug.cgi?id=79208
3627 Reviewed by Ryosuke Niwa.
3629 This patch adds performance micro-benchmarks for DOM attribute
3630 getters and setters. We selected DOM attributes from HTMLElement,
3631 Element and Node which will most impact on the DOM performance
3632 in the real Web and which have different call-paths from another
3635 The perf test result in my local Chromium/Linux environment is as follows:
3636 median= 14967.0 ms, stdev= 85.2385476178 ms, min= 14861.0 ms, max= 15155.0 ms
3638 If we run the test with DumpRenderTree, we can get the following test results:
3639 Info: [HTMLElement.id] avg=65.76ms, median=65.00ms, stdev=2.14ms, min=63, max=70
3640 Info: [HTMLElement.title] avg=64.05ms, median=63.00ms, stdev=1.50ms, min=63, max=67
3641 Info: [HTMLElement.lang] avg=64.19ms, median=63.00ms, stdev=1.82ms, min=62, max=67
3642 Info: [HTMLElement.dir] avg=64.10ms, median=63.00ms, stdev=1.72ms, min=62, max=68
3643 Info: [HTMLElement.className] avg=63.33ms, median=63.00ms, stdev=0.89ms, min=63, max=67
3644 Info: [HTMLElement.classList] avg=1946.00ms, median=1945.00ms, stdev=38.22ms, min=1921, max=2110
3645 Info: [HTMLElement.tabIndex] avg=83.52ms, median=80.00ms, stdev=6.00ms, min=79, max=94
3646 Info: [HTMLElement.draggable] avg=78.14ms, median=81.00ms, stdev=3.51ms, min=74, max=82
3647 Info: [HTMLElement.webkitdropzone] avg=64.33ms, median=63.00ms, stdev=1.98ms, min=63, max=68
3648 Info: [HTMLElement.hidden] avg=65.57ms, median=64.00ms, stdev=3.27ms, min=63, max=71
3649 Info: [HTMLElement.accessKey] avg=64.43ms, median=63.00ms, stdev=2.11ms, min=62, max=68
3650 Info: [HTMLElement.children] avg=130.76ms, median=128.00ms, stdev=9.75ms, min=109, max=143
3651 Info: [HTMLElement.isContentEditable] avg=74.29ms, median=75.00ms, stdev=2.00ms, min=71, max=77
3652 Info: [HTMLElement.spellcheck] avg=79.52ms, median=80.00ms, stdev=2.52ms, min=76, max=82
3653 Info: [HTMLElement.innerHTML] avg=279.05ms, median=279.00ms, stdev=1.96ms, min=276, max=283
3654 Info: [HTMLElement.innerText] avg=204.14ms, median=203.00ms, stdev=2.95ms, min=200, max=210
3655 Info: [HTMLElement.outerHTML] avg=1544.10ms, median=1546.00ms, stdev=15.56ms, min=1514, max=1568
3656 Info: [HTMLElement.outerText] avg=216.05ms, median=207.00ms, stdev=18.19ms, min=201, max=247
3657 Info: [HTMLElement.contentEditable] avg=334.24ms, median=323.00ms, stdev=36.06ms, min=318, max=446
3658 Info: [HTMLElement.id="foo"] avg=53.19ms, median=53.00ms, stdev=1.76ms, min=52, max=58
3659 Info: [HTMLElement.title="foo"] avg=63.14ms, median=63.00ms, stdev=0.35ms, min=63, max=64
3660 Info: [HTMLElement.lang="foo"] avg=60.86ms, median=61.00ms, stdev=0.56ms, min=60, max=62
3661 Info: [HTMLElement.dir="foo"] avg=53.57ms, median=54.00ms, stdev=0.58ms, min=53, max=55
3662 Info: [HTMLElement.className="foo"] avg=64.52ms, median=64.00ms, stdev=0.91ms, min=63, max=66
3663 Info: [HTMLElement.tabIndex="foo"] avg=367.86ms, median=369.00ms, stdev=8.06ms, min=352, max=380
3664 Info: [HTMLElement.draggable="foo"] avg=79.43ms, median=79.00ms, stdev=0.58ms, min=79, max=81
3665 Info: [HTMLElement.webkitdropzone="foo"] avg=62.14ms, median=62.00ms, stdev=0.35ms, min=62, max=63
3666 Info: [HTMLElement.hidden="foo"] avg=61.67ms, median=62.00ms, stdev=0.71ms, min=61, max=64
3667 Info: [HTMLElement.accessKey="foo"] avg=61.86ms, median=62.00ms, stdev=0.56ms, min=61, max=63
3668 Info: [HTMLElement.spellcheck="foo"] avg=79.57ms, median=80.00ms, stdev=0.58ms, min=78, max=80
3669 Info: [HTMLElement.innerHTML="foo"] avg=1176.67ms, median=1169.00ms, stdev=26.60ms, min=1146, max=1246
3670 Info: [HTMLElement.innerText="foo"] avg=51.62ms, median=52.00ms, stdev=0.72ms, min=50, max=53
3671 Info: [Element.tagName] avg=79.52ms, median=80.00ms, stdev=1.05ms, min=78, max=81
3672 Info: [Element.style] avg=126.19ms, median=126.00ms, stdev=10.40ms, min=104, max=161
3673 Info: [Element.offsetLeft] avg=98.95ms, median=104.00ms, stdev=4.01ms, min=100, max=99
3674 Info: [Element.clientLeft] avg=98.33ms, median=102.00ms, stdev=2.59ms, min=100, max=99
3675 Info: [Element.scrollLeft] avg=103.29ms, median=96.00ms, stdev=15.63ms, min=100, max=97
3676 Info: [Element.dataset] avg=2448.62ms, median=2441.00ms, stdev=20.43ms, min=2426, max=2503
3677 Info: [Element.firstElementChild] avg=58.71ms, median=58.00ms, stdev=2.37ms, min=57, max=65
3678 Info: [Element.lastElementChild] avg=56.33ms, median=55.00ms, stdev=1.83ms, min=54, max=59
3679 Info: [Element.previousElementSibling] avg=52.95ms, median=52.00ms, stdev=1.70ms, min=52, max=57
3680 Info: [Element.nextElementSibling] avg=58.48ms, median=58.00ms, stdev=1.79ms, min=57, max=63
3681 Info: [Element.childElementCount] avg=64.57ms, median=64.00ms, stdev=1.81ms, min=63, max=71
3682 Info: [Element.onload] avg=98.38ms, median=98.00ms, stdev=0.49ms, min=98, max=99
3683 Info: [Element.scrollLeft="foo"] avg=95.24ms, median=95.00ms, stdev=0.92ms, min=94, max=98
3684 Info: [Element.onload="foo"] avg=67.14ms, median=67.00ms, stdev=0.56ms, min=66, max=68
3685 Info: [Node.nodeName] avg=76.29ms, median=76.00ms, stdev=0.63ms, min=75, max=77
3686 Info: [Node.nodeType] avg=53.05ms, median=52.00ms, stdev=2.61ms, min=52, max=61
3687 Info: [Node.parentNode] avg=53.52ms, median=53.00ms, stdev=1.22ms, min=52, max=56
3688 Info: [Node.childNodes] avg=118.33ms, median=123.00ms, stdev=8.85ms, min=107, max=129
3689 Info: [Node.firstChild] avg=53.62ms, median=53.00ms, stdev=1.13ms, min=51, max=55
3690 Info: [Node.lastChild] avg=53.14ms, median=53.00ms, stdev=1.21ms, min=52, max=55
3691 Info: [Node.previousSibling] avg=51.86ms, median=51.00ms, stdev=1.55ms, min=50, max=54
3692 Info: [Node.nextSibling] avg=52.86ms, median=54.00ms, stdev=1.81ms, min=50, max=55
3693 Info: [Node.attributes] avg=2027.71ms, median=2026.00ms, stdev=10.48ms, min=2010, max=2051
3694 Info: [Node.ownerDocument] avg=152.14ms, median=152.00ms, stdev=1.73ms, min=149, max=155
3695 Info: [Node.namespaceURI] avg=60.86ms, median=59.00ms, stdev=3.85ms, min=56, max=66
3696 Info: [Node.localName] avg=60.00ms, median=59.00ms, stdev=2.71ms, min=57, max=66
3697 Info: [Node.baseURI] avg=671.10ms, median=668.00ms, stdev=10.66ms, min=659, max=706
3698 Info: [Node.parentElement] avg=55.05ms, median=56.00ms, stdev=2.15ms, min=52, max=58
3699 Info: [Node.nodeValue] avg=61.24ms, median=60.00ms, stdev=2.56ms, min=59, max=68
3700 Info: [Node.prefix] avg=60.90ms, median=58.00ms, stdev=4.26ms, min=57, max=68
3701 Info: [Node.textContent] avg=149.71ms, median=149.00ms, stdev=1.12ms, min=148, max=152
3702 Info: [Node.nodeValue="foo"] avg=23.62ms, median=23.00ms, stdev=0.72ms, min=23, max=25
3703 Info: [Node.prefix="foo"] avg=49.57ms, median=49.00ms, stdev=0.73ms, min=49, max=51
3704 Info: [Node.textContent="foo"] avg=145.81ms, median=140.00ms, stdev=17.43ms, min=138, max=199
3706 * Bindings/dom_attributes.html: Added.
3707 * resources/runner.js:
3708 (PerfTestRunner.info):
3710 2012-02-22 Kentaro Hara <haraken@chromium.org>
3712 Add performance tests for the Element.id getter and setter
3713 https://bugs.webkit.org/show_bug.cgi?id=79209
3715 Reviewed by Adam Barth.
3717 This patch adds performance tests for the Element.id getter and setter.
3719 The results of 10 runs in my local Chromium/Linux are as follows:
3721 dom_attributes_id_getter.html:
3722 median= 92.0 ms, stdev= 1.65151445649 ms, min= 89.0 ms, max= 96.0 ms
3723 median= 87.5 ms, stdev= 1.84390889146 ms, min= 85.0 ms, max= 92.0 ms
3724 median= 94.0 ms, stdev= 1.46543508898 ms, min= 90.0 ms, max= 95.0 ms
3725 median= 86.0 ms, stdev= 1.66958078571 ms, min= 84.0 ms, max= 91.0 ms
3726 median= 94.0 ms, stdev= 2.25610283454 ms, min= 103.0 ms, max= 98.0 ms
3727 median= 86.0 ms, stdev= 1.49666295471 ms, min= 84.0 ms, max= 91.0 ms
3728 median= 86.0 ms, stdev= 1.5321553446 ms, min= 84.0 ms, max= 90.0 ms
3729 median= 86.0 ms, stdev= 2.20227155455 ms, min= 84.0 ms, max= 94.0 ms
3730 median= 96.0 ms, stdev= 1.74570902501 ms, min= 101.0 ms, max= 99.0 ms
3731 median= 86.0 ms, stdev= 1.63935963108 ms, min= 84.0 ms, max= 90.0 ms
3732 median= 94.0 ms, stdev= 1.49248115566 ms, min= 90.0 ms, max= 95.0 ms
3733 median= 88.0 ms, stdev= 5.20192272146 ms, min= 84.0 ms, max= 98.0 ms
3734 median= 86.0 ms, stdev= 1.41067359797 ms, min= 84.0 ms, max= 89.0 ms
3735 median= 86.0 ms, stdev= 1.48660687473 ms, min= 84.0 ms, max= 89.0 ms
3736 median= 94.0 ms, stdev= 1.58113883008 ms, min= 93.0 ms, max= 97.0 ms
3737 median= 86.0 ms, stdev= 1.95959179423 ms, min= 84.0 ms, max= 93.0 ms
3738 median= 86.0 ms, stdev= 1.8547236991 ms, min= 84.0 ms, max= 92.0 ms
3739 median= 86.0 ms, stdev= 1.39283882772 ms, min= 84.0 ms, max= 89.0 ms
3740 median= 88.0 ms, stdev= 1.48660687473 ms, min= 85.0 ms, max= 90.0 ms
3741 median= 86.5 ms, stdev= 2.3 ms, min= 84.0 ms, max= 93.0 ms
3743 dom_attributes_id_setter.html:
3744 median= 123.0 ms, stdev= 2.06397674406 ms, min= 119.0 ms, max= 128.0 ms
3745 median= 119.0 ms, stdev= 1.92028643697 ms, min= 117.0 ms, max= 123.0 ms
3746 median= 121.0 ms, stdev= 1.8781639971 ms, min= 118.0 ms, max= 123.0 ms
3747 median= 123.0 ms, stdev= 2.21585198062 ms, min= 119.0 ms, max= 130.0 ms
3748 median= 124.5 ms, stdev= 2.36378933071 ms, min= 119.0 ms, max= 129.0 ms
3749 median= 122.0 ms, stdev= 2.4474476501 ms, min= 118.0 ms, max= 128.0 ms
3750 median= 123.0 ms, stdev= 1.76351920885 ms, min= 118.0 ms, max= 125.0 ms
3751 median= 119.0 ms, stdev= 1.79652442232 ms, min= 117.0 ms, max= 125.0 ms
3752 median= 121.0 ms, stdev= 1.49916643506 ms, min= 119.0 ms, max= 123.0 ms
3753 median= 119.5 ms, stdev= 1.85135085816 ms, min= 117.0 ms, max= 125.0 ms
3754 median= 124.0 ms, stdev= 1.43090880213 ms, min= 120.0 ms, max= 124.0 ms
3755 median= 122.0 ms, stdev= 1.45859521458 ms, min= 118.0 ms, max= 123.0 ms
3756 median= 123.0 ms, stdev= 1.50332963784 ms, min= 120.0 ms, max= 124.0 ms
3757 median= 123.0 ms, stdev= 1.3638181697 ms, min= 120.0 ms, max= 125.0 ms
3758 median= 119.0 ms, stdev= 1.43527000944 ms, min= 117.0 ms, max= 121.0 ms
3759 median= 122.5 ms, stdev= 1.71682847134 ms, min= 118.0 ms, max= 124.0 ms
3760 median= 121.0 ms, stdev= 1.44481832768 ms, min= 118.0 ms, max= 123.0 ms
3761 median= 120.0 ms, stdev= 1.40978721799 ms, min= 117.0 ms, max= 122.0 ms
3762 median= 122.0 ms, stdev= 1.68522995464 ms, min= 119.0 ms, max= 125.0 ms
3763 median= 122.0 ms, stdev= 1.55804364509 ms, min= 118.0 ms, max= 123.0 ms
3766 * Bindings/dom_attributes_id_getter.html: Added.
3767 * Bindings/dom_attributes_id_setter.html: Added.
3768 * Bindings/resources/dom_attributes_common.js: Added.
3770 2012-02-16 Alexis Menard <alexis.menard@openbossa.org>
3772 Add a perf test for the CSS parser.
3773 https://bugs.webkit.org/show_bug.cgi?id=78114
3775 Reviewed by Ryosuke Niwa.
3777 Add a perf test for the CSS parser. It load a big CSS chunk
3778 which contains some snippets of the YUI library from Yahoo!.
3780 * Parser/css-parser-yui.html: Added.
3782 2012-02-08 Hajime Morrita <morrita@chromium.org>
3784 [PerformanceTests] sunspider-crypto-md5.html and sunspider-crypto-sha1.html are timing out on cr-mac perf bot
3785 https://bugs.webkit.org/show_bug.cgi?id=78174
3787 Reviewed by Ryosuke Niwa.
3789 Pulled back removed files.
3791 * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-md5.html: Added.
3792 * Dromaeo/resources/dromaeo/web/tests/sunspider-crypto-sha1.html: Added.
3794 2012-02-02 Hajime Morrita <morrita@chromium.org>
3796 [PerformanceTests] Each Dromaeo test needs its landing html.
3797 https://bugs.webkit.org/show_bug.cgi?id=77504
3799 Reviewed by Ryosuke Niwa.
3801 - Added landing pages for each test which are listed in MANIFEST.json
3802 - Removed some tests which depends on the library whose license is incompatible to WebKit.
3803 - Added local copy of corresponding library. And replace the references to the remote sources
3804 to the local copies.
3805 - Removed old library files under Dromaeo/resources/dromaeo/web/lib/.
3806 - Skipped Sunsupier and v8 test. Such JS centric test should have its own test instead of
3807 running as a part of Dromaeo.
3809 * Dromaeo/cssquery-dojo.html: Added.
3810 * Dromaeo/cssquery-jquery.html: Added.
3811 * Dromaeo/cssquery-prototype.html: Added.
3812 * Dromaeo/dom-attr.html: Added.
3813 * Dromaeo/dom-modify.html: Added.
3814 * Dromaeo/dom-traverse.html: Added.
3815 * Dromaeo/dromaeo-3d-cube.html: Added.
3816 * Dromaeo/dromaeo-core-eval.html: Added.
3817 * Dromaeo/dromaeo-object-array.html: Added.
3818 * Dromaeo/dromaeo-object-regexp.html: Added.
3819 * Dromaeo/dromaeo-object-string.html: Added.
3820 * Dromaeo/dromaeo-string-base64.html: Added.
3821 * Dromaeo/jslib-attr-jquery.html: Added.
3822 * Dromaeo/jslib-attr-prototype.html: Added.
3823 * Dromaeo/jslib-event-jquery.html: Added.
3824 * Dromaeo/jslib-event-prototype.html: Added.
3825 * Dromaeo/jslib-modify-jquery.html: Added.
3826 * Dromaeo/jslib-modify-prototype.html: Added.
3827 * Dromaeo/jslib-style-jquery.html: Added.
3828 * Dromaeo/jslib-style-prototype.html: Added.
3829 * Dromaeo/jslib-traverse-jquery.html: Added.
3830 * Dromaeo/jslib-traverse-prototype.html: Added.
3831 * Dromaeo/resources/dromaeo/web/lib/dojo.js: Removed.
3832 * Dromaeo/resources/dromaeo/web/lib/dojo-1.6.1.js: Added.
3833 * Dromaeo/resources/dromaeo/web/lib/jquery.js: Removed.
3834 * Dromaeo/resources/dromaeo/web/lib/jquery-1.6.4.js: Added.
3835 * Dromaeo/resources/dromaeo/web/lib/mootools.js: Removed.
3836 * Dromaeo/resources/dromaeo/web/lib/prototype.js: Removed.
3837 * Dromaeo/resources/dromaeo/web/lib/prototype-1.7.js: Added.
3838 * Dromaeo/resources/dromaeo/web/tests/cssquery-dojo.html:
3839 * Dromaeo/resources/dromaeo/web/tests/cssquery-jquery.html:
3840 * Dromaeo/resources/dromaeo/web/tests/cssquery-mootools.html: Removed.
3841 * Dromaeo/resources/dromaeo/web/tests/cssquery-prototype.html:
3842 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-jquery.html:
3843 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-prototype.html:
3844 * Dromaeo/resources/dromaeo/web/tests/jslib-event-jquery.html:
3845 * Dromaeo/resources/dromaeo/web/tests/jslib-event-prototype.html:
3846 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-jquery.html:
3847 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-prototype.html:
3848 * Dromaeo/resources/dromaeo/web/tests/jslib-style-jquery.html:
3849 * Dromaeo/resources/dromaeo/web/tests/jslib-style-prototype.html:
3850 * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-jquery.html:
3851 * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-prototype.html:
3852 * Dromaeo/sunspider-3d-morph.html: Added.
3853 * Dromaeo/sunspider-3d-raytrace.html: Added.
3854 * Dromaeo/sunspider-access-binary-trees.html: Added.
3855 * Dromaeo/sunspider-access-fannkuch.html: Added.
3856 * Dromaeo/sunspider-access-nbody.html: Added.
3857 * Dromaeo/sunspider-access-nsieve.html: Added.
3858 * Dromaeo/sunspider-bitops-3bit-bits-in-byte.html: Added.
3859 * Dromaeo/sunspider-bitops-bits-in-byte.html: Added.
3860 * Dromaeo/sunspider-bitops-bitwise-and.html: Added.
3861 * Dromaeo/sunspider-bitops-nsieve-bits.html: Added.
3862 * Dromaeo/sunspider-controlflow-recursive.html: Added.
3863 * Dromaeo/sunspider-crypto-aes.html: Added.
3864 * Dromaeo/sunspider-crypto-md5.html: Added.
3865 * Dromaeo/sunspider-crypto-sha1.html: Added.
3866 * Dromaeo/sunspider-date-format-tofte.html: Added.
3867 * Dromaeo/sunspider-date-format-xparb.html: Added.
3868 * Dromaeo/sunspider-math-cordic.html: Added.
3869 * Dromaeo/sunspider-math-partial-sums.html: Added.
3870 * Dromaeo/sunspider-math-spectral-norm.html: Added.
3871 * Dromaeo/sunspider-regexp-dna.html: Added.
3872 * Dromaeo/sunspider-string-fasta.html: Added.
3873 * Dromaeo/sunspider-string-tagcloud.html: Added.
3874 * Dromaeo/sunspider-string-unpack-code.html: Added.
3875 * Dromaeo/sunspider-string-validate-input.html: Added.
3876 * Dromaeo/v8-crypto.html: Added.
3877 * Dromaeo/v8-deltablue.html: Added.
3878 * Dromaeo/v8-earley-boyer.html: Added.
3879 * Dromaeo/v8-raytrace.html: Added.
3880 * Dromaeo/v8-richards.html: Added.
3883 2012-02-02 Sheriff Bot <webkit.review.bot@gmail.com>
3885 Unreviewed, rolling out r106543.
3886 http://trac.webkit.org/changeset/106543
3887 https://bugs.webkit.org/show_bug.cgi?id=77671
3889 Made tests less stable (Requested by rniwa on #webkit).
3891 * resources/init.html: Removed.
3893 2012-02-02 Ryosuke Niwa <rniwa@webkit.org>
3895 [PerformanceTests] tests have dependencies
3896 https://bugs.webkit.org/show_bug.cgi?id=77506
3898 Reviewed by Hajime Morita.
3900 * resources/init.html: Added.
3902 2012-02-01 Ryosuke Niwa <rniwa@webkit.org>
3904 Fix after r106386. The empty anchor element was generating an erroneous whitespace.
3906 * Bindings/event-target-wrapper.html:
3908 2012-02-01 Ryosuke Niwa <rniwa@webkit.org>
3910 Another fix after r106379.
3912 * Parser/html5-full-render.html:
3914 2012-01-31 Hajime Morrita <morrita@chromium.org>
3916 Import Dromaeo to WebKit repository.
3917 https://bugs.webkit.org/show_bug.cgi?id=77328
3919 Reviewed by Ryosuke Niwa.
3921 Imported a modified version of Dromaeo which is able to
3924 The imported version originally came from:
3925 https://github.com/omo/dromaeo/commit/c942a1452109cdd5f759b3c4aee8d68d490d44a2
3927 * Dromaeo/resources/dromaeo/web/application.css: Added.
3928 * Dromaeo/resources/dromaeo/web/favicon.ico: Added.
3929 * Dromaeo/resources/dromaeo/web/favicon.png: Added.
3930 * Dromaeo/resources/dromaeo/web/htmlrunner.js: Added.
3931 * Dromaeo/resources/dromaeo/web/ie.css: Added.
3932 * Dromaeo/resources/dromaeo/web/images/bg.png: Added.
3933 * Dromaeo/resources/dromaeo/web/images/clouds.png: Added.
3934 * Dromaeo/resources/dromaeo/web/images/clouds2.png: Added.
3935 * Dromaeo/resources/dromaeo/web/images/comets.png: Added.
3936 * Dromaeo/resources/dromaeo/web/images/dino1.png: Added.
3937 * Dromaeo/resources/dromaeo/web/images/dino2.png: Added.
3938 * Dromaeo/resources/dromaeo/web/images/dino3.png: Added.
3939 * Dromaeo/resources/dromaeo/web/images/dino4.png: Added.
3940 * Dromaeo/resources/dromaeo/web/images/dino5.png: Added.
3941 * Dromaeo/resources/dromaeo/web/images/dino6.png: Added.
3942 * Dromaeo/resources/dromaeo/web/images/dino7.png: Added.
3943 * Dromaeo/resources/dromaeo/web/images/dino8.png: Added.
3944 * Dromaeo/resources/dromaeo/web/images/left.png: Added.
3945 * Dromaeo/resources/dromaeo/web/images/logo.png: Added.
3946 * Dromaeo/resources/dromaeo/web/images/logo2.png: Added.
3947 * Dromaeo/resources/dromaeo/web/images/logo3.png: Added.
3948 * Dromaeo/resources/dromaeo/web/images/right.png: Added.
3949 * Dromaeo/resources/dromaeo/web/images/top.png: Added.
3950 * Dromaeo/resources/dromaeo/web/images/water.png: Added.
3951 * Dromaeo/resources/dromaeo/web/index.html: Added.
3952 * Dromaeo/resources/dromaeo/web/jquery.js: Added.
3953 * Dromaeo/resources/dromaeo/web/lib/dojo.js: Added.
3954 * Dromaeo/resources/dromaeo/web/lib/jquery.js: Added.
3955 * Dromaeo/resources/dromaeo/web/lib/mootools.js: Added.
3956 * Dromaeo/resources/dromaeo/web/lib/prototype.js: Added.
3957 * Dromaeo/resources/dromaeo/web/pngfix.js: Added.
3958 * Dromaeo/resources/dromaeo/web/reset.css: Added.
3959 * Dromaeo/resources/dromaeo/web/test-head.html: Added.
3960 * Dromaeo/resources/dromaeo/web/test-head.js: Added.
3961 * Dromaeo/resources/dromaeo/web/test-tail.html: Added.
3962 * Dromaeo/resources/dromaeo/web/test-tail.js: Added.
3963 * Dromaeo/resources/dromaeo/web/tests/MANIFEST.json: Added.
3964 * Dromaeo/resources/dromaeo/web/tests/cssquery-dojo.html: Added.
3965 * Dromaeo/resources/dromaeo/web/tests/cssquery-jquery.html: Added.
3966 * Dromaeo/resources/dromaeo/web/tests/cssquery-mootools.html: Added.
3967 * Dromaeo/resources/dromaeo/web/tests/cssquery-prototype.html: Added.
3968 * Dromaeo/resources/dromaeo/web/tests/cssquery-yui.html: Added.
3969 * Dromaeo/resources/dromaeo/web/tests/dom-attr.html: Added.
3970 * Dromaeo/resources/dromaeo/web/tests/dom-modify.html: Added.
3971 * Dromaeo/resources/dromaeo/web/tests/dom-query.html: Added.
3972 * Dromaeo/resources/dromaeo/web/tests/dom-traverse.html: Added.
3973 * Dromaeo/resources/dromaeo/web/tests/dromaeo-3d-cube.html: Added.
3974 * Dromaeo/resources/dromaeo/web/tests/dromaeo-core-eval.html: Added.
3975 * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-array.html: Added.
3976 * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-regexp.html: Added.
3977 * Dromaeo/resources/dromaeo/web/tests/dromaeo-object-string.html: Added.
3978 * Dromaeo/resources/dromaeo/web/tests/dromaeo-string-base64.html: Added.
3979 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-jquery.html: Added.
3980 * Dromaeo/resources/dromaeo/web/tests/jslib-attr-prototype.html: Added.
3981 * Dromaeo/resources/dromaeo/web/tests/jslib-event-jquery.html: Added.
3982 * Dromaeo/resources/dromaeo/web/tests/jslib-event-prototype.html: Added.
3983 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-jquery.html: Added.
3984 * Dromaeo/resources/dromaeo/web/tests/jslib-modify-prototype.html: Added.
3985 * Dromaeo/resources/dromaeo/web/tests/jslib-style-jquery.html: Added.
3986 * Dromaeo/resources/dromaeo/web/tests/jslib-style-prototype.html: Added.
3987 * Dromaeo/resources/dromaeo/web/tests/jslib-traverse-jquery.html: Added.