From 35c556f33e2c9316055537e5683c28ea1645ff49 Mon Sep 17 00:00:00 2001 From: Herb Derby Date: Thu, 16 Nov 2017 21:43:26 +0000 Subject: Revert "Revert "Direct evaluation of gaussian"" This reverts commit a53d999007f92ecd4244b078fa909b76fd0d9f3b. Reason for revert: Bug in SkNx_sse fixed. Original change's description: > Revert "Direct evaluation of gaussian" > > This reverts commit 5e18cdea0a0a3f23d8e8b8140c82a4b54e121402. > > Reason for revert: ASAN > Original change's description: > > Direct evaluation of gaussian > > > > The SVG(CSS) standard allows the 3 pass algorithm for sigma >= 2. But > > sigma < 2, the code must evaluate to the convolution. The old code used > > an interpolation scheme between windowed filters. This code directly > > evaluates the gaussian kernel for sigma < 2. > > > > This code produces cleaner results, is 25% faster, and does not use a > > temporary memory buffer. > > > > Change-Id: Ibd0caa73cadd06b637f55ba7bd4fefcfe7ac73db > > Reviewed-on: https://skia-review.googlesource.com/62540 > > Commit-Queue: Herb Derby > > Reviewed-by: Mike Klein > > TBR=mtklein@google.com,herb@google.com > > Change-Id: I936077dfa659d71bc361339d98340c55545a1eb8 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://skia-review.googlesource.com/72481 > Reviewed-by: Brian Osman > Commit-Queue: Brian Osman TBR=mtklein@google.com,herb@google.com,brianosman@google.com Change-Id: I4c30e3481308a8148d40223519e286885ec6f880 Reviewed-on: https://skia-review.googlesource.com/72900 Commit-Queue: Herb Derby Reviewed-by: Herb Derby --- bench/BlurBench.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'bench/BlurBench.cpp') diff --git a/bench/BlurBench.cpp b/bench/BlurBench.cpp index 20afd4a2e5..5b94d66ff6 100644 --- a/bench/BlurBench.cpp +++ b/bench/BlurBench.cpp @@ -15,9 +15,11 @@ #define MINI 0.01f #define SMALL SkIntToScalar(2) -#define REAL 1.5f +#define REAL 0.5f #define BIG SkIntToScalar(10) #define REALBIG 100.5f +// The value that produces a sigma of just over 2. +#define CUTOVER 2.6f static const char* gStyleName[] = { "normal", @@ -111,5 +113,6 @@ DEF_BENCH(return new BlurBench(BIG, kNormal_SkBlurStyle, SkBlurMaskFilter::kHigh DEF_BENCH(return new BlurBench(REALBIG, kNormal_SkBlurStyle, SkBlurMaskFilter::kHighQuality_BlurFlag);) DEF_BENCH(return new BlurBench(REAL, kNormal_SkBlurStyle, SkBlurMaskFilter::kHighQuality_BlurFlag);) +DEF_BENCH(return new BlurBench(CUTOVER, kNormal_SkBlurStyle, SkBlurMaskFilter::kHighQuality_BlurFlag);) DEF_BENCH(return new BlurBench(0, kNormal_SkBlurStyle);) -- cgit v1.2.3