diff options
author | msarett <msarett@google.com> | 2016-06-20 06:07:45 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-06-20 06:07:45 -0700 |
commit | d2809573deb7b99e764f7f71fe34a5b5322df0b2 (patch) | |
tree | a51709dd5e37fe8816a1e14e24d4eff9a839f5e9 /bench | |
parent | 452ba88066b51931696fc3d0a2a1c0f8809a4143 (diff) |
Support sRGB dsts in opt code
201295.jpg on HP z620 (300x280)
QCMS Xform 0.418 ms
Skia NEW Xform 0.378 ms
Vs QCMS 1.11x
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2078623002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/2078623002
Diffstat (limited to 'bench')
-rw-r--r-- | bench/ColorCodecBench.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/bench/ColorCodecBench.cpp b/bench/ColorCodecBench.cpp index 621fc4191e..9dde5da813 100644 --- a/bench/ColorCodecBench.cpp +++ b/bench/ColorCodecBench.cpp @@ -12,9 +12,10 @@ #include "SkCommandLineFlags.h" #if defined(SK_TEST_QCMS) -DEFINE_bool(qcms, false, "Bench qcms color conversion"); +DEFINE_bool(qcms, false, "Bench qcms color conversion"); #endif DEFINE_bool(xform_only, false, "Only time the color xform, do not include the decode time"); +DEFINE_bool(srgb, false, "Convert to srgb dst space"); ColorCodecBench::ColorCodecBench(const char* name, sk_sp<SkData> encoded) : fEncoded(std::move(encoded)) @@ -170,7 +171,9 @@ void ColorCodecBench::onDelayedSetup() { #if defined(SK_TEST_QCMS) if (FLAGS_qcms) { - fDstSpaceQCMS.reset(qcms_profile_from_memory(dstData->data(), dstData->size())); + fDstSpaceQCMS.reset(FLAGS_srgb ? + qcms_profile_sRGB() : + qcms_profile_from_memory(dstData->data(), dstData->size())); SkASSERT(fDstSpaceQCMS); // This call takes a non-trivial amount of time, but I think it's the most fair to @@ -179,7 +182,8 @@ void ColorCodecBench::onDelayedSetup() { } else #endif { - fDstSpace = SkColorSpace::NewICC(dstData->data(), dstData->size()); + fDstSpace = FLAGS_srgb ? SkColorSpace::NewNamed(SkColorSpace::kSRGB_Named) : + SkColorSpace::NewICC(dstData->data(), dstData->size()); SkASSERT(fDstSpace); } } |