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

Unified Diff: bench/SKDBench.cpp

Issue 918673002: Adding new benchmark to test image decoding performance. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: bench/SKDBench.cpp
diff --git a/bench/SKDBench.cpp b/bench/SKDBench.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..2f6dd0440f1eb13a3bc288c32cafee5bbd108fa0
--- /dev/null
+++ b/bench/SKDBench.cpp
@@ -0,0 +1,38 @@
+/*
+ * Copyright 2015 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include "SKDBench.h"
+#include "SkImageDecoder.h"
+
+/*
+ *
+ * This benchmark is designed to test the performance of image decoding.
+ * It is invoked from the nanobench.cpp file.
+ *
+ */
+SKDBench::SKDBench(const char* name, SkString path, SkColorType colorType)
+ : fPath(path)
+ , fColorType(colorType) {
scroggo 2015/02/11 19:38:10 I don't think we've made it official, but we've be
msarett 2015/02/11 21:57:00 Done.
+ fName.printf("%s_%s_%u", name, path.c_str(), colorType);
scroggo 2015/02/11 19:38:10 We use indents of 4 spaces. It looks like for dec
msarett 2015/02/11 21:57:00 Done.
+}
+
+const char* SKDBench::onGetName() {
+ return fName.c_str();
+}
+
+bool SKDBench::isSuitableFor(Backend backend) {
+ return backend == kNonRendering_Backend;
mtklein 2015/02/11 19:15:36 Seems like we might want to say this is suitable f
scroggo 2015/02/11 19:38:10 That's what I did in DM, but I realized that I wan
scroggo 2015/02/11 19:38:10 Constants should go on the left side of == (see ht
msarett 2015/02/11 21:57:00 As discussed, we are not making this edit in order
msarett 2015/02/11 21:57:00 Done.
msarett 2015/02/11 21:57:01 Done.
+}
+
+void SKDBench::onDraw(const int n, SkCanvas* canvas) {
+ // Decode each image file n times
+ for (int i = 0; i < n; i++) {
+ SkBitmap bitmap;
+ SkImageDecoder::DecodeFile(fPath.c_str(), &bitmap, fColorType,
+ SkImageDecoder::kDecodePixels_Mode);
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698