aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/StreamBench.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'bench/StreamBench.cpp')
-rw-r--r--bench/StreamBench.cpp23
1 files changed, 16 insertions, 7 deletions
diff --git a/bench/StreamBench.cpp b/bench/StreamBench.cpp
index 0650a999bb..e89b207ac5 100644
--- a/bench/StreamBench.cpp
+++ b/bench/StreamBench.cpp
@@ -9,10 +9,11 @@
#include "SkStream.h"
class StreamBench : public Benchmark {
- SkString fName;
+ SkString fName;
+ const bool fTestWrite4;
public:
- StreamBench() {
- fName.printf("wstream");
+ StreamBench(bool testWrite4) : fTestWrite4(testWrite4) {
+ fName.printf("wstream_%d", testWrite4);
}
bool isSuitableFor(Backend backend) override {
@@ -23,11 +24,18 @@ protected:
const char* onGetName() override { return fName.c_str(); }
void onDraw(int loops, SkCanvas* canvas) override {
+ const char t3[] = { 1, 2, 3 };
+ const char t5[] = { 1, 2, 3, 4, 5 };
for (int i = 0; i < loops*100; ++i) {
SkDynamicMemoryWStream stream;
- for (int j = 0; j < 100000; ++j) {
- stream.write32(j);
- stream.write32(j+j);
+ for (int j = 0; j < 10000; ++j) {
+ if (fTestWrite4) {
+ stream.write32(j);
+ stream.write32(j+j);
+ } else {
+ stream.write(t3, 3);
+ stream.write(t5, 5);
+ }
}
}
}
@@ -38,4 +46,5 @@ private:
///////////////////////////////////////////////////////////////////////////////
-DEF_BENCH(return new StreamBench;)
+DEF_BENCH(return new StreamBench(false);)
+DEF_BENCH(return new StreamBench(true);)