Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(292)

Issue 1680743005: NEON Optimized RGBA->PMColor sampling in SkSwizzler (Closed)

Created:
4 years, 10 months ago by msarett
Modified:
4 years, 10 months ago
Reviewers:
scroggo, mtklein
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

NEON Optimized RGBA->PMColor sampling in SkSwizzler Nexus 6P Swizzle Runtime BGRA SampleSize=2 0.16x RGBA SampleSize=2 0.18x BGRA SampleSize=4 0.19x RGBA SampleSize=4 0.21x BGRA SampleSize=8 0.20x RGBA SampleSize=8 0.23x Nexus 6P RGBA PNG Decode Runtime SampleSize=2 0.98x SampleSize=4 0.99x SampleSize=8 0.99x BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1680743005 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Patch Set 1 #

Total comments: 2

Patch Set 2 : Response to comments #

Patch Set 3 : Rebase #

Patch Set 4 : Adding NEON implementations #

Total comments: 1

Patch Set 5 : Rebase and add dependency on AndroidCodecBench #

Patch Set 6 : Share implementations for sampleSize 4 and 8 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+341 lines, -58 lines) Patch
M src/codec/SkSwizzler.h View 2 chunks +23 lines, -6 lines 0 comments Download
M src/codec/SkSwizzler.cpp View 1 2 3 15 chunks +112 lines, -39 lines 0 comments Download
M src/core/SkOpts.h View 1 2 3 4 1 chunk +7 lines, -1 line 0 comments Download
M src/core/SkOpts.cpp View 1 2 3 4 1 chunk +6 lines, -0 lines 0 comments Download
M src/opts/SkOpts_neon.cpp View 1 2 3 1 chunk +6 lines, -0 lines 0 comments Download
M src/opts/SkOpts_ssse3.cpp View 1 2 3 1 chunk +6 lines, -0 lines 0 comments Download
M src/opts/SkSwizzler_opts.h View 1 2 3 4 5 7 chunks +181 lines, -12 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 11 (6 generated)
msarett
I haven't written any implementations yet. Just want to make sure that we have a ...
4 years, 10 months ago (2016-02-09 00:05:57 UTC) #3
scroggo
1gtm https://codereview.chromium.org/1680743005/diff/1/src/codec/SkSwizzler.cpp File src/codec/SkSwizzler.cpp (right): https://codereview.chromium.org/1680743005/diff/1/src/codec/SkSwizzler.cpp#newcode968 src/codec/SkSwizzler.cpp:968: if (1 == fSampleX && fFastProcs.fSampleSize1) { Why ...
4 years, 10 months ago (2016-02-09 13:06:10 UTC) #4
msarett
This will be the last of the PNG opts for now (see my previous comments). ...
4 years, 10 months ago (2016-02-10 00:36:19 UTC) #9
mtklein
I have not yet looked at the code, though I am confident it is excellent. ...
4 years, 10 months ago (2016-02-10 00:44:00 UTC) #10
msarett
4 years, 10 months ago (2016-02-10 13:28:33 UTC) #11
On 2016/02/10 00:44:00, mtklein wrote:
> I have not yet looked at the code, though I am confident it is excellent.
> 
> > Nexus 6P Swizzle Runtime
> > BGRA SampleSize=2 0.16x 
> > RGBA SampleSize=2 0.18x
> > BGRA SampleSize=4 0.19x
> > RGBA SampleSize=4 0.21x
> > BGRA SampleSize=8 0.20x
> > RGBA SampleSize=8 0.23x
> Hot damn, good stuff.
> 
> > Nexus 6P RGBA PNG Decode Runtime
> > SampleSize=2 0.98x
> > SampleSize=4 0.99x
> > SampleSize=8 0.99x
> Oh wait, why bother?  I'd sort of only want to land this if somehow it meant
we
> wrote negative lines of code to support the speedup.

Matches my thoughts.  Closing this.

Powered by Google App Engine
This is Rietveld 408576698