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

Issue 1336423002: Revert of SkPx: new approach to fixed-point SIMD (Closed)

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

Description

Revert of SkPx: new approach to fixed-point SIMD (patchset #9 id:160001 of https://codereview.chromium.org/1317233005/ ) Reason for revert: http://build.chromium.org/p/client.skia.compile/builders/Build-Mac10.8-Clang-Arm7-Debug-Android/builds/4627 Original issue's description: > SkPx: new approach to fixed-point SIMD > > SkPx is like Sk4px, except each platform implementation of SkPx can declare > a different sweet spot of N pixels, with extra loads and stores to handle the > ragged edge of 0<n<N pixels. > > In this case, _sse's sweet spot remains 4 pixels. _neon jumps up to 8 so > we can now use NEON's transposing loads and stores, and _none is just 1. > This makes operations involving alpha considerably more efficient on NEON, > as alpha is its own distinct 8x8 bit plane that's easy to toss around. > > This incorporates a few other improvements I've been wanting: > - no requirement that we're dealing with SkPMColor. SkColor works too. > - no anonymous namespace hack to differentiate implementations. > > Codegen and perf look good on Clang/x86-64 and GCC/ARMv7. > The NEON code looks very similar to the old NEON code, as intended. > No .skp or GM diffs on my laptop. Don't expect any. > > I intend this to replace Sk4px. Plan after landing: > - port SkXfermode_opts.h > - port Color32 in SkBlitRow_D32.cpp (and move to SkBlitRow_opts.h like other > SkOpts code) > - delete all Sk4px-related code > - clean up evolutionary dead ends in SkNx (Sk16b, Sk16h, Sk4i, Sk4d, etc.) > leaving Sk2f, Sk4f (and Sk2s, Sk4s). > - find a machine with AVX2 to work on, write SkPx_avx2.h handling 8 pixels > at a time. > > In the end we'll have Sk4f for float pixels, SkPx for fixed-point pixels. > > BUG=skia:4117 > > Committed: https://skia.googlesource.com/skia/+/82c93b45ed6ac0b628adb8375389c202d1f586f9 TBR=mtklein@google.com,msarett@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4117 Committed: https://skia.googlesource.com/skia/+/07344a5386b70f682b16b40bc6eb83acf76d6921

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+178 lines, -572 lines) Patch
D src/core/SkPx.h View 1 chunk +0 lines, -89 lines 0 comments Download
M src/opts/SkBlitMask_opts.h View 1 chunk +178 lines, -45 lines 0 comments Download
D src/opts/SkPx_neon.h View 1 chunk +0 lines, -182 lines 0 comments Download
D src/opts/SkPx_none.h View 1 chunk +0 lines, -106 lines 0 comments Download
D src/opts/SkPx_sse.h View 1 chunk +0 lines, -150 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
mtklein_C
Created Revert of SkPx: new approach to fixed-point SIMD
5 years, 3 months ago (2015-09-14 20:14:09 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1336423002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1336423002/1
5 years, 3 months ago (2015-09-14 20:14:27 UTC) #2
commit-bot: I haz the power
5 years, 3 months ago (2015-09-14 20:14:34 UTC) #3
Message was sent while issue was closed.
Committed patchset #1 (id:1) as
https://skia.googlesource.com/skia/+/07344a5386b70f682b16b40bc6eb83acf76d6921

Powered by Google App Engine
This is Rietveld 408576698