2012-01-26 Ryosuke Niwa Import Chromium's dom_perf test https://bugs.webkit.org/show_bug.cgi?id=77175 Reviewed by Adam Barth. Import dom_perf. Note resources/dom/suites.js isn't used by any html file yet but it will be used by Chromium port once its perf bots start pulling test files from WebKit repository instead of Google's internal repository. * DOM: Added. * DOM/Accessors.html: Added. * DOM/CloneNodes.html: Added. * DOM/CreateNodes.html: Added. * DOM/DOMDivWalk.html: Added. * DOM/DOMTable.html: Added. * DOM/DOMWalk.html: Added. * DOM/Events.html: Added. * DOM/GetElement.html: Added. * DOM/GridSort.html: Added. * DOM/Template.html: Added. * DOM/resources: Added. * DOM/resources/dom-perf.js: Added. * DOM/resources/dom-perf: Added. * DOM/resources/dom-perf/accessors.js: Added. * DOM/resources/dom-perf/clonenodes.js: Added. * DOM/resources/dom-perf/createnodes.js: Added. * DOM/resources/dom-perf/domdivwalk.js: Added. * DOM/resources/dom-perf/domtable.js: Added. * DOM/resources/dom-perf/domwalk.js: Added. * DOM/resources/dom-perf/events.js: Added. * DOM/resources/dom-perf/getelement.js: Added. * DOM/resources/dom-perf/gridsort.js: Added. * DOM/resources/dom-perf/suites.js: Added. * DOM/resources/dom-perf/template.js: Added. * resources/runner.js: 2012-01-25 Ryosuke Niwa html5-full-render.html fails due to a log https://bugs.webkit.org/show_bug.cgi?id=77046 Reviewed by Adam Barth. Replace the call to log() in html5-full-render.html by a call to newly added logInfo(), which doesn't print anything inside DRT. * Parser/html5-full-render.html: * resources/runner.js: (logInfo): 2012-01-19 Adam Barth PerformanceTests's runner.js shouldn't be Parser-specific https://bugs.webkit.org/show_bug.cgi?id=76670 Reviewed by Ryosuke Niwa. This runner script is used by a bunch of difference performance tests. It shouldn't be in the Parser directory anymore. * Bindings/event-target-wrapper.html: * Mutation/append-child-deep.html: * Mutation/append-child.html: * Mutation/inner-html.html: * Mutation/remove-child-deep.html: * Mutation/remove-child.html: * Parser/html-parser.html: * Parser/html5-full-render.html: * Parser/resources/runner.js: Removed. * Parser/simple-url.html: * Parser/tiny-innerHTML.html: * Parser/url-parser.html: * Parser/xml-parser.html: * resources: Added. * resources/runner.js: Copied from PerformanceTests/Parser/resources/runner.js. 2012-01-19 Ryosuke Niwa Some perf tests time out when ran by run-perf-tests https://bugs.webkit.org/show_bug.cgi?id=76612 Reviewed by Dirk Pranke and Eric Seidel. Replace all images in html5.html by geenbox.png to avoid accessing whatwg.org when running the parser tests. Also call dumpAsText, waitUntilDone, and notifyDone automatically inside runner.js to avoid having to call them in individual tests. * Bindings/event-target-wrapper.html: Removed calls to layoutTestController methods since they are now called by runner.js automatically. * Parser/resources/greenbox.png: Copied from LayoutTests/fast/css/resources/greenbox.png. * Parser/resources/html5.html: * Parser/resources/runner.js: (runLoop): 2012-01-18 Ryosuke Niwa run-perf-tests should support Skipped list https://bugs.webkit.org/show_bug.cgi?id=76594 Reviewed by Adam Barth. Add Skipped list to be used by run-perf-tests as it can only runs tests in Bindings, Parser, and inspector at the moment. * Skipped: Added. 2012-01-12 Ilya Tikhonovsky Web Inspector: performance: restore 'log 300 messages into console' test. https://bugs.webkit.org/show_bug.cgi?id=76170 It was removed in order of transition from layout tests to perf tests. Reviewed by Yury Semikhatsky. * inspector/console-300-lines.html: Added. 2012-01-12 Ilya Tikhonovsky Web Inspector: performance tests: fix memory leak in first-open-resources test. https://bugs.webkit.org/show_bug.cgi?id=76049 first-open-resources doesn't reset resource panel properly after test run. Reviewed by Yury Semikhatsky. * inspector/first-open-resources.html: 2012-01-10 Ilya Tikhonovsky Unreviewed. WebInspector: Remove unnecessary logging from the test. * inspector/first-open-resources.html: 2012-01-10 Ilya Tikhonovsky Unreviewed. Restore test that was removed during migration from LayoutTests folder. * inspector/first-open-resources.html: Added. 2012-01-09 Ilya Tikhonovsky Unreviewed test fix after r103683. * inspector/first-open-scripts.html: * inspector/show-panel.html: 2012-01-03 Adam Barth html-parser.html takes too long to run https://bugs.webkit.org/show_bug.cgi?id=75515 Reviewed by Eric Seidel. In working on runner.js, we introduced a factor of 10 increase to the running time of this benchmark. This patch dials down the number of iterations to something more user-friendly. * Parser/html-parser.html: 2011-12-18 Ilya Tikhonovsky Web Inspector: move heap data stats to separate tab. https://bugs.webkit.org/show_bug.cgi?id=74704 Reviewed by Pavel Feldman. * inspector/performance-test.js: (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump): (initialize_TimeTracker.InspectorTest.runPerformanceTest): 2011-12-01 Ilya Tikhonovsky Web Inspector: chromium: move and adapt Inspector's performance tests for running with run-inspector-perf-tests.py. https://bugs.webkit.org/show_bug.cgi?id=72260 Reviewed by Pavel Feldman. * inspector/first-open-elements.html: Renamed from LayoutTests/inspector/performance/resources/first-open-elements.html. * inspector/first-open-scripts.html: Renamed from LayoutTests/inspector/performance/resources/first-open-scripts.html. * inspector/inspector-startup-time.html: Renamed from LayoutTests/inspector/performance/resources/inspector-startup-time.html. * inspector/network-append-30-requests.html: Renamed from LayoutTests/inspector/performance/resources/network-append-30-requests.html. * inspector/performance-test.js: Renamed from LayoutTests/inspector/performance/resources/performance-test.js. (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.start): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.finish): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._getJSHeapSize): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.done): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._runTest): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump): (initialize_TimeTracker.InspectorTest.runPerformanceTest): (initialize_TimeTracker.InspectorTest.mark): * inspector/show-panel.html: Renamed from LayoutTests/inspector/performance/resources/show-panel.html. 2011-11-09 Adam Klein [MutationObservers] Microbenchmarks for appendChild, removeChild, and innerHTML https://bugs.webkit.org/show_bug.cgi?id=71939 Reviewed by Ojan Vafai. These benchmarks time both the DOM mutations themselves and the time taken to call the MutationCallback. This measurement is achieved by executing the code entirely within the MutationCallback itself. * Mutation/append-child-deep.html: Added. Covers appendChild in a 200-node-deep tree with subtree observation. * Mutation/append-child.html: Added. Covers appendChild in a flat tree. * Mutation/inner-html.html: Added. Covers innerHTML adding and removing many nodes at a time. * Mutation/remove-child-deep.html: Added. Covers removeChild in a 200-node-deep tree with subtree observation. * Mutation/remove-child.html: Added. Covers removeChild in a flat tree. 2011-10-25 Adam Barth EventTargetFactory.in is not sorted https://bugs.webkit.org/show_bug.cgi?id=70855 Reviewed by Eric Seidel. Add a microbenchmark for wrapping event target. * Bindings: Added. * Bindings/event-target-wrapper.html: Added. * Parser/resources/runner.js: (runLoop): - Let the user of the harness get a callback when the test is done. 2011-10-04 Eric Seidel Update html5-full-render.html to load the HTML5 spec incrementally, closer to how the browser would https://bugs.webkit.org/show_bug.cgi?id=69374 Unreviewed. Per https://bugs.webkit.org/show_bug.cgi?id=69374#c7 updating the chunksize to be a bit smaller now that the total size of the html5 spec is smaller than when I wrote the test. This should increase the prevalence of style resolution in the sample time, which more closely matches instrument samples taken when loading the full page in Safari. * Parser/html5-full-render.html: 2011-10-04 Eric Seidel Update html5-full-render.html to load the HTML5 spec incrementally, closer to how the browser would https://bugs.webkit.org/show_bug.cgi?id=69374 Reviewed by James Robinson. This should finally be able to provide us with a repeatable metric for how fast we're currently able to load the HTML5 spec. There are a variety of interesting functions which show up in this sample, including of course style resolution. * Parser/html5-full-render.html: 2011-10-04 Eric Seidel Update our copy of the HTML5 spec used for performance testing to match the latest version https://bugs.webkit.org/show_bug.cgi?id=69364 Unreviewed. The patch is too large to post, so landing this unreviewed. :( The copy of the html5 spec we were using for testing was over a year old and didn't have any of the subresources with it (we were only using it as an HTML parsing benchmark). I'm about to use it for testing the full load/render time of the benchmark, so I've updated to the latest version of the spec (now 8mb instead of 5mb) and inlined two of the CSS files. (Inlining the CSS was necessary to make my testing consistent as there seems to be a race with some timer fired after CSS load.) Increasing from 5mb to 8mb showed a similar 30% slowdown in our parser benchmarks as expected. * Parser/resources/html5.html: 2011-10-04 Eric Seidel Add loopsPerRun option to Parser performance test runner https://bugs.webkit.org/show_bug.cgi?id=69363 Reviewed by Antti Koivisto. Add loopsPerRun option and abstract out runLoop function (to make the UI more responsive). No change in behavior in any of the tests. * Parser/resources/runner.js: (runLoop): (run): (start): 2011-10-03 Eric Seidel Add a microbenchmark for a full-page render of the HTML5 spec https://bugs.webkit.org/show_bug.cgi?id=69285 Reviewed by Adam Barth. This was designed to be a test for https://bugs.webkit.org/show_bug.cgi?id=68944 But it seems that by far our dominating cost for the HTML5 benchmark is time spent laying out lines (which isn't actually that surprising). I'm adding the performance test for posterity. * Parser/html-parser.html: - Removed use of "about:blank" which abarth says is a no-op. Made comment more accurate. * Parser/html5-full-render.html: Copied from PerformanceTests/Parser/html-parser.html. 2011-10-03 Eric Seidel PerformanceTests/Parser/html-parser is only testing parsing of the head element https://bugs.webkit.org/show_bug.cgi?id=69283 Reviewed by Adam Barth. While investigating https://bugs.webkit.org/show_bug.cgi?id=68944 I found that the html-parser benchmark was only parsing up to the first script tag per loop! We've fixed this by adding the sandbox tag which will deny all external loads and allow the parser to synchronously continue parsing the entire document to completion (as we had expected it was doing). This changes the profile somewhat. Line number counting is much hotter, since we're actually accounting for the parse of the entire document in our sample. Total sample time only about doubles, from 1800ms to 3800ms on my machine which is less than I would have expected. * Parser/html-parser.html: 2011-08-09 Alexandru Chiculita Fixing 65868 REGRESSION(r92610) caused by 65668 - Optimize floating elements lookup https://bugs.webkit.org/show_bug.cgi?id=65871 Reviewed by Dave Hyatt. * Layout/floats.html: Added the nested divs, so that we can test the propagation impact of the floats tree. 2011-08-08 Sheriff Bot Unreviewed, rolling out r92610. http://trac.webkit.org/changeset/92610 https://bugs.webkit.org/show_bug.cgi?id=65868 Caused assertion failures when running fast/multicol tests (Requested by andersca on #webkit). * Layout/floats.html: 2011-08-08 Alexandru Chiculita Optimize floating elements lookup https://bugs.webkit.org/show_bug.cgi?id=65668 Reviewed by David Hyatt. * Layout/floats.html: Added the nested divs, so that we can test the propagation impact of the floats tree. 2011-08-04 Alexandru Chiculita Add a performance test for floating elements layout algorithm https://bugs.webkit.org/show_bug.cgi?id=65741 The test creating lots of small floats and randomly changes the width of one element at a time. It measures how often it can do that. Reviewed by Adam Barth. * Layout/floats.html: Added. 2011-05-30 Daniel Bates Reviewed by Adam Barth. Rename XSSFilter to XSSAuditor https://bugs.webkit.org/show_bug.cgi?id=61718 Currently we use the names XSSFilter and XSSAuditor throughout the project. Instead, we should choose one name for consistency. No functionality was changed. So, no new tests. * XSSAuditor: Copied from PerformanceTests/XSSFilter. * XSSFilter: Removed. * XSSFilter/large-post-many-events.html: Removed. * XSSFilter/large-post-many-inline-scripts-and-events.html: Removed. * XSSFilter/resources: Removed. * XSSFilter/resources/target-for-large-post-many-inline-scripts-and-events.html: Removed. 2011-03-25 Leo Yang Reviewed by Dirk Schulze. SVG element performance improvement https://bugs.webkit.org/show_bug.cgi?id=57077 Add a manual test case which is from http://upload.wikimedia.org/wikipedia/commons/4/4e/Sierpinski_carpet_6.svg for svg element performance test. * PageLoad/svg/files/Sierpinski_carpet_6.svg: Added. * PageLoad/svg/svg.pltsuite: 2011-02-05 Eric Seidel Reviewed by Adam Barth. Add performance tests for URL parsing https://bugs.webkit.org/show_bug.cgi?id=53845 The final-url-en URL corpus is from: http://corpus.leeds.ac.uk/internet.html There are also other language corpuses which we may want to use in the future. The usage instructions were as follows: "URL lists and other resources: you can freely use them in your research provided that you supply a link to this website: http://corpus.leeds.ac.uk/." Done. * Parser/simple-url.html: Added. On my machine: Firefox: 255ms TOT WebKit: 378ms Chrome: 286ms Opera: 2830ms (no, that is not a typo) * Parser/url-parser.html: Added. Firefox: 381ms TOT WebKit: 216ms Chrome: 131ms Opera: 1383ms (again, not a typo) * Parser/resources/final-url-en: Added. 2011-02-03 Adam Barth Reviewed by Daniel Bates. Add another XSSFilter PerformanceTest https://bugs.webkit.org/show_bug.cgi?id=53750 This PerformanceTest tests the case that was slow in https://bugs.webkit.org/show_bug.cgi?id=49845 * XSSFilter/large-post-many-inline-scripts-and-events.html: Added. * XSSFilter/resources: Added. * XSSFilter/resources/target-for-large-post-many-inline-scripts-and-events.html: Added. 2011-02-03 Adam Barth Reviewed by Eric Seidel. Add PerformanceTest for XSSFilter https://bugs.webkit.org/show_bug.cgi?id=53741 This performance tests covers the case of a large POST data and many small event handlers. * XSSFilter: Added. * XSSFilter/large-post-many-events.html: Added. 2011-02-02 Adam Barth Rubber-stamped by Eric Seidel. Merge PerformanceTests/Parser/ChangeLog and PerformanceTests/PageLoad/ChangeLog into PerformanceTests/ChangeLog. It's silly to have ChangeLogs for each of these directories separately. I've left SunSpider with its own ChangeLog because it's more of an independent entity. * ChangeLog: Added. 2011-02-02 Eric Seidel Unreviewed. Just fixing an exception seen in Firefox. HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40% https://bugs.webkit.org/show_bug.cgi?id=48719 Make the benchmarks work in Firefox/Opera. * resources/runner.js: (log): 2011-01-27 Eric Seidel Reviewed by Darin Adler. HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40% https://bugs.webkit.org/show_bug.cgi?id=48719 It's unclear exactly what the Peacekeeper benchmark is testing, because I haven't found a way to run it myself. However, I constructed a benchmark which shows at least one possible slow point. The HTML5 spec talks about creating a new document for every time we use the fragment parsing algorithm. Document() it turns out, it a huge bloated mess, and the constructor and destructor do a huge amount of work. * benchmarks/parser/tiny-innerHTML.html: Added. 2011-01-29 Sheriff Bot Unreviewed, rolling out r77050. http://trac.webkit.org/changeset/77050 https://bugs.webkit.org/show_bug.cgi?id=53371 Caused a crash in Chromium's test_shell_tests (Requested by rniwa on #webkit). * resources/performance-test.js: Removed. * tiny-innerHTML.html: Removed. 2011-01-28 Eric Seidel Reviewed by Darin Adler. HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40% https://bugs.webkit.org/show_bug.cgi?id=48719 It's unclear exactly what the Peacekeeper benchmark is testing, because I haven't found a way to run it myself. However, I constructed a benchmark which shows at least one possible slow point. The HTML5 spec talks about creating a new document for every time we use the fragment parsing algorithm. Document() it turns out, it a huge bloated mess, and the constructor and destructor do a huge amount of work. To avoid constructing (or destructing) documents for each innerHTML call, this patch adds a shared dummy document used by all innerHTML calls. * benchmarks/parser/tiny-innerHTML.html: Added. 2010-12-31 Adam Barth Rubber-stamped by Eric Seidel. Move HTML and XML parser benchmarks into PerformanceTests/Parser https://bugs.webkit.org/show_bug.cgi?id=51772 Add a ChangeLog for tracking changes to the Parser PerformanceTest. * ChangeLog: Added. 2010-12-31 Adam Barth Rubber-stamped by Eric Seidel. Move PageLoadTests to PerformanceTests/PageLoad https://bugs.webkit.org/show_bug.cgi?id=51771 Update URLs to point to the new directory name. * svg/svg.pltsuite: 2006-12-26 Eric Seidel Reviewed by olliej. * svg/svg.pltsuite: re-enable word-iso.svg after fixing http://bugs.webkit.org/show_bug.cgi?id=11987 2006-12-26 Eric Seidel Reviewed by bradee-oh. Add new PageLoadTests directory (this one) Add LICENSES file to explain where each SVG came from. * ChangeLog: Added. * svg/LICENSES: Added. * svg/files/33041-Samurai.svg: Added. * svg/files/42470-flower_from_my_garden_v2.svg: Added. * svg/files/Harvey_Rayner.svg: Added. * svg/files/az-lizard_benji_park_01.svg: Added. * svg/files/bamboo_01.svg: Added. * svg/files/cacuts_01.svg: Added. * svg/files/cowboy.svg: Added. * svg/files/crawfish2_ganson.svg: Added. * svg/files/deb9frac1.svg: Added. * svg/files/food_leif_lodahl_01.svg: Added. * svg/files/france.svg: Added. * svg/files/francobollo_gnome_ezechi_02.svg: Added. * svg/files/gearflowers.svg: Added. * svg/files/hereGear4.svg: Added. * svg/files/mtsthelens.svg: Added. * svg/files/mtsthelens0.jpg: Added. * svg/files/world-iso.svg: Added. * svg/files/worldcup.svg: Added. * svg/svg.pltsuite: Added.