diff options
author | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-07-23 20:25:34 +0000 |
---|---|---|
committer | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-07-23 20:25:34 +0000 |
commit | 70d75ca764e16e15f016e423b85a0fa2a29fb8c7 (patch) | |
tree | 8c3d2b53e6efdea8987acc7b6fe9db7420107687 /bench/ChecksumBench.cpp | |
parent | d2d9f563be80a6169380b6ac0d2b0306688817e4 (diff) |
Add SkChecksum::Murmur3.
BUG=
R=reed@google.com
Author: mtklein@google.com
Review URL: https://chromiumcodereview.appspot.com/19500020
git-svn-id: http://skia.googlecode.com/svn/trunk@10292 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'bench/ChecksumBench.cpp')
-rw-r--r-- | bench/ChecksumBench.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/bench/ChecksumBench.cpp b/bench/ChecksumBench.cpp index d2497d7f16..b125aa4d1f 100644 --- a/bench/ChecksumBench.cpp +++ b/bench/ChecksumBench.cpp @@ -15,7 +15,8 @@ enum ChecksumType { kChecksum_ChecksumType, kMD5_ChecksumType, - kSHA1_ChecksumType + kSHA1_ChecksumType, + kMurmur3_ChecksumType, }; class ComputeChecksumBench : public SkBenchmark { @@ -42,6 +43,8 @@ protected: case kChecksum_ChecksumType: return "compute_checksum"; case kMD5_ChecksumType: return "compute_md5"; case kSHA1_ChecksumType: return "compute_sha1"; + case kMurmur3_ChecksumType: return "compute_murmur3"; + default: SK_CRASH(); return ""; } } @@ -70,6 +73,12 @@ protected: sha1.finish(digest); } } break; + case kMurmur3_ChecksumType: { + for (int i = 0; i < N; i++) { + volatile uint32_t result = SkChecksum::Murmur3(fData, sizeof(fData)); + sk_ignore_unused_variable(result); + } + }break; } } @@ -83,7 +92,11 @@ private: static SkBenchmark* Fact0(void* p) { return new ComputeChecksumBench(p, kChecksum_ChecksumType); } static SkBenchmark* Fact1(void* p) { return new ComputeChecksumBench(p, kMD5_ChecksumType); } static SkBenchmark* Fact2(void* p) { return new ComputeChecksumBench(p, kSHA1_ChecksumType); } +static SkBenchmark* Fact3(void* p) { return new ComputeChecksumBench(p, kMurmur3_ChecksumType); } + static BenchRegistry gReg0(Fact0); static BenchRegistry gReg1(Fact1); static BenchRegistry gReg2(Fact2); +static BenchRegistry gReg3(Fact3); + |