aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/nanobench.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2017-07-04 22:56:06 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-07-05 19:46:07 +0000
commitc665e5b7df4ea044848105b8e934eac34aee3a9a (patch)
treeb15a07944a97501ecdebb62c3ebad4785389e891 /bench/nanobench.cpp
parentbace7a940a6d83051eaa98b73dfa8867ed16ac2e (diff)
add --csv option to nanobench
This makes it trivial to copy/paste into spreadsheets for sorting/diffing Bug: skia: Change-Id: I02c920e2b8be8f59270da9fb9bb3e6763987e0bc Reviewed-on: https://skia-review.googlesource.com/21378 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'bench/nanobench.cpp')
-rw-r--r--bench/nanobench.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/bench/nanobench.cpp b/bench/nanobench.cpp
index b6f8343eab..6c60aa81af 100644
--- a/bench/nanobench.cpp
+++ b/bench/nanobench.cpp
@@ -124,7 +124,7 @@ DEFINE_bool(gpuStatsDump, false, "Dump GPU states after each benchmark to json")
DEFINE_bool(keepAlive, false, "Print a message every so often so that we don't time out");
DEFINE_string(useThermalManager, "0,1,10,1000", "enabled,threshold,sleepTimeMs,TimeoutMs for "
"thermalManager\n");
-
+DEFINE_bool(csv, false, "Print status in CSV format");
DEFINE_string(sourceType, "",
"Apply usual --match rules to source type: bench, gm, skp, image, etc.");
DEFINE_string(benchType, "",
@@ -1325,9 +1325,21 @@ int main(int argc, char** argv) {
SkDebugf("%10.2f %s\t%s\t%s\n",
stats.median*1e3, mark, bench->getUniqueName(), config);
+ } else if (FLAGS_csv) {
+ const double stddev_percent = 100 * sqrt(stats.var) / stats.mean;
+ SkDebugf("%g,%g,%g,%g,%g,%s,%s\n"
+ , stats.min
+ , stats.median
+ , stats.mean
+ , stats.max
+ , stddev_percent
+ , config
+ , bench->getUniqueName()
+ );
} else {
+ const char* format = "%4d/%-4dMB\t%d\t%s\t%s\t%s\t%s\t%.0f%%\t%s\t%s\t%s\n";
const double stddev_percent = 100 * sqrt(stats.var) / stats.mean;
- SkDebugf("%4d/%-4dMB\t%d\t%s\t%s\t%s\t%s\t%.0f%%\t%s\t%s\t%s\n"
+ SkDebugf(format
, sk_tools::getCurrResidentSetSizeMB()
, sk_tools::getMaxResidentSetSizeMB()
, loops