| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ConvolveVertically time is reduced about 60% using haswell cpu.
Nanobench results:
before after
bitmap_scale_filter_64_256 611us 302us
bitmap_scale_filter_80_90 101us 64.9us
bitmap_scale_filter_30_90 82.3us 51.4us
bitmap_scale_filter_10_90 73.6us 42.4us
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2526733002
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD
Review-Url: https://codereview.chromium.org/2526733002
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch moves the C++/SSE2/NEON implementations of convolve functions
into the same place and uses SkOpts framework.
Also some indentation fix.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2500113004
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/2500113004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change makes SSE2/Neon horizontal convolution functions do not read
extra pixels past the end of the buffer. So we can remove all the SIMD
specific logic in SkConvolver to deal with last couple of rows and also
avoid applying padding to convolution filters.
Performance impact is small. Nanobench time change:
SSE2 NEON
bitmap_scale_filter_64_256 1% -2%
bitmap_scale_filter_256_64 1% 2%
bitmap_scale_filter_90_10 1% -1%
bitmap_scale_filter_90_30 1% 0%
bitmap_scale_filter_90_80 1% 0%
bitmap_scale_filter_90_90 1% 1%
bitmap_scale_filter_80_90 0% 0%
bitmap_scale_filter_30_90 3% 6%
bitmap_scale_filter_10_90 0% 2%
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2481733003
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/2481733003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Part of this CL improves the speed by using dynamic arrays
more effectively.
Part uses SIMD and more concise float expressions for speed.
Some unused code was deleted.
The latter changes are guarded by:
SK_SUPPORT_LEGACY_BITMAP_FILTER
until this lands and the corresponding layout changes in
chrome can be relanded.
With the legacy flag defined, no Skia or Chrome test results
change. Without the flag defined in Skia, only 0.01% - 0.02%
of the pixels change, and then by (1,1,1) in 8888.
codereview.chromium.org/1583533002 adds the guard to Chrome.
R=reed@google.com
BUG=skia:2261
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1563183003
Review URL: https://codereview.chromium.org/1563183003
|
|
|
|
|
|
| |
DOCS_PREVIEW= https://skia.org/?cl=1432503003
Review URL: https://codereview.chromium.org/1432503003
|
|
|
|
|
|
| |
BUG=528628
Review URL: https://codereview.chromium.org/1368393003
|
|
|
|
|
|
| |
DOCS_PREVIEW= https://skia.org/?cl=1316233002
Review URL: https://codereview.chromium.org/1316233002
|
|
|
|
|
|
|
|
| |
Sadly, not asserting for me yet. Can't hurt.
BUG=chromium:491660
Review URL: https://codereview.chromium.org/1187173005
|
|
|
|
|
|
|
|
|
|
|
| |
Works around some garbage bottom rows for certain scaled images. Will land a separate GM that demonstrates.
BUG=skia:
R=mtklein@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/513833003
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added a few more checks to avoid overflowing 32 bit sizes while computing convolutions.
I also changed a dangerously misleading INHERITED typedef.
BUG=389570
R=senorblanco@google.com, senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/361403006
|
|
|
|
|
|
|
|
|
|
|
| |
GCC 4.7 and 4.8 don't need this, but we're not building with them so it doesn't hurt.
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/343423003
|
|
|
|
|
|
|
|
|
| |
BUG=skia:2575
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/352883002
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Last CL accidentally disabled autovectorization on 64-bit builds too.
This fixes that.
BUG=skia:2575
R=rmistry@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/353823005
|
|
|
|
|
|
|
|
|
|
|
| |
The multiplication of 2 signed ints was producing a result larger than what's supported by a single signed int and the memory was accessed out of bounds. Using uint64_t solves the issue.
BUG=378491
R=reed@google.com, rmistry@google.com
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/323013005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Revert of https://codereview.chromium.org/184323003
Reason for revert:
Caused unexpected CompareGM failures-
http://108.170.217.252:10117/builders/Test-Win8-ShuttleA-GTX660-x86_64-Debug/builds/461/steps/CompareGMs/logs/stdio
http://108.170.217.252:10117/builders/Test-Win7-ShuttleA-HD2000-x86_64-Release/builds/2062/steps/CompareGMs/logs/stdio
http://108.170.217.252:10117/builders/Test-ChromeOS-Alex-GMA3150-x86-Release/builds/1400/steps/CompareGMs/logs/stdio
TBR=
NOTREECHECKS=True
NOTRY=True
git-svn-id: http://skia.googlecode.com/svn/trunk@13683 2bbb7eff-a529-9590-31e7-b0007b416f81
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using fFilterValues.reset() or a loop of fFilterValues.push_back() is about 5x slower than calling fFilterValues.resize_back() and then looping using primitive [] and =.
This is only going to show up if you apply https://codereview.chromium.org/183763047/, where it yields about 2.5% speedup in the bitmap resize microbenchmarks on a Linux desktop. Ceteris paribus, it should actually improve rasterization time of drawBitmapRectToRect() with a resize by about 5% in Chromium.
BUG=skia:2258
R=humper@google.com, tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/184323003
git-svn-id: http://skia.googlecode.com/svn/trunk@13681 2bbb7eff-a529-9590-31e7-b0007b416f81
|
|
|
|
|
|
|
|
|
| |
BUG=
R=humper@google.com
Review URL: https://codereview.chromium.org/23796005
git-svn-id: http://skia.googlecode.com/svn/trunk@11118 2bbb7eff-a529-9590-31e7-b0007b416f81
|
|
|
|
| |
git-svn-id: http://skia.googlecode.com/svn/trunk@10223 2bbb7eff-a529-9590-31e7-b0007b416f81
|
|
|
|
| |
git-svn-id: http://skia.googlecode.com/svn/trunk@10208 2bbb7eff-a529-9590-31e7-b0007b416f81
|
|
fast.
We've tested this CL plumbed into Chrome and done benchmarking with excellent results.
This CL can land independent of any Chrome changes; it's completely internal to skia.
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/19335002
git-svn-id: http://skia.googlecode.com/svn/trunk@10206 2bbb7eff-a529-9590-31e7-b0007b416f81
|