From de5dc43671034b1b65a12b67dde68da432458ef0 Mon Sep 17 00:00:00 2001 From: "christian.plesner.hansen@gmail.com" Date: Tue, 2 Dec 2008 13:02:11 +0000 Subject: [PATCH] Changed benchmark runners to always display at least three significant digits in the results. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- benchmarks/base.js | 15 +++++++++++++-- benchmarks/run.html | 4 ++-- benchmarks/run.js | 5 +++-- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/benchmarks/base.js b/benchmarks/base.js index 2c26132..5afc110 100644 --- a/benchmarks/base.js +++ b/benchmarks/base.js @@ -120,7 +120,7 @@ BenchmarkSuite.RunSuites = function(runner) { } if (runner.NotifyScore) { var score = BenchmarkSuite.GeometricMean(BenchmarkSuite.scores); - runner.NotifyScore(Math.round(100 * score)); + runner.NotifyScore(100 * score); } } RunStep(); @@ -164,7 +164,7 @@ BenchmarkSuite.prototype.NotifyResult = function() { var score = this.reference / mean; BenchmarkSuite.scores.push(score); if (this.runner.NotifyResult) { - this.runner.NotifyResult(this.name, Math.round(100 * score)); + this.runner.NotifyResult(this.name, 100 * score); } } @@ -219,3 +219,14 @@ BenchmarkSuite.prototype.RunStep = function(runner) { } return RunNext(); } + + +// Converts a score value to a string with at least three significant +// digits. +function formatScore(value) { + if (value > 100) { + return value.toFixed(0); + } else { + return value.toPrecision(3); + } +} diff --git a/benchmarks/run.html b/benchmarks/run.html index 01cadc0..d521e0b 100644 --- a/benchmarks/run.html +++ b/benchmarks/run.html @@ -21,7 +21,7 @@ function ShowProgress(name) { function AddResult(name, result) { - var text = name + ': ' + result; + var text = name + ': ' + formatScore(result); var results = document.getElementById("results"); results.innerHTML += (text + "
"); } @@ -36,7 +36,7 @@ function AddError(name, error) { function AddScore(score) { var status = document.getElementById("status"); if (success) { - status.innerHTML = "Score: " + score; + status.innerHTML = "Score: " + formatScore(score); } } diff --git a/benchmarks/run.js b/benchmarks/run.js index da2373b..ecfee90 100644 --- a/benchmarks/run.js +++ b/benchmarks/run.js @@ -36,7 +36,7 @@ load('earley-boyer.js'); var success = true; function PrintResult(name, result) { - print(name + ': ' + result); + print(name + ': ' + formatScore(result)); } @@ -49,7 +49,8 @@ function PrintError(name, error) { function PrintScore(score) { if (success) { print('----'); - print('Score (version ' + BenchmarkSuite.version + '): ' + score); + print('Score (version ' + BenchmarkSuite.version + '): ' + + formatScore(score)); } } -- 2.7.4