Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(311)

Side by Side Diff: bench/benchmain.cpp

Issue 346453002: Refactor how we handle resources path in Tests. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: REBASE Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2011 Google Inc. 2 * Copyright 2011 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "BenchTimer.h" 8 #include "BenchTimer.h"
9 #include "ResultsWriter.h" 9 #include "ResultsWriter.h"
10 #include "SkBenchLogger.h" 10 #include "SkBenchLogger.h"
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 DEFINE_string(config, kDefaultsConfigStr, 247 DEFINE_string(config, kDefaultsConfigStr,
248 "Run configs given. By default, runs the configs marked \"runByDe fault\" in gConfigs."); 248 "Run configs given. By default, runs the configs marked \"runByDe fault\" in gConfigs.");
249 DEFINE_string(logFile, "", "Also write stdout here."); 249 DEFINE_string(logFile, "", "Also write stdout here.");
250 DEFINE_int32(minMs, 20, "Shortest time we'll allow a benchmark to run."); 250 DEFINE_int32(minMs, 20, "Shortest time we'll allow a benchmark to run.");
251 DEFINE_int32(maxMs, 4000, "Longest time we'll allow a benchmark to run."); 251 DEFINE_int32(maxMs, 4000, "Longest time we'll allow a benchmark to run.");
252 DEFINE_bool(runOnce, kIsDebug, "Run each bench exactly once and don't report tim ings."); 252 DEFINE_bool(runOnce, kIsDebug, "Run each bench exactly once and don't report tim ings.");
253 DEFINE_double(error, 0.01, 253 DEFINE_double(error, 0.01,
254 "Ratio of subsequent bench measurements must drop within 1±error t o converge."); 254 "Ratio of subsequent bench measurements must drop within 1±error t o converge.");
255 DEFINE_string(timeFormat, "%9.2f", "Format to print results, in milliseconds per 1000 loops."); 255 DEFINE_string(timeFormat, "%9.2f", "Format to print results, in milliseconds per 1000 loops.");
256 DEFINE_bool2(verbose, v, false, "Print more."); 256 DEFINE_bool2(verbose, v, false, "Print more.");
257 DEFINE_string2(resourcePath, i, "resources", "directory for test resources.");
258 #ifdef SK_BUILD_JSON_WRITER 257 #ifdef SK_BUILD_JSON_WRITER
259 DEFINE_string(outResultsFile, "", "If given, the results will be written to the file in JSON format."); 258 DEFINE_string(outResultsFile, "", "If given, the results will be written to the file in JSON format.");
260 #endif 259 #endif
261 DEFINE_bool(dryRun, false, "Don't actually run the tests, just print what would have been done."); 260 DEFINE_bool(dryRun, false, "Don't actually run the tests, just print what would have been done.");
262 261
263 // Has this bench converged? First arguments are milliseconds / loop iteration, 262 // Has this bench converged? First arguments are milliseconds / loop iteration,
264 // last is overall runtime in milliseconds. 263 // last is overall runtime in milliseconds.
265 static bool HasConverged(double prevPerLoop, double currPerLoop, double currRaw) { 264 static bool HasConverged(double prevPerLoop, double currPerLoop, double currRaw) {
266 if (currRaw < FLAGS_minMs) { 265 if (currRaw < FLAGS_minMs) {
267 return false; 266 return false;
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
342 if (kNormal_BenchMode != benchMode) { 341 if (kNormal_BenchMode != benchMode) {
343 // Non-rendering configs only run in normal mode 342 // Non-rendering configs only run in normal mode
344 for (int i = 0; i < configs.count(); ++i) { 343 for (int i = 0; i < configs.count(); ++i) {
345 const Config& config = gConfigs[configs[i]]; 344 const Config& config = gConfigs[configs[i]];
346 if (SkBenchmark::kNonRendering_Backend == config.backend) { 345 if (SkBenchmark::kNonRendering_Backend == config.backend) {
347 configs.remove(i, 1); 346 configs.remove(i, 1);
348 --i; 347 --i;
349 } 348 }
350 } 349 }
351 } 350 }
352 // Set the resource path.
353 if (!FLAGS_resourcePath.isEmpty()) {
354 SkBenchmark::SetResourcePath(FLAGS_resourcePath[0]);
355 }
356 351
357 #if SK_SUPPORT_GPU 352 #if SK_SUPPORT_GPU
358 for (int i = 0; i < configs.count(); ++i) { 353 for (int i = 0; i < configs.count(); ++i) {
359 const Config& config = gConfigs[configs[i]]; 354 const Config& config = gConfigs[configs[i]];
360 355
361 if (SkBenchmark::kGPU_Backend == config.backend) { 356 if (SkBenchmark::kGPU_Backend == config.backend) {
362 GrContext* context = gContextFactory.get(config.contextType); 357 GrContext* context = gContextFactory.get(config.contextType);
363 if (NULL == context) { 358 if (NULL == context) {
364 SkDebugf("GrContext could not be created for config %s. Config w ill be skipped.\n", 359 SkDebugf("GrContext could not be created for config %s. Config w ill be skipped.\n",
365 config.name); 360 config.name);
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
684 gContextFactory.destroyContexts(); 679 gContextFactory.destroyContexts();
685 #endif 680 #endif
686 return 0; 681 return 0;
687 } 682 }
688 683
689 #if !defined(SK_BUILD_FOR_IOS) && !defined(SK_BUILD_FOR_NACL) 684 #if !defined(SK_BUILD_FOR_IOS) && !defined(SK_BUILD_FOR_NACL)
690 int main(int argc, char * const argv[]) { 685 int main(int argc, char * const argv[]) {
691 return tool_main(argc, (char**) argv); 686 return tool_main(argc, (char**) argv);
692 } 687 }
693 #endif 688 #endif
OLDNEW
« no previous file with comments | « bench/SkipZeroesBench.cpp ('k') | dm/DM.cpp » ('j') | gm/cmykjpeg.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698