PerformanceTests: Dromaeo should report individual test result
authorrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 4 Dec 2012 10:00:54 +0000 (10:00 +0000)
committerrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 4 Dec 2012 10:00:54 +0000 (10:00 +0000)
commit96514be36664e1430392d9b2fd3200c2aab861f9
treed587f72d4cd229d9d2f981632687015bfc68f92f
parenteb9e8ccd030f66f658b9fcdabeeb134aaaf82783
PerformanceTests: Dromaeo should report individual test result
https://bugs.webkit.org/show_bug.cgi?id=99800

Reviewed by Eric Seidel.

Made one small modification to Droameo's webrunner.js so that it reports individual runs/s values
for each subtest. This allows us to compute the aggregated run/s for each iteration like other
performance tests.

Also stop measuring memory usage in Dromaeo tests because some Dromaeo tests (e.g. jslib-modify-jquery)
have unrealistic memory usage, and measuring them at the time of teardown doesn't make much sense.

* Animation/balls.html: Fixed typo: measureValueAync.
* Dromaeo/resources/dromaeo/web/webrunner.js:

* Dromaeo/resources/dromaeorunner.js:
(DRT.setup): Call prepareToMeasureValuesAsync so that DRT.teardown can use meausreValueAsync, and log
"Running 5 times". Since the log container will be inserted before iframe, we need to explicitly insert
the iframe as the first child of the body element to avoid logs from affecting the iframe's position.
Also specify the number of iterations by calling PerfTestRunner.iterationCount() so that we may adjust
the number of iterations in PerfTestRunner.

(DRT.progress): Log individual measurement for each subtest.
(DRT.teardown): Compute the aggregated result for each iteration, and log them using measureValueAsync.

* resources/runner.js:
(PerfTestRunner.logStatistics): Merged printStatistics since it's no longer needed after r131638.
(PerfTestRunner): Removed getAndPrintMemoryStatistics since it was used only in Dromaeo tests but
we no longer measure memory usage in Dromaeo tests.

(start): Increment completedRuns from -1 to 0 for Dromaeo tests where we don't want to ignore the initial
measurement. Note that ignoreWarmUpAndLog ignores the measurements for which completedRuns is negative.

(ignoreWarmUpAndLog): We don't measure memory usage in Dromaeo tests. See above.
(PerfTestRunner.iterationCount): Added. This abstraction allows us to auto-adjust the number of iterations from
run-perf-tests in near future.
(PerfTestRunner.measureValueAsync): Renamed from measureValueAync.

Tools: Dromaeo should report individual test result
https://bugs.webkit.org/show_bug.cgi?id=99800

Reviewed by Eric Seidel.

Ignore subtest results spit out by Dromaeo tests.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest): Added a line to ignore.
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(MainTest.test_parse_output_with_subtests): Added.

LayoutTests: Fix a test and re-enable fast/harness/perftests on Chromium.

* fast/harness/perftests/runs-per-second-log.html:
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@136492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/fast/harness/perftests/runs-per-second-log.html
LayoutTests/platform/chromium/TestExpectations
PerformanceTests/Animation/balls.html
PerformanceTests/ChangeLog
PerformanceTests/Dromaeo/resources/dromaeo/web/webrunner.js
PerformanceTests/Dromaeo/resources/dromaeorunner.js
PerformanceTests/resources/runner.js
Tools/ChangeLog
Tools/Scripts/webkitpy/performance_tests/perftest.py
Tools/Scripts/webkitpy/performance_tests/perftest_unittest.py