98b47ebb33
It's nice to have a quick way to get stable results on the local machine for the classic d8 benchmarks. CSuite revitalizes an old tool called BSuite which offers multiple averaged runs, and a nice ascii display of results. Sample usage: ./csuite.py octane baseline ~/src/v8/out/d8 ./csuite.py octane compare ~/src/v8/out-mine/d8 benchmark: score | master | % | ===================================================+==========+========+ Richards: 26201.0 | 26568.0 | -1.4 | DeltaBlue: 55744.0 | 58309.0 | -4.4 | Crypto: 31831.0 | 31815.0 | | RayTrace: 73481.0 | 73185.0 | 0.4 | ............<snip>............................ Octane: 36388.0 | 35741.0 | 1.8 | ---------------------------------------------------+----------+--------+ See README.md for more documentation. Change-Id: I182490506ca07fab1240bd485bd1d7a8920db893 Reviewed-on: https://chromium-review.googlesource.com/c/1387487 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58434}
44 lines
1.5 KiB
Markdown
44 lines
1.5 KiB
Markdown
# CSuite: Local benchmarking help for V8 performance analysis
|
|
|
|
CSuite helps you make N averaged runs of a benchmark, then compare with
|
|
a different binary and/or different flags. It knows about the "classic"
|
|
benchmarks of SunSpider, Kraken and Octane, which are still useful for
|
|
investigating peak performance scenarios. It offers a default number of
|
|
runs, by default they are:
|
|
|
|
* SunSpider - 100 runs
|
|
* Kraken - 80 runs
|
|
* Octane - 10 runs
|
|
|
|
# Usage
|
|
|
|
Say you want to see how much optimization buys you:
|
|
|
|
./csuite.py kraken baseline ~/src/v8/out/d8 -x="--noopt"
|
|
./csuite.py kraken compare ~/src/v8/out/d8
|
|
|
|
|
|
Suppose you are comparing two binaries, and want a quick look at results.
|
|
Normally, Octane should have about 10 runs, but 3 will only take a few
|
|
minutes:
|
|
|
|
./csuite.py -r 3 octane baseline ~/src/v8/out-master/d8
|
|
./csuite.py -r 3 octane compare ~/src/v8/out-mine/d8
|
|
|
|
You can run from any place:
|
|
|
|
../../somewhere-strange/csuite.py sunspider baseline ./d8
|
|
../../somewhere-strange/csuite.py sunspider compare ./d8-better
|
|
|
|
Note that all output files are created in the directory where you run
|
|
from. A `_benchmark_runner_data` directory will be created to store run
|
|
output, and a `_results` directory as well for scores.
|
|
|
|
For more detailed documentation, see:
|
|
|
|
./csuite.py --help
|
|
|
|
Output from the runners is captured into files and cached, so you can cancel
|
|
and resume multi-hour benchmark runs with minimal loss of data/time. The -f
|
|
flag forces re-running even if these cached files still exist.
|