2012-10-26 Zoltan Horvath Turn PageLoad tests into simple performancetests, commit #5 https://bugs.webkit.org/show_bug.cgi?id=99899 Reviewed by Ryosuke Niwa. We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple performance tests and measure their memory footprint and performance that way. This change moves and renames the related files to their new location and adds html/js wrappers for them. This is the #5 commit of the whole patch. * PageLoad/svg/files/Harvey_Rayner.svg: Removed. * PageLoad/svg/files/Sierpinski_carpet_6.svg: Removed. * PageLoad/svg/files/mtsthelens.svg: Removed. * PageLoad/svg/files/mtsthelens0.jpg: Removed. * SVG/HarveyRayner.html: Added. * SVG/MtSaintHelens.html: Added. * SVG/SierpinskiCarpet.html: Added. * SVG/resources/HarveyRayner.svg: Copied from PerformanceTests/PageLoad/svg/files/Harvey_Rayner.svg. * SVG/resources/MtSaintHelens.svg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens.svg. * SVG/resources/SierpinskiCarpet.svg: Copied from PerformanceTests/PageLoad/svg/files/Sierpinski_carpet_6.svg. * SVG/resources/mtsthelens0.jpg: Copied from PerformanceTests/PageLoad/svg/files/mtsthelens0.jpg. * Skipped: Rename the files on the skipped list also. 2012-10-25 Zoltan Horvath Turn PageLoad tests into simple performancetests, commit #4 https://bugs.webkit.org/show_bug.cgi?id=99899 Reviewed by Ryosuke Niwa. We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple performance tests and measure their memory footprint and performance that way. This change moves and renames the related files to their new location and adds html/js wrappers for them. This is the #4 commit of the whole patch. * PageLoad/svg/files/france.svg: Removed. * PageLoad/svg/files/francobollo_gnome_ezechi_02.svg: Removed. * SVG/France.html: Added. * SVG/FrancoBolloGnomeEzechi.html: Added. * SVG/resources/France.svg: Copied from PerformanceTests/PageLoad/svg/files/france.svg. * SVG/resources/FrancoBolloGnomeEzechi.svg: Copied from PerformanceTests/PageLoad/svg/files/francobollo_gnome_ezechi_02.svg. * Skipped: Rename the files on the skipped list also. 2012-10-25 Zoltan Horvath Turn PageLoad tests into simple performancetests, commit #3 https://bugs.webkit.org/show_bug.cgi?id=99899 Reviewed by Ryosuke Niwa. We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple performance tests and measure their memory footprint and performance that way. This change moves and renames the related files to their new location and adds html/js wrappers for them. This is the #3 commit of the whole patch. * PageLoad/svg/files/42470-flower_from_my_garden_v2.svg: Removed. * PageLoad/svg/files/44057-drops on a blade.svg: Removed. * PageLoad/svg/files/deb9frac1.svg: Removed. * PageLoad/svg/files/food_leif_lodahl_01.svg: Removed. * SVG/Debian.html: Added. * SVG/DropsOnABlade.html: Added. * SVG/FlowerFromMyGarden.html: Added. * SVG/FoodLeifLodahl.html: Added. * SVG/resources/Debian.svg: Copied from PerformanceTests/PageLoad/svg/files/deb9frac1.svg. * SVG/resources/DropsOnABlade.svg: Copied from PerformanceTests/PageLoad/svg/files/44057-drops%20on%20a%20blade.svg. * SVG/resources/FlowerFromMyGarden.svg: Copied from PerformanceTests/PageLoad/svg/files/42470-flower_from_my_garden_v2.svg. * SVG/resources/FoodLeifLodahl.svg: Copied from PerformanceTests/PageLoad/svg/files/food_leif_lodahl_01.svg. 2012-10-24 Zoltan Horvath Turn PageLoad tests into simple performancetests, commit #2 https://bugs.webkit.org/show_bug.cgi?id=99899 Reviewed by Ryosuke Niwa. We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple performance tests and measure their memory footprint and performance that way. This change moves and renames the related files to their new location and adds html/js wrappers for them. This is the #2 commit of the whole patch. * PageLoad/svg/files/cacuts_01.svg: Removed. * PageLoad/svg/files/cowboy.svg: Removed. * PageLoad/svg/files/crawfish2_ganson.svg: Removed. * SVG/Cactus.html: Added. * SVG/Cowboy.html: Added. * SVG/CrawFishGanson.html: Added. * SVG/resources/Cactus.svg: Copied from PerformanceTests/PageLoad/svg/files/cacuts_01.svg. * SVG/resources/Cowboy.svg: Copied from PerformanceTests/PageLoad/svg/files/cowboy.svg. * SVG/resources/CrawFishGanson.svg: Copied from PerformanceTests/PageLoad/svg/files/crawfish2_ganson.svg. * Skipped: Remove az-lizard_benji_park_01.svg from the skipped list. 2012-10-24 Zoltan Horvath Turn PageLoad tests into simple performancetests, commit #1 https://bugs.webkit.org/show_bug.cgi?id=99899 Reviewed by Ryosuke Niwa. We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple performance tests and measure their memory footprint and performance that way. This change moves and renames the related files to their new location and adds html/js wrappers for them. This is the #1 commit of the whole patch. * PageLoad/svg/files/az-lizard_benji_park_01.svg: Removed. * PageLoad/svg/files/bamboo_01.svg: Removed. * SVG/AzLizardBenjiPark.html: Added. * SVG/Bamboo.html: Added. * SVG/resources: Added. * SVG/resources/AzLizardBenjiPark.svg: Copied from PerformanceTests/PageLoad/svg/files/az-lizard_benji_park_01.svg. * SVG/resources/Bamboo.svg: Copied from PerformanceTests/PageLoad/svg/files/bamboo_01.svg. 2012-10-24 Zoltan Horvath REGRESSION(r131982): Skip SVG/SvgNestedUse.html performancetest since it is crashing https://bugs.webkit.org/show_bug.cgi?id=100262 Unreviewed. Skip until proper fix. * Skipped: Add SVG/SvgNestedUse.html 2012-10-23 Zoltan Horvath Store the loaded file locally in measurePageLoadTime https://bugs.webkit.org/show_bug.cgi?id=100172 Reviewed by Csaba Osztrogonác. Store the loaded file as a local variable instead of attaching it to the test object. Handle chunkSize inside test.run. * resources/runner.js: (.): 2012-10-23 Zoltan Horvath Add measurePageLoadTime function to PerfTestRunner https://bugs.webkit.org/show_bug.cgi?id=100029 Reviewed by Ryosuke Niwa. Adopt chunk based loading logic from html5-full-render.html into measurePageLoadTime function, this is needed to measure the performance and the memory consumption of the PageLoadTests as we do it for all other performancetests. * Parser/html5-full-render.html: Move the behavior to runner.js. * resources/runner.js: (.): Add measurePageLoadTime function. 2012-10-22 Adam Barth [V8] Vastly simplify V8GCController's NodeVisitor https://bugs.webkit.org/show_bug.cgi?id=99884 Reviewed by Kentaro Hara. Adds some performance tests for the garbage collector. * Bindings/gc-forest.html: Added. * Bindings/gc-mini-tree.html: Added. * Bindings/gc-tree.html: Added. 2012-10-17 Ryosuke Niwa Bump up the number of iterations of html5-full-render to 5 https://bugs.webkit.org/show_bug.cgi?id=99657 Reviewed by Andreas Kling. Now that html5-full-render.html runs in less than 15 seconds after r131553, we can afford to get 5 instead of 2 samples. * Parser/html5-full-render.html: 2012-10-17 Ryosuke Niwa Rename PerfTestRunner.runPerSecond to PerfTestRunner.measureRunsPerSecond for consistency https://bugs.webkit.org/show_bug.cgi?id=99642 Reviewed by Dirk Pranke. Renamed the method. * Bindings/append-child.html: * Bindings/create-element.html: * Bindings/event-target-wrapper.html: * Bindings/first-child.html: * Bindings/get-attribute.html: * Bindings/get-element-by-id.html: * Bindings/get-elements-by-tag-name.html: * Bindings/id-getter.html: * Bindings/id-setter.html: * Bindings/insert-before.html: * Bindings/node-list-access.html: * Bindings/scroll-top.html: * Bindings/set-attribute.html: * Bindings/typed-array-construct-from-array.html: * Bindings/typed-array-construct-from-same-type.html: * Bindings/typed-array-construct-from-typed.html: * Bindings/typed-array-set-from-typed.html: * Bindings/undefined-first-child.html: * Bindings/undefined-get-element-by-id.html: * Bindings/undefined-id-getter.html: * CSS/CSSPropertySetterGetter.html: * CSS/CSSPropertyUpdateValue.html: * CSS/PseudoClassSelectors.html: * DOM/textarea-dom.html: * DOM/textarea-edit.html: * Interactive/resources/window-resize.js: * Layout/flexbox-column-nowrap.html: * Layout/flexbox-column-wrap.html: * Layout/flexbox-row-nowrap.html: * Layout/flexbox-row-wrap.html: * Layout/line-layout.html: * Parser/css-parser-yui.html: * Parser/innerHTML-setter.html: * Parser/query-selector-deep.html: * Parser/query-selector-first.html: * Parser/query-selector-last.html: * Parser/simple-url.html: * Parser/textarea-parsing.html: * Parser/tiny-innerHTML.html: * Parser/url-parser.html: * Parser/xml-parser.html: * SVG/SvgNestedUse.html: * resources/runner.js: 2012-10-17 Ryosuke Niwa Performance test should support asynchronous tests https://bugs.webkit.org/show_bug.cgi?id=95668 Reviewed by Dirk Pranke. Added PerfTestRunner.prepareToMeasureValuesAsync and PerfTestRunner.measureValueAsync, and deployed it in Animation/balls. * Animation/balls.html: * resources/runner.js: 2012-10-16 Elliott Sprehn html5-full-render.html test uses substring but meant substr https://bugs.webkit.org/show_bug.cgi?id=99495 Reviewed by Adam Barth. This test intended to chunk up the HTML5 spec into chunks of 500k chars, but used substring(to,from) instead of substr(from,length) so it actually loaded 5x more content than was in the HTML5 spec. * Parser/html5-full-render.html: 2012-10-11 James Simonsen unprefix window.performance.webkitNow() https://bugs.webkit.org/show_bug.cgi?id=88278 Reviewed by Tony Gentilcore. * resources/runner.js: Bind to proper object to avoid invalid invocation errors. 2012-10-08 Ryosuke Niwa Skip Layout/subtree-detaching.html temporarily as it's very noisy and takes 112s to run on Chromium Mac. This is tracked by the bug 98708. * Skipped: 2012-10-08 Ryosuke Niwa Perf. test results page is broken when runs have different sets of tests https://bugs.webkit.org/show_bug.cgi?id=98691 Reviewed by Daniel Bates. Add "missing" columns for tests that are missing some runs. Also fix regressions from the previous patch: - Make reference run switch work again - Load jquery plugins from the remote server when the jquery is loaded from the remote server. * resources/results-template.html: 2012-10-08 Ryosuke Niwa Perf test pesults page takes forever to load on a machine with a slow Internet connection https://bugs.webkit.org/show_bug.cgi?id=98561 Reviewed by Ojan Vafai. Try loading jquery both locally and remotely, and use the same method to load the remaining jquery plugins when either one succeeds. * resources/results-template.html: 2012-10-04 Hayato Ito [Refactoring] Introduce a traversal strategy in SelectorChecker https://bugs.webkit.org/show_bug.cgi?id=97298 Reviewed by Antti Koivisto. Introduces querySelector() performance tests to check SelectorChecker performance. * CSS/PseudoClassSelectors.html: Added. 2012-10-03 Philip Rogers Force GC between PageLoad tests. https://bugs.webkit.org/show_bug.cgi?id=98203 Reviewed by Ryosuke Niwa. Previously, our PageLoad PerfTests had multi-modal distributions, typically with a small cluster at 1-2x the median. This turned out to be caused by not garbage collecting between tests! This patch adds a new file, force-gc.html, and loads this file between PageLoad tests to force a GC. I manually verified that this cleans up our perf test outliers. * resources/force-gc.html: Added. 2012-10-03 Julien Chaffraix Add a performance test for subtree detaching https://bugs.webkit.org/show_bug.cgi?id=98281 Reviewed by Eric Seidel. The new test tries to stress detaching on a heavy subtree (2 levels deep but with 1,000 nodes per level). We set display: none on the root and measure the time it takes to update the tree. Note that we will also measure the time taken by recalcStyle and relayout but I don't think we can avoid that. * Layout/subtree-detaching.html: Added. 2012-10-02 Ryosuke Niwa Build fix after r130135. Dromaeo tests only report single memory value, and computeStatistics should report variance as 0 in such cases. * resources/runner.js: 2012-10-02 Philip Rogers Fix PerfTest standard deviation calculation. https://bugs.webkit.org/show_bug.cgi?id=98115 Reviewed by Ryosuke Niwa. Previously our standard deviation calculation was incorrect. This patch updates perftest.py's algorithm to calculate the sample standard deviation (with Bessel's correction) using Knuth's online algorithm: http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Online_algorithm An existing test has been modified to prove our new results. This patch also updates runner.js to use Bessel's correction in its sample standard deviation calculation, which is more accurate for small sample sizes. Additionally, runner.js has been modified to not calculate the 'sum' statistic, which was not very useful. * resources/runner.js: (PerfTestRunner.computeStatistics): 2012-10-01 Ryosuke Niwa PerfTestRunner: Move all functions into the closure and always use double quotation for string literals https://bugs.webkit.org/show_bug.cgi?id=98093 Reviewed by Ojan Vafai. Move all methods of PerfTestRunner into the closure that defines it. Also always use double quotations for string literals for consistency. * resources/runner.js: 2012-10-01 Ryosuke Niwa Encapsulate private properties in PerfTestRunner better https://bugs.webkit.org/show_bug.cgi?id=97833 Reviewed by Ojan Vafai. This patch moves "private" methods and properties of PerfTestRunner into a closure so that they're inaccssible from outside. Also catch exceptions from test.run, test.done, and other runner code to ensure we call notifyDone() even if we broke tests. Otherwise DRT will timeout and we end up waiting for 10 minutes per each broken test on bots. * resources/runner.js: (PerfTestRunner.gc): (logInDocument): Extracted from PerfTestRunner.log. (PerfTestRunner.log): Moved. (logFatalError): Added. (start): Renamed from PerfTestRunner._start. (scheduleNextRun): Extracted from PerfTestRunner._runLoop. Also catch any exceptions that happen in the runner and ignoreWarmUpAndLog so that we don't end up timing out. We call logFatalError in such cases, which in turn ensures notifyDone() is called. (ignoreWarmUpAndLog): Renamed from PerfTestRunner._ignoreWarmUpAndLog. (finish): Extracted from PerfTestRunner._runLoop. (PerfTestRunner.measureTime): Moved. The initialization of runCount is moved into start(). (measureTimeOnce): Renamed from PerfTestRunner._measureTimeOnce. (PerfTestRunner.runPerSecond): Moved. Ditto about runCount. (measureRunsPerSecondOnce): Renamed from PerfTestRunner._measureRunsPerSecondOnce. (callRunAndMeasureTime): Renamed from PerfTestRunner._perSecondRunnerIterator. 2012-10-01 Florin Malita Add a performance test for nested elements https://bugs.webkit.org/show_bug.cgi?id=98047 Reviewed by Ryosuke Niwa. Currently at ~5 runs per second on my workstation, but should go up significantly (100+) after landing a fix for https://bugs.webkit.org/show_bug.cgi?id=97905. * SVG/SvgNestedUse.html: Added. 2012-09-28 Ryosuke Niwa Add back test.runCount for runPerSecond as it's used by tests in fast/harness/perftests. * resources/runner.js: (PerfTestRunner.runPerSecond): 2012-09-27 Ryosuke Niwa Build fix after r129824. * DOM/resources/dom-perf.js: (runBenchmarkSuite): 2012-09-27 Ryosuke Niwa Remove unused features and reduce code duplications in PerfTestRunner https://bugs.webkit.org/show_bug.cgi?id=97852 Reviewed by Kentaro Hara. Made the following refactoring changes: - Remove PerfTestRunner.info since it's never used. - Moved the js heap/malloc related functions up to where they belong. - Moved the initialization of _callsPerIteration, _test, and -description into _start, and stopped initializing _runFunction and _doneFunction since both test times now use _test object. - Made _measureTimeOnce and _measureRunsPerSecondOnce return the measured value instead of calling ignoreWarmUpAndLog and _runLoop to share the code; they're now called in _measureRunsPerSecondOnce. * resources/runner.js: (PerfTestRunner.storeHeapResults): Moved. (PerfTestRunner.getUsedMallocHeap): Moved. (PerfTestRunner.getUsedJSHeap): Moved. (PerfTestRunner.getAndPrintMemoryStatistics): Moved. (PerfTestRunner._scheduleNextMeasurementOrNotifyDone): Renamed from _runLoop. Calls ignoreWarmUpAndLog and schedules the next call. (PerfTestRunner._measureTimeOnce): Renamed from _runner. (PerfTestRunner._start): Renamed from initAndStartLoop. (PerfTestRunner.measureTime): (PerfTestRunner.runPerSecond): (PerfTestRunner._measureRunsPerSecondOnce): Renamed from _measureRunsPerSecondOnce. (PerfTestRunner._perSecondRunnerIterator): 2012-09-27 Ryosuke Niwa PerfTestRunner.run should take an object https://bugs.webkit.org/show_bug.cgi?id=97743 Reviewed by Kentaro Hara. Rename PerfTestRunner.run to PerfTestRunner.measureTime and make it take an object instead of 5 arguments. Also get rid of PerfTestRunner._loopsPerRun since it's no longer used (it's always 1). * CSS/StyleSheetInsert.html: * DOM/resources/dom-perf.js: * Layout/floats_100_100.html: * Layout/floats_100_100_nested.html: * Layout/floats_20_100.html: * Layout/floats_20_100_nested.html: * Layout/floats_2_100.html: * Layout/floats_2_100_nested.html: * Layout/floats_50_100.html: * Layout/floats_50_100_nested.html: * Parser/html-parser.html: * Parser/html5-full-render.html: * SVG/SvgCubics.html: * SVG/SvgHitTesting.html: * resources/runner.js: 2012-09-27 Ryosuke Niwa PerformanceTests/CSS/StyleSheetInsert.html has a time-dependent non-Gaussian distribution https://bugs.webkit.org/show_bug.cgi?id=97741 Reviewed by Antti Koivisto. Reset the content in the iframe in each run so that the runtime from each run follows a normal distribution. We can cleanup this code once my patch to replace the argument list of run by an object is landed. * CSS/StyleSheetInsert.html: 2012-09-27 Ryosuke Niwa Unreviewed. Minor appearance tweaks after r129813. * resources/results-template.html: 2012-09-27 Ryosuke Niwa Results page should warn about time-dependent distributions https://bugs.webkit.org/show_bug.cgi?id=97818 Reviewed by Ojan Vafai. Add a simple linear regression analysis on results page to detect time-dependent distributions. 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. Also added time-series graphs per run under the bar graphs so that humans can manually inspect them. A nice follow up would be to add some normality test (e.g. Shapiro-Wilk) to detect bi-modal distributions but we probably need to restructure the code to run it asynchronously since normality tests are slow. * resources/results-template.html: 2012-09-26 Ryosuke Niwa Use runPerSecond in PerformanceTests/Bindings/typed-array* and event-target-wrapper https://bugs.webkit.org/show_bug.cgi?id=97625 Reviewed by Eric Seidel. Use PerfTestRunner.runPerSecond instead of PerfTestRunner.run. Also reduce the fixed number of elements and iterations in these tests by a factor of 10 since runPerSecond can dynamically adjust the number of function calls. * Bindings/event-target-wrapper.html: * Bindings/typed-array-construct-from-array.html: * Bindings/typed-array-construct-from-same-type.html: * Bindings/typed-array-construct-from-typed.html: * Bindings/typed-array-set-from-typed.html: 2012-09-25 Antti Koivisto Optimize stylesheet insertions https://bugs.webkit.org/show_bug.cgi?id=97627 Reviewed by Andreas Kling. Add synthetic performance test for avoiding style recalcs on stylesheet inserts. * CSS/StyleSheetInsert.html: Added. 2012-09-25 Ryosuke Niwa Skip Dromaeo/jslib-modify-jquery.html per bug 95376. It runs out of memory on Chromium port, and it takes unreasonably long time (~5 minutes) to run on other ports. * Skipped: 2012-09-20 Ryosuke Niwa Results page should show indivisual value https://bugs.webkit.org/show_bug.cgi?id=97178 Reviewed by Tony Chang. Show indivisual values instead of statistics (min, max, stdev). * resources/results-template.html: 2012-09-20 Ryosuke Niwa run-perf-tests should record individual value instead of statistics https://bugs.webkit.org/show_bug.cgi?id=97155 Reviewed by Hajime Morita. Report the list of values as "values" so that run-perf-tests can parse them. * resources/runner.js: (PerfTestRunner.computeStatistics): (PerfTestRunner.printStatistics): 2012-09-20 Sheriff Bot Unreviewed, rolling out r129091. http://trac.webkit.org/changeset/129091 https://bugs.webkit.org/show_bug.cgi?id=97205 It broke perf tests everywhere (Requested by Ossy on #webkit). * resources/runner.js: (PerfTestRunner.computeStatistics): (PerfTestRunner.printStatistics): 2012-09-19 Ryosuke Niwa run-perf-tests should record indivisual value instead of statistics https://bugs.webkit.org/show_bug.cgi?id=97155 Reviewed by Hajime Morita. Report the list of values as "values" so that run-perf-tests can parse them. * resources/runner.js: (PerfTestRunner.computeStatistics): (PerfTestRunner.printStatistics): 2012-09-17 Ryosuke Niwa Perf test results is incomprehensive https://bugs.webkit.org/show_bug.cgi?id=94668 Reviewed by Eric Seidel. Overhauled the results page to have a tabular view. Clicking on each row shows a flot graph we used to have. For each run and test, we show the mean value with the standard deviation along with the percent difference against the reference run chosen by the user if the difference is statistically significant; it also indicates whether the new value is progression or not. The unit of each test is adjusted automatically using SI prefixes (Kilo, Mega, Milli), and rows can be sorted by each column. Time and memory results are separated into two tabs. * resources/jquery.tablesorter.min.js: Added. * resources/results-template.html: 2012-09-14 Ryosuke Niwa Use performance.webkitNow in PerfTestRunner https://bugs.webkit.org/show_bug.cgi?id=92826 Reviewed by Eric Seidel. Use performance.webkitNow with Date.now as a fallback for more accurate time measurements. * resources/runner.js: (PerfTestRunner._runner): (PerfTestRunner._perSecondRunnerIterator): 2012-09-14 Sheriff Bot Unreviewed, rolling out r128562. http://trac.webkit.org/changeset/128562 https://bugs.webkit.org/show_bug.cgi?id=96747 It broke perf tests on Qt and Chromium (Requested by Ossy on #webkit). * resources/runner.js: (PerfTestRunner._runner): (PerfTestRunner._perSecondRunnerIterator): 2012-09-14 Ryosuke Niwa Use performance.webkitNow in PerfTestRunner https://bugs.webkit.org/show_bug.cgi?id=92826 Reviewed by Eric Seidel. Use performance.webkitNow with Date.now as a fallback for more acurate time measurements. * resources/runner.js: (PerfTestRunner._runner): (PerfTestRunner._perSecondRunnerIterator): 2012-08-23 Ilya Tikhonovsky WebInspector: unreviewed single line test fix. The test has to open profiles panel explicitly because it is creating lazily. * inspector/heap-snapshot-performance-test.js: 2012-08-15 Scott Graham Rename window.internals.fastMallocStatistics to mallocStatistics https://bugs.webkit.org/show_bug.cgi?id=94033 Reviewed by Adam Barth. * resources/runner.js: (PerfTestRunner.storeHeapResults): (PerfTestRunner.getUsedMallocHeap): (PerfTestRunner.getAndPrintMemoryStatistics): (PerfTestRunner.initAndStartLoop): 2012-08-10 Ryosuke Niwa Unreviewed; fix an insanely silly typo. * resources/results-template.html: 2012-08-09 Ryosuke Niwa Another build fix after r125178. * resources/runner.js: 2012-08-09 Zoltan Horvath Add memory measurement to balls.html and dromaeorunner.js https://bugs.webkit.org/show_bug.cgi?id=93617 Reviewed by Adam Barth. Since we added memory measurement support to performance tests we need to modify these tests. * Animation/balls.html: * Dromaeo/resources/dromaeorunner.js: 2012-08-09 Zoltan Horvath JSHeap and FastMallocStatistics based memory measurement for performance-tests https://bugs.webkit.org/show_bug.cgi?id=90858 Reviewed Ryosuke Niwa. Measure the memory usage of the performancetests with the help of the windows.memory.usedJSHeapSize object and the window.internals.fastMallocStatistics() function call. * resources/runner.js: (PerfTestRunner.logStatistics): (PerfTestRunner.printStatistics): (PerfTestRunner.storeHeapResults): (PerfTestRunner.getUsedFastMallocHeap): (PerfTestRunner.getUsedJSHeap): (PerfTestRunner.getAndPrintMemoryStatistics): (PerfTestRunner.ignoreWarmUpAndLog): (PerfTestRunner.initAndStartLoop): 2012-08-08 Benjamin Poulain Calling internals from the performance test runner prevents manual running https://bugs.webkit.org/show_bug.cgi?id=93527 Reviewed by Ryosuke Niwa. Since r125065, it is impossible to run the Performance tests manually. The problem is "internals" is not defined when running outside the test runner, so the whole script evaluation fails. * resources/runner.js: Verify is window.internals is available before invoking something on it. 2012-08-08 Zoltan Horvath Set access to MemoryInfo enabled for the performance tests https://bugs.webkit.org/show_bug.cgi?id=92498 Reviewed by Ryosuke Niwa. We need access to console.memory for the memory measurements. * resources/runner.js: 2012-08-07 Ryosuke Niwa run-perf-tests should support --no-show-results https://bugs.webkit.org/show_bug.cgi?id=93409 Reviewed by Dirk Pranke. Add a flot as a separate file and load it as an external resource. Also include scripts as external resources from both local filesystem and webkit.org so that it continues to work regardless of where you put it. It breaks when someone else receives the file and save it somewhere and doesn't have a network connection but that seems like a scenario we don't care that much. * resources/jquery.flot.min.js: Added. * resources/results-template.html: 2012-08-06 Ryosuke Niwa run-webkit-tests should have ability to add description to its JSON output https://bugs.webkit.org/show_bug.cgi?id=93296 Reviewed by Dirk Pranke. Parse description and show it with the WebKit revision on the results page. Also use bar graphs instead of line graphs since we're not depicting the time series here per arv's suggestion. Finally, add the ability to adjust y-axis between the adjusted value and 0 (plot even doesn't adjust y-axis automatically now) by a mouse click. * resources/results-template.html: 2012-08-04 Ryosuke Niwa Use testRunner instead of layoutTestController in performance tests https://bugs.webkit.org/show_bug.cgi?id=93184 Reviewed by Adam Barth. * Animation/balls.html: * Dromaeo/resources/dromaeorunner.js: * inspector/console-300-lines.html: * inspector/inspector-startup-time.html: * inspector/network-append-30-requests.html.broken: * inspector/show-panel.html.broken: * resources/runner.js: (PerfTestRunner.logInfo): (PerfTestRunner.initAndStartLoop): 2012-08-02 Arnaud Renevier TypedArray set method is slow when called with another typed array https://bugs.webkit.org/show_bug.cgi?id=92556 Reviewed by Kenneth Russell. * Bindings/typed-array-set-from-typed.html: Added. 2012-07-28 Ryosuke Niwa run-perf-tests should generate a results page https://bugs.webkit.org/show_bug.cgi?id=92575 Reviewed by Eric Seidel. Add a results page template. This page includes flot and flot.fillbetween. jQuery and the json that contains test results are injected by run-perf-tests. * resources/results-template.html: Added. 2012-07-27 Arnaud Renevier use createUninitialized when creating TypedArray from another array https://bugs.webkit.org/show_bug.cgi?id=92518 Reviewed by Kenneth Russell. * Bindings/typed-array-construct-from-array.html: Added. 2012-07-27 Ryosuke Niwa Add more Russian replay performance tests https://bugs.webkit.org/show_bug.cgi?id=92462 Reviewed by Tony Chang. Add more Russian sites as suggested by loislo. * Replay/Russian/lenta.ru.replay: Added. * Replay/Russian/www.ixbt.com.replay: Added. * Replay/Russian/www.kp.ru.replay: Added. * Replay/Russian/www.liveinternet.ru.replay: Added. * Replay/Russian/www.pravda.ru.replay: Added. 2012-07-26 Arnaud Renevier constructing TypedArray from another TypedArray is slow https://bugs.webkit.org/show_bug.cgi?id=90838 Reviewed by Kenneth Russell. * Bindings/typed-array-construct-from-same-type.html: Added. * Bindings/typed-array-construct-from-typed.html: Added. 2012-07-25 Ryosuke Niwa Import more replay performance tests from Mozilla's Tp5 test suite https://bugs.webkit.org/show_bug.cgi?id=92229 Reviewed by Andreas Kling. Add more replay tests based on Mozilla's Tp5 test suite [1]. Unfortunately, we cannot import all URLs because some of them are not archived on archive.org and others do not replay well on web-page-replay. Nonethless, we're still adding 60+ URLs in this patch. [1] http://people.mozilla.org/~jmaher/tp5.manifest * Replay/Chinese: Added. * Replay/Chinese/chinaz.com.replay: Added. * Replay/Chinese/www.163.com.replay: Added. * Replay/Chinese/www.alipay.com.replay: Added. * Replay/Chinese/www.baidu.com.replay: Added. * Replay/Chinese/www.csdn.net.replay: Added. * Replay/Chinese/www.douban.com.replay: Added. * Replay/Chinese/www.hao123.com.replay: Added. * Replay/Chinese/www.xinhuanet.com.replay: Added. * Replay/Chinese/www.xunlei.com.replay: Added. * Replay/Chinese/www.youku.com.replay: Added. * Replay/English: Added. * Replay/English/beatonna.livejournal.com.replay: Added. * Replay/English/cakewrecks.blogspot.com.replay: Added. * Replay/English/chemistry.about.com.replay: Added. * Replay/English/digg.com.replay: Added. * Replay/English/en.wikipedia.org-rorschach_test.replay: Added. * Replay/English/icanhascheezburger.com.replay: Added. * Replay/English/imgur.com-gallery.replay: Added. * Replay/English/online.wsj.com.replay: Added. * Replay/English/stockoverflow.com-best-comment.replay: Added. * Replay/English/www.alibaba.com.replay: Added. * Replay/English/www.amazon.com-kindle.replay: Added. * Replay/English/www.apple.com.replay: Added. * Replay/English/www.cnet.com.replay: Added. * Replay/English/www.dailymotion.com.replay: Added. * Replay/English/www.ehow.com-prevent-fire.replay: Added. * Replay/English/www.filestube.com-amy-adams.replay: Added. * Replay/English/www.foxnews.replay: Added. * Replay/English/www.huffingtonpost.com.replay: Added. * Replay/English/www.imdb.com-twilight.replay: Added. * Replay/English/www.mozilla.com-all-order.replay: Added. * Replay/English/www.php.net.replay: Added. * Replay/English/www.reddit.com.replay: Added. * Replay/English/www.telegraph.co.uk.replay: Added. * Replay/English/www.w3.org-htmlcss.replay: Added. * Replay/English/www.w3schools.com-html.replay: Added. * Replay/English/www.youtube.com-music.replay: Added. * Replay/French: Added. * Replay/French/www.orange.fr.replay: Added. * Replay/German: Added. * Replay/Italian: Added. * Replay/Italian/www.repubblica.it.replay: Added. * Replay/Japanese/entameblog.seesaa.net.replay: Added. * Replay/Japanese/www.hatena.ne.jp.replay: Added. * Replay/Japanese/www.nicovideo.jp.replay: Added. * Replay/Korean: Added. * Replay/Korean/www.naver.com.replay: Added. * Replay/Persian: Added. * Replay/Persian/blogfa.com.replay: Added. * Replay/Polish: Added. * Replay/Polish/www.wp.pl.replay: Added. * Replay/Portuguese: Added. * Replay/Portuguese/www.uol.com.br.replay: Added. * Replay/Russian: Added. * Replay/Russian/vkontakte.ru-help.replay: Added. * Replay/Russian/www.rambler.ru.replay: Added. * Replay/Russian/www.ucoz.ru.replay: Added. * Replay/Russian/www.yandex.ru.replay: Added. * Replay/Spanish: Added. * Replay/Spanish/www.taringa.net.replay: Added. 2012-07-24 Ryosuke Niwa Add some Japanese and Swedish websites to replay tests https://bugs.webkit.org/show_bug.cgi?id=92076 Reviewed by Andreas Kling. Added new replay tests as follows. * Replay/Japanese: Added. * Replay/Japanese/2ch.net-newsplus.replay: Added. * Replay/Japanese/ja.wikipedia.org.replay: Added. * Replay/Japanese/www.livedoor.com.replay: Added. * Replay/Japanese/www.rakuten.co.jp.replay: Added. * Replay/Japanese/www.yahoo.co.jp.replay: Added. * Replay/Swedish: Added. * Replay/Swedish/www.flashback.se.replay: Added. * Replay/Swedish/www.tradera.com.replay: Added. * Replay/www.techcrunch.com.replay: Added. 2012-07-18 MORITA Hajime Add window resize benchmark https://bugs.webkit.org/show_bug.cgi?id=91070 Reviewed by Ryosuke Niwa. Added window-resize.html which exercise html5.html. This test resizes the window and forces re-layout repeatedly. * Interactive/resources/window-resize.js: Added. * Interactive/window-resize.html: Added. * Parser/resources/html5.html: Modified to inject driver scripts. 2012-07-11 Philip Rogers Add a performance test for hit testing in SVG https://bugs.webkit.org/show_bug.cgi?id=90811 Reviewed by Ryosuke Niwa. The shape rendering code is changing a lot and I'd like a performance test to make sure we don't regress, and to track our improvements. Performance results in my Linux desktop: RESULT SVG: SvgHitTesting= 105.0 ms median= 103.5 ms, stdev= 4.60434577329 ms, min= 101.0 ms, max= 116.0 ms RESULT SVG: SvgHitTesting= 97.8 ms median= 96.5 ms, stdev= 2.67581763205 ms, min= 95.0 ms, max= 102.0 ms RESULT SVG: SvgHitTesting= 104.3 ms median= 104.0 ms, stdev= 1.41774468788 ms, min= 102.0 ms, max= 107.0 ms RESULT SVG: SvgHitTesting= 103.6 ms median= 103.5 ms, stdev= 1.2 ms, min= 102.0 ms, max= 106.0 ms * SVG/SvgHitTesting.html: Added. 2012-07-03 Jan Keromnes Web Inspector: WebInspector.TextViewer should be renamed WebInspector.TextEditor https://bugs.webkit.org/show_bug.cgi?id=89939 Reviewed by Vsevolod Vlasov. * inspector/first-open-scripts.html.broken: 2012-06-22 Philip Rogers Make SvgCubics performance test more consistent https://bugs.webkit.org/show_bug.cgi?id=89778 Reviewed by Ryosuke Niwa. Previously this test ran twice for each iteration, but this led to inconsistent repaints. This change updates the test to only run once per iteration, and adds even more cubics so that the test runs consistently in the 80ms range on my Linux desktop. Performance results on my desktop: RESULT SVG: SvgCubics= 80.5 ms median= 82.0 ms, stdev= 3.04138126515 ms, min= 75.0 ms, max= 85.0 ms RESULT SVG: SvgCubics= 80.1 ms median= 81.0 ms, stdev= 4.27668095607 ms, min= 74.0 ms, max= 88.0 ms RESULT SVG: SvgCubics= 81.45 ms median= 83.0 ms, stdev= 4.01839520207 ms, min= 75.0 ms, max= 89.0 ms RESULT SVG: SvgCubics= 78.9 ms median= 80.0 ms, stdev= 4.75289385533 ms, min= 72.0 ms, max= 87.0 ms * SVG/SvgCubics.html: 2012-06-22 Ilya Tikhonovsky Web Inspector: partially instrument DOM Tree native memory. https://bugs.webkit.org/show_bug.cgi?id=89568 This patch adds MemoryInstrumentation class that counts all visited objects and calls reportMemoryUsage. Reviewed by Yury Semikhatsky. * inspector/native-memory-snapshot.html: 2012-06-21 Kentaro Hara Add a perf-test for innerHTML setter for a large DOM tree https://bugs.webkit.org/show_bug.cgi?id=89723 Reviewed by Ryosuke Niwa. We want a benchmark for innerHTML setter for the following reason: - innerHTML setter is widely used in the real world. - I am planning to optimize innerHTML setter in the near future. - I want to use the innerHTML setter benchmark for the patch of bug 88834. Performance results in my Linux desktop: RESULT Parser: innerHTML-setter= 289.782649995 runs/s median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s RESULT Parser: innerHTML-setter= 289.020706132 runs/s median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s RESULT Parser: innerHTML-setter= 288.912051701 runs/s median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s RESULT Parser: innerHTML-setter= 288.644186666 runs/s median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s RESULT Parser: innerHTML-setter= 288.698714577 runs/s median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s * Parser/innerHTML-setter.html: Added. 2012-06-20 Philip Rogers Add a performance test for paths in SVG https://bugs.webkit.org/show_bug.cgi?id=89547 Reviewed by Ryosuke Niwa. This change adds the first performance test for SVG paths. In the test we modify complex cubic paths in several ways, testing: transformations, clipping, d attribute changes, stroke properties, text on a path, and opacity. Sample test results on my Linux desktop: RESULT SVG: SvgCubics= 68.85 ms median= 69.5 ms, stdev= 4.70398767005 ms, min= 56.0 ms, max= 75.0 ms RESULT SVG: SvgCubics= 68.4 ms median= 69.0 ms, stdev= 3.51283361405 ms, min= 59.0 ms, max= 74.0 ms RESULT SVG: SvgCubics= 66.95 ms median= 67.0 ms, stdev= 3.4420197559 ms, min= 59.0 ms, max= 74.0 ms RESULT SVG: SvgCubics= 70.2 ms median= 71.5 ms, stdev= 3.23419232576 ms, min= 63.0 ms, max= 74.0 ms * SVG: Added. * SVG/SvgCubics.html: Added. 2012-06-20 Tom Zakrajsek Import themaninblue.com/experiment/AnimationBenchmark/ as performance tests https://bugs.webkit.org/show_bug.cgi?id=78789 Reviewed by Ryosuke Niwa. Added PerfTestRunner fixture around it. * Animation/balls.html: Added. 2012-06-18 Ilya Tikhonovsky Web Inspector: native memory snapshot performance and coverage test implementation. https://bugs.webkit.org/show_bug.cgi?id=89363 We have to track the performance of MemoryAgent.getProcessMemoryDistribution. Also this test will work as a burn down chart for Unknown memory metric. Reviewed by Pavel Feldman. * inspector/native-memory-snapshot.html: Added. * inspector/performance-test.js: (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.reportSize): (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump): (initialize_TimeTracker.InspectorTest.runPerformanceTest): 2012-06-05 Alexei Filippov Web Inspector: serialize edge counts instead of indexes in heap snapshot https://bugs.webkit.org/show_bug.cgi?id=88324 The serialized node structure currently holds an index of its first containment edge in the edges array. The index can be quite big (up to 7 digits for large snapshots). The patch changes the serialization format to pass node containment edge count instead. For most nodes the count is just a single digit number. This reduces serialized snapshot size and therefore its transfer time. Reviewed by Yury Semikhatsky. * inspector/heap-snapshot-performance-test.js: 2012-06-04 Alexei Filippov Web Inspector: speed up _calculateRetainedSizes function https://bugs.webkit.org/show_bug.cgi?id=87863 Reviewed by Yury Semikhatsky. * inspector/heap-snapshot-advanced.html: Added. * inspector/heap-snapshot-performance-test.js: Copied from PerformanceTests/inspector/heap-snapshot.html. (test.performanceTest.step0): (test.performanceTest.step1): (test.performanceTest.step2): (test.performanceTest.cleanup): (test.performanceTest.done): (test.performanceTest): (test): * inspector/heap-snapshot.html: 2012-06-03 Kentaro Hara [perf-test] Add a benchmark of querySelector() for an element that appears in the depths in the document https://bugs.webkit.org/show_bug.cgi?id=88202 Reviewed by Ryosuke Niwa. query-selector-first.html tests querySelector() for an element that appears at the head of the document. query-selector-last.html tests querySelector() for an element that appears at the tail of the document. In addition, we want a benchmark of querySelector() for an element that appears in the depths in the document. Test results in my Linux desktop: RESULT Parser: query-selector-deep= 460.776980611 runs/s median= 460.947503201 runs/s, stdev= 1.72274941942 runs/s, min= 455.696202532 runs/s, max= 463.32046332 runs/s RESULT Parser: query-selector-deep= 458.925050915 runs/s median= 459.183673469 runs/s, stdev= 1.47930124139 runs/s, min= 454.545454545 runs/s, max= 460.947503201 runs/s RESULT Parser: query-selector-deep= 461.866981491 runs/s median= 461.538461538 runs/s, stdev= 1.14613123359 runs/s, min= 459.183673469 runs/s, max= 463.917525773 runs/s RESULT Parser: query-selector-deep= 453.922010788 runs/s median= 454.258855898 runs/s, stdev= 1.77279123317 runs/s, min= 447.204968944 runs/s, max= 455.696202532 runs/s RESULT Parser: query-selector-deep= 454.666321221 runs/s median= 454.545454545 runs/s, stdev= 1.65775667417 runs/s, min= 451.127819549 runs/s, max= 456.852791878 runs/s * Parser/query-selector-deep.html: Added. 2012-06-03 Kentaro Hara [perf-test] Make query-selector-last.html more realistic https://bugs.webkit.org/show_bug.cgi?id=88203 Reviewed by Ryosuke Niwa. query-selector-last.html tests querySelector() for an element that appears after 1000 div elements, all of which have the same id and class. To test the performance of querySelector() under a lot of ids and classes, we should make the ids and classes of the 1000 elements different. This patch degrades the performance of query-selector-last.html by 3.6%. [Before] RESULT Parser: query-selector-last= 476.382274152 runs/s median= 476.821192053 runs/s, stdev= 1.14578875814 runs/s, min= 474.308300395 runs/s, max= 478.087649402 runs/s RESULT Parser: query-selector-last= 478.423061861 runs/s median= 478.723404255 runs/s, stdev= 1.54876867255 runs/s, min= 473.684210526 runs/s, max= 481.347773767 runs/s RESULT Parser: query-selector-last= 479.849287174 runs/s median= 480.0 runs/s, stdev= 1.69849752498 runs/s, min= 475.561426684 runs/s, max= 481.927710843 runs/s RESULT Parser: query-selector-last= 476.765438846 runs/s median= 477.453580902 runs/s, stdev= 1.8724488664 runs/s, min= 471.821756225 runs/s, max= 478.723404255 runs/s RESULT Parser: query-selector-last= 481.715340644 runs/s median= 481.637742305 runs/s, stdev= 1.81446361145 runs/s, min= 475.561426684 runs/s, max= 483.675937122 runs/s [After] RESULT Parser: query-selector-last= 458.866623582 runs/s median= 459.183673469 runs/s, stdev= 1.48881464737 runs/s, min= 453.972257251 runs/s, max= 460.947503201 runs/s RESULT Parser: query-selector-last= 460.363532897 runs/s median= 460.358056266 runs/s, stdev= 1.58512056995 runs/s, min= 456.273764259 runs/s, max= 462.130937099 runs/s RESULT Parser: query-selector-last= 457.727448451 runs/s median= 458.015267176 runs/s, stdev= 1.23681915516 runs/s, min= 453.972257251 runs/s, max= 459.183673469 runs/s RESULT Parser: query-selector-last= 465.57336853 runs/s median= 465.717981889 runs/s, stdev= 1.6616925374 runs/s, min= 460.947503201 runs/s, max= 467.532467532 runs/s RESULT Parser: query-selector-last= 459.836252019 runs/s median= 459.770114943 runs/s, stdev= 1.84485630505 runs/s, min= 455.696202532 runs/s, max= 462.724935733 runs/s * Parser/query-selector-last.html: 2012-06-01 Ryosuke Niwa Add public page loading performance tests using web-page-replay https://bugs.webkit.org/show_bug.cgi?id=84008 Reviewed by Dirk Pranke. Add replay tests for google.com and youtube.com as examples. * Replay: Added. * Replay/www.google.com.replay: Added. * Replay/www.youtube.com.replay: Added. 2012-05-30 Kentaro Hara [perf-test] Add a benchmark for querySelector() https://bugs.webkit.org/show_bug.cgi?id=87742 Reviewed by Ryosuke Niwa. Now I am optimizing querySelector() (bug 87625). This patch adds a performance test for querySelector(). query-selector-first.html queries an element that appears at the head of the document. On the other hand, query-selector-last.html queries an element that appears at the tail of the document. Test results in my desktop: [query-selector-first.html] RESULT Parser: query-selector-first= 252.339803014 runs/s median= 253.646265594 runs/s, stdev= 2.32610873209 runs/s, min= 248.138957816 runs/s, max= 254.777070064 runs/s RESULT Parser: query-selector-first= 252.688468897 runs/s median= 252.684876579 runs/s, stdev= 3.60008778708 runs/s, min= 246.002460025 runs/s, max= 258.397932817 runs/s RESULT Parser: query-selector-first= 253.466019656 runs/s median= 254.129606099 runs/s, stdev= 1.78002675664 runs/s, min= 247.831474597 runs/s, max= 254.777070064 runs/s RESULT Parser: query-selector-first= 256.245078189 runs/s median= 257.06940874 runs/s, stdev= 2.84722072201 runs/s, min= 249.687890137 runs/s, max= 259.74025974 runs/s RESULT Parser: query-selector-first= 252.203100497 runs/s median= 252.047989175 runs/s, stdev= 1.75233446036 runs/s, min= 248.138957816 runs/s, max= 255.427841635 runs/s [query-selector-last.html] RESULT Parser: query-selector-last= 356.009616076 runs/s median= 355.781448539 runs/s, stdev= 0.841519086864 runs/s, min= 354.430379747 runs/s, max= 358.056265985 runs/s RESULT Parser: query-selector-last= 360.735271001 runs/s median= 361.057532424 runs/s, stdev= 1.12253219867 runs/s, min= 358.514724712 runs/s, max= 362.225097025 runs/s RESULT Parser: query-selector-last= 359.598592463 runs/s median= 359.435173299 runs/s, stdev= 0.816538258728 runs/s, min= 358.056265985 runs/s, max= 360.824742268 runs/s RESULT Parser: query-selector-last= 357.260651715 runs/s median= 357.598978289 runs/s, stdev= 1.17393159885 runs/s, min= 353.982300885 runs/s, max= 358.974358974 runs/s RESULT Parser: query-selector-last= 351.696240713 runs/s median= 351.980025916 runs/s, stdev= 1.14200564038 runs/s, min= 348.692403487 runs/s, max= 353.535353535 runs/s * Parser/query-selector-first.html: Added. * Parser/query-selector-last.html: Added. 2012-05-25 Ilya Tikhonovsky Web Inspector: HeapSnapshot: introduce performance counter for HeapSnapshotConstructorsDataGrid._aggregatesReceived method. https://bugs.webkit.org/show_bug.cgi?id=87393 Reviewed by Yury Semikhatsky. * inspector/heap-snapshot.html: 2012-05-25 Ilya Tikhonovsky Web Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th times. https://bugs.webkit.org/show_bug.cgi?id=87476 The time tracking wrappers were attaching on each run. Reviewed by Yury Semikhatsky. * inspector/heap-snapshot.html: 2012-05-22 Ilya Tikhonovsky Web Inspector: HeapProfiler: upstream retainedSize calculation. https://bugs.webkit.org/show_bug.cgi?id=87107 This patch upstreams V8::HeapSnapshotGenerator::CalculateRetainedSizes function to front-end. After that we will be able to drop retainedSize field from the snapshot serialized data. See meta-bug https://bugs.webkit.org/show_bug.cgi?id=87089 Reviewed by Yury Semikhatsky. * inspector/heap-snapshot.html: add counter for the _calculateRetainedSize method. 2012-05-21 Kent Tamura Add performance tests for