aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/BitmapBench.cpp
diff options
context:
space:
mode:
authorGravatar Yuqian Li <liyuqian@google.com>2017-12-06 11:30:58 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-12-06 18:32:29 +0000
commit24e963d42914af4ab74c1001412de82dc63d8ac5 (patch)
treee0a720ada877c9a48786a89b79dfa56b23659519 /bench/BitmapBench.cpp
parentec34a71bea830a7b05ec3ff763a90908d25e0c15 (diff)
Test performance of 565 bitmap scaling
This would catch b/70172912 On Linux desktops, see the difference between 8888 and 565 using: nanobench --config 8888 -m ^bitmap_RGB_565_scale$ ^bitmap_BGRA_8888_scale$ ^bitmap_RGB_565_scale_bilerp$ ^bitmap_BGRA_8888_scale_bilerp$ On Android, use: nanobench --config 8888 -m ^bitmap_RGB_565_scale$ ^bitmap_RGBA_8888_scale$ ^bitmap_RGB_565_scale_bilerp$ ^bitmap_RGBA_8888_scale_bilerp$ The results are similar if nanobench is run with --config 565. So it seems that the destination color type isn't very critical. Bug: skia: Change-Id: I71defda4d9e089a9a973cdb0c161773bc16e4a24 Reviewed-on: https://skia-review.googlesource.com/81141 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
Diffstat (limited to 'bench/BitmapBench.cpp')
-rw-r--r--bench/BitmapBench.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/bench/BitmapBench.cpp b/bench/BitmapBench.cpp
index 1fd2f696b8..cc6f325f1e 100644
--- a/bench/BitmapBench.cpp
+++ b/bench/BitmapBench.cpp
@@ -313,6 +313,10 @@ DEF_BENCH( return new FilterBitmapBench(kN32_SkColorType, kOpaque_SkAlphaType, f
DEF_BENCH( return new FilterBitmapBench(kN32_SkColorType, kOpaque_SkAlphaType, true, true, kScale_Flag | kBilerp_Flag); )
DEF_BENCH( return new FilterBitmapBench(kN32_SkColorType, kOpaque_SkAlphaType, true, false, kScale_Flag | kBilerp_Flag); )
+// The following two cases test the performance regression of b/70172912 .
+DEF_BENCH( return new FilterBitmapBench(kRGB_565_SkColorType, kOpaque_SkAlphaType, false, false, kScale_Flag | kBilerp_Flag); )
+DEF_BENCH( return new BitmapBench(kRGB_565_SkColorType, kOpaque_SkAlphaType, false, false, true); )
+
// scale rotate filter -> S32_opaque_D32_filter_DXDY_{SSE2,SSSE3}
DEF_BENCH( return new FilterBitmapBench(kN32_SkColorType, kPremul_SkAlphaType, false, false, kScale_Flag | kRotate_Flag | kBilerp_Flag); )
DEF_BENCH( return new FilterBitmapBench(kN32_SkColorType, kOpaque_SkAlphaType, false, false, kScale_Flag | kRotate_Flag | kBilerp_Flag); )