From: Evan Martin Date: Wed, 25 May 2011 17:54:11 +0000 (-0700) Subject: perftest: print summary info at end X-Git-Tag: release-120715~341 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=976166706db05dcd4496586ae995b7fdb1afab35;p=platform%2Fupstream%2Fninja.git perftest: print summary info at end --- diff --git a/.gitignore b/.gitignore index 71f873d..6514d07 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ TAGS /build.ninja /ninja /ninja_test +/parser_perftest /graph.png /doc/manual.html /doc/doxygen diff --git a/src/parser_perftest.cc b/src/parser_perftest.cc index 1321629..7a5fd82 100644 --- a/src/parser_perftest.cc +++ b/src/parser_perftest.cc @@ -24,6 +24,7 @@ int main(int argc, char* argv[]) { return 1; } + vector times; for (int i = 1; i < argc; ++i) { const char* filename = argv[i]; @@ -47,11 +48,29 @@ int main(int argc, char* argv[]) { if (end - start > 100) { int delta = (int)(end - start); - printf("%s: %.2fus\n", filename, (float)(delta*1000 / (float)limit)); + float time = delta*1000 / (float)limit; + printf("%s: %.1fus\n", filename, time); + times.push_back(time); break; } } } + if (!times.empty()) { + float min = times[0]; + float max = times[0]; + float total = 0; + for (size_t i = 0; i < times.size(); ++i) { + total += times[i]; + if (times[i] < min) + min = times[i]; + else if (times[i] > max) + max = times[i]; + } + + printf("min %.1fus max %.1fus avg %.1fus\n", + min, max, total / times.size()); + } + return 0; }