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

Issue 23719002: ARM Skia NEON patches - 16/17 - Blitmask (Closed)

Created:
7 years, 3 months ago by kevin.petit.not.used.account
Modified:
7 years ago
Reviewers:
djsollen, mtklein, reed1
CC:
skia-review_googlegroups.com
Visibility:
Public.

Description

ARM Skia NEON patches - 16/17 - Blitmask Blitmask: NEON optimised version of the D32_A8 functions Here are the microbenchmark results I got for the D32_A8 functions: Cortex-A9: ========== +-------+--------+--------+--------+ | count | Black | Opaque | Color | +-------+--------+--------+--------+ | 1 | -14% | -39,5% | -37,5% | +-------+--------+--------+--------+ | 2 | -3% | -29,9% | -25% | +-------+--------+--------+--------+ | 4 | -11,3% | -22% | -14,5% | +-------+--------+--------+--------+ | 8 | +128% | +66,6% | +105% | +-------+--------+--------+--------+ | 16 | +159% | +102% | +149% | +-------+--------+--------+--------+ | 64 | +189% | +136% | +189% | +-------+--------+--------+--------+ | 256 | +126% | +102% | +149% | +-------+--------+--------+--------+ | 1024 | +67,5% | +81,4% | +123% | +-------+--------+--------+--------+ Cortex-A15: =========== +-------+--------+--------+--------+ | count | Black | Opaque | Color | +-------+--------+--------+--------+ | 1 | -24% | -46,5% | -37,5% | +-------+--------+--------+--------+ | 2 | -18,5% | -35,5% | -28% | +-------+--------+--------+--------+ | 4 | -5,2% | -17,5% | -15,5% | +-------+--------+--------+--------+ | 8 | +72% | +65,8% | +84,7% | +-------+--------+--------+--------+ | 16 | +168% | +117% | +149% | +-------+--------+--------+--------+ | 64 | +165% | +110% | +145% | +-------+--------+--------+--------+ | 256 | +106% | +99,6% | +141% | +-------+--------+--------+--------+ | 1024 | +93,7% | +94,7% | +130% | +-------+--------+--------+--------+ Blitmask: add NEON optimised PlatformBlitRowProcs16 Here are the microbenchmark results (speedup vs. C code): +-------+-----------------+-----------------+ | | Cortex-A9 | Cortex-A15 | | count +--------+--------+--------+--------+ | | Blend | Opaque | Blend | Opaque | +-------+--------+--------+--------+--------+ | 1 | -19,2% | -36,7% | -33,6% | -44,7% | +-------+--------+--------+--------+--------+ | 2 | -12,6% | -27,8% | -39% | -48% | +-------+--------+--------+--------+--------+ | 4 | -11,5% | -21,6% | -37,7% | -44,3% | +-------+--------+--------+--------+--------+ | 8 | +141% | +59,7% | +123% | +48,7% | +-------+--------+--------+--------+--------+ | 16 | +213% | +119% | +214% | +121% | +-------+--------+--------+--------+--------+ | 64 | +212% | +105% | +242% | +167% | +-------+--------+--------+--------+--------+ | 256 | +289% | +167% | +249% | +207% | +-------+--------+--------+--------+--------+ | 1024 | +273% | +169% | +146% | +220% | +-------+--------+--------+--------+--------+ Signed-off-by: Kévin PETIT <kevin.petit@arm.com>; BUG= Committed: http://code.google.com/p/skia/source/detail?r=12420

Patch Set 1 #

Patch Set 2 : Remove code that has already been comitted #

Patch Set 3 : Rebase, group with LCD16 code and clean #

Total comments: 14

Patch Set 4 : Address review comments #

Total comments: 8

Patch Set 5 : More review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+315 lines, -1 line) Patch
M gyp/opts.gyp View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M src/opts/SkBlitMask_opts_arm.cpp View 1 2 3 4 1 chunk +26 lines, -1 line 0 comments Download
A src/opts/SkBlitMask_opts_arm_neon.h View 1 2 3 4 1 chunk +16 lines, -0 lines 0 comments Download
A src/opts/SkBlitMask_opts_arm_neon.cpp View 1 2 3 4 1 chunk +255 lines, -0 lines 0 comments Download
M src/opts/SkColor_opts_neon.h View 1 2 3 2 chunks +17 lines, -0 lines 0 comments Download

Messages

Total messages: 12 (0 generated)
kevin.petit.not.used.account
I've rebased, cleaned a little and grouped with similar code. This code has no mismatches ...
7 years, 1 month ago (2013-11-11 15:13:01 UTC) #1
mtklein
https://codereview.chromium.org/23719002/diff/7001/src/core/SkBlitMask_D32.cpp File src/core/SkBlitMask_D32.cpp (right): https://codereview.chromium.org/23719002/diff/7001/src/core/SkBlitMask_D32.cpp#newcode219 src/core/SkBlitMask_D32.cpp:219: SkBlitMask::ColorProc D32_A8_Factory(SkColor color) { Having to make this change ...
7 years, 1 month ago (2013-11-11 17:17:03 UTC) #2
djsollen
https://codereview.chromium.org/23719002/diff/7001/src/opts/SkColor_opts_neon.h File src/opts/SkColor_opts_neon.h (right): https://codereview.chromium.org/23719002/diff/7001/src/opts/SkColor_opts_neon.h#newcode5 src/opts/SkColor_opts_neon.h:5: #include "SkColorPriv.h" why do you need this include?
7 years, 1 month ago (2013-11-11 17:21:45 UTC) #3
reed1
What is 'count' in your perf graphs? mask-width? Perhaps we should consider ways to be ...
7 years, 1 month ago (2013-11-11 17:32:55 UTC) #4
kevin.petit.not.used.account
Patch Set 4 addresses review comments. https://codereview.chromium.org/23719002/diff/7001/src/core/SkBlitMask_D32.cpp File src/core/SkBlitMask_D32.cpp (right): https://codereview.chromium.org/23719002/diff/7001/src/core/SkBlitMask_D32.cpp#newcode219 src/core/SkBlitMask_D32.cpp:219: SkBlitMask::ColorProc D32_A8_Factory(SkColor color) ...
7 years, 1 month ago (2013-11-11 18:10:34 UTC) #5
kevin.petit.not.used.account
On 2013/11/11 17:32:55, reed1 wrote: > What is 'count' in your perf graphs? mask-width? Yes. ...
7 years, 1 month ago (2013-11-11 18:20:25 UTC) #6
kevin.petit.not.used.account
ping. Any more comments on this?
7 years ago (2013-11-25 17:00:19 UTC) #7
mtklein
https://codereview.chromium.org/23719002/diff/27004/src/opts/SkBlitMask_opts_arm.cpp File src/opts/SkBlitMask_opts_arm.cpp (right): https://codereview.chromium.org/23719002/diff/27004/src/opts/SkBlitMask_opts_arm.cpp#newcode6 src/opts/SkBlitMask_opts_arm.cpp:6: #include "SkBlitMask_opts_arm_neon.h" Looks like this file is missing? https://codereview.chromium.org/23719002/diff/27004/src/opts/SkBlitMask_opts_arm.cpp#newcode21 ...
7 years ago (2013-11-26 14:44:00 UTC) #8
kevin.petit.not.used.account
https://codereview.chromium.org/23719002/diff/27004/src/opts/SkBlitMask_opts_arm.cpp File src/opts/SkBlitMask_opts_arm.cpp (right): https://codereview.chromium.org/23719002/diff/27004/src/opts/SkBlitMask_opts_arm.cpp#newcode6 src/opts/SkBlitMask_opts_arm.cpp:6: #include "SkBlitMask_opts_arm_neon.h" On 2013/11/26 14:44:01, mtklein wrote: > Looks ...
7 years ago (2013-11-26 16:23:32 UTC) #9
mtklein
On 2013/11/26 16:23:32, kevin.petit.arm wrote: > https://codereview.chromium.org/23719002/diff/27004/src/opts/SkBlitMask_opts_arm.cpp > File src/opts/SkBlitMask_opts_arm.cpp (right): > > https://codereview.chromium.org/23719002/diff/27004/src/opts/SkBlitMask_opts_arm.cpp#newcode6 > ...
7 years ago (2013-11-26 20:37:38 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/kevin.petit.arm@gmail.com/23719002/137001
7 years ago (2013-11-27 17:00:31 UTC) #11
commit-bot: I haz the power
7 years ago (2013-11-27 17:08:39 UTC) #12
Message was sent while issue was closed.
Change committed as 12420

Powered by Google App Engine
This is Rietveld 408576698