OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /** Accessors for our Singleton variables. */ | 5 /** Accessors for our Singleton variables. */ |
6 BenchmarkSuite get BENCHMARK_SUITE { | 6 BenchmarkSuite get BENCHMARK_SUITE { |
7 if (BenchmarkSuite._ONLY == null) { | 7 if (BenchmarkSuite._ONLY == null) { |
8 BenchmarkSuite._ONLY = new BenchmarkSuite._internal(); | 8 BenchmarkSuite._ONLY = new BenchmarkSuite._internal(); |
9 } | 9 } |
10 return BenchmarkSuite._ONLY; | 10 return BenchmarkSuite._ONLY; |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
53 * time minimum has been reached. | 53 * time minimum has been reached. |
54 */ | 54 */ |
55 static double measureFor(Function f, int timeMinimum) { | 55 static double measureFor(Function f, int timeMinimum) { |
56 int time = 0; | 56 int time = 0; |
57 int iter = 0; | 57 int iter = 0; |
58 Stopwatch watch = new Stopwatch(); | 58 Stopwatch watch = new Stopwatch(); |
59 watch.start(); | 59 watch.start(); |
60 int elapsed = 0; | 60 int elapsed = 0; |
61 while (elapsed < timeMinimum || iter < 32) { | 61 while (elapsed < timeMinimum || iter < 32) { |
62 f(); | 62 f(); |
63 elapsed = watch.elapsedInMs(); | 63 elapsed = watch.elapsedMilliseconds; |
64 iter++; | 64 iter++; |
65 } | 65 } |
66 return (1000.0 * iter) / elapsed; | 66 return (1000.0 * iter) / elapsed; |
67 } | 67 } |
68 | 68 |
69 /** | 69 /** |
70 * Measures the score for the benchmark and returns it. | 70 * Measures the score for the benchmark and returns it. |
71 * We measure iterations / sec (so bigger = better!). | 71 * We measure iterations / sec (so bigger = better!). |
72 */ | 72 */ |
73 double measure() { | 73 double measure() { |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 * helping readability of the scores. | 188 * helping readability of the scores. |
189 */ | 189 */ |
190 String formatScore(num value) { | 190 String formatScore(num value) { |
191 if (value > 100) { | 191 if (value > 100) { |
192 return value.toStringAsFixed(0); | 192 return value.toStringAsFixed(0); |
193 } else { | 193 } else { |
194 return value.toStringAsFixed(2); | 194 return value.toStringAsFixed(2); |
195 } | 195 } |
196 } | 196 } |
197 } | 197 } |
OLD | NEW |