From 2da1a854b0836001533aa29ade89d87f420cbbc3 Mon Sep 17 00:00:00 2001 From: scroggo Date: Tue, 13 Oct 2015 13:33:33 -0700 Subject: Stop benching PNG buildTileIndex by default It leaks memory and kills the bots. Supply an option to run it for local comparison. BUG=skia:4360 BUG=skia:3418 Review URL: https://codereview.chromium.org/1396613007 --- bench/nanobench.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/bench/nanobench.cpp b/bench/nanobench.cpp index b16fb13b57..781c09f769 100644 --- a/bench/nanobench.cpp +++ b/bench/nanobench.cpp @@ -111,6 +111,7 @@ DEFINE_bool(loopSKP, true, "Loop SKPs like we do for micro benches?"); DEFINE_int32(flushEvery, 10, "Flush --outResultsFile every Nth run."); DEFINE_bool(resetGpuContext, true, "Reset the GrContext before running each test."); DEFINE_bool(gpuStats, false, "Print GPU stats after each gpu benchmark?"); +DEFINE_bool(pngBuildTileIndex, false, "If supported, use png buildTileIndex/decodeSubset."); static SkString humanize(double ms) { if (FLAGS_verbose) return SkStringPrintf("%llu", (uint64_t)(ms*1e6)); @@ -508,8 +509,8 @@ static Target* is_enabled(Benchmark* bench, const Config& config) { */ static bool run_subset_bench(const SkString& path, bool useCodec) { static const char* const exts[] = { - "jpg", "jpeg", "png", - "JPG", "JPEG", "PNG", + "jpg", "jpeg", + "JPG", "JPEG", }; for (uint32_t i = 0; i < SK_ARRAY_COUNT(exts); i++) { @@ -518,7 +519,18 @@ static bool run_subset_bench(const SkString& path, bool useCodec) { } } - return !useCodec && (path.endsWith("webp") || path.endsWith("WEBP")); + // Test png in SkCodec, and optionally on SkImageDecoder. SkImageDecoder is + // disabled by default because it leaks memory. + // skbug.com/4360 + if ((useCodec || FLAGS_pngBuildTileIndex) && (path.endsWith("png") || path.endsWith("PNG"))) { + return true; + } + + if (!useCodec && (path.endsWith("webp") || path.endsWith("WEBP"))) { + return true; + } + + return false; } /* -- cgit v1.2.3