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

Issue 1685133005: SkHalfToFloat_01 / SkFloatToHalf_01 (Closed)

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

Description

SkHalfToFloat_01 / SkFloatToHalf_01 These are basically inlined, 4-at-a-time versions of our existing functions, but cut down to avoid any work that's only necessary outside [0,1]. Both f16 and f32 denorms should work fine modulo the usual ARMv7 NEON denorm==zero caveat. In exchange for a little speed, f32->f16 does not round properly. Instead it truncates, so it's never off by more than 1 bit. Support for finite values >1 or <0 is straightforward to add back. >1 might already work as-is. Getting close to _u16 performance: micros bench 261.13 xferu64_bw_1_opaque_u16 1833.51 xferu64_bw_1_alpha_u16 2762.32 ? xferu64_aa_1_opaque_u16 3334.29 xferu64_aa_1_alpha_u16 249.78 xferu64_bw_1_opaque_f16 3383.18 xferu64_bw_1_alpha_f16 4214.72 xferu64_aa_1_opaque_f16 4701.19 xferu64_aa_1_alpha_f16 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133005 Committed: https://skia.googlesource.com/skia/+/9ea11a4235b3e3521cc8bf914a27c2d0dc062db9 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Committed: https://skia.googlesource.com/skia/+/fff055cc5f9ca5015678f4f13a4f842084bd62d5

Patch Set 1 #

Patch Set 2 : other way #

Patch Set 3 : relax test #

Patch Set 4 : sampling mode #

Patch Set 5 : comments #

Patch Set 6 : simplify #

Patch Set 7 : fixes #

Patch Set 8 : saner portable code #

Patch Set 9 : more fixes #

Patch Set 10 : shhhh #

Patch Set 11 : loadl/storel #

Patch Set 12 : guard #

Unified diffs Side-by-side diffs Delta from patch set Stats (+100 lines, -23 lines) Patch
M src/core/SkHalf.h View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +63 lines, -0 lines 0 comments Download
M src/core/SkXfermodeU64.cpp View 1 2 3 4 5 1 chunk +2 lines, -23 lines 0 comments Download
M tests/Float16Test.cpp View 1 2 3 4 5 6 7 8 9 2 chunks +35 lines, -0 lines 0 comments Download

Messages

Total messages: 48 (30 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1685133005/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1685133005/100001
4 years, 10 months ago (2016-02-10 21:59:59 UTC) #14
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: Build-Mac-Clang-Arm7-Debug-iOS-Trybot on client.skia.compile (JOB_FAILED, http://build.chromium.org/p/client.skia.compile/builders/Build-Mac-Clang-Arm7-Debug-iOS-Trybot/builds/165) Build-Ubuntu-GCC-Arm64-Debug-Android-Trybot on ...
4 years, 10 months ago (2016-02-10 22:02:50 UTC) #17
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1685133005/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1685133005/120001
4 years, 10 months ago (2016-02-10 22:05:22 UTC) #19
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-Trybot on client.skia (JOB_FAILED, http://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-Trybot/builds/6031) Build-Mac-Clang-Arm7-Debug-iOS-Trybot on ...
4 years, 10 months ago (2016-02-10 22:06:16 UTC) #21
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1685133005/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1685133005/160001
4 years, 10 months ago (2016-02-10 22:11:22 UTC) #23
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: Build-Win-MSVC-x86-Debug-Trybot on client.skia.compile (JOB_FAILED, http://build.chromium.org/p/client.skia.compile/builders/Build-Win-MSVC-x86-Debug-Trybot/builds/6092) Build-Win-MSVC-x86_64-Debug-Trybot on ...
4 years, 10 months ago (2016-02-10 22:13:36 UTC) #25
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1685133005/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1685133005/180001
4 years, 10 months ago (2016-02-10 22:14:46 UTC) #27
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: Build-Win-MSVC-x86-Debug-Trybot on client.skia.compile (JOB_FAILED, http://build.chromium.org/p/client.skia.compile/builders/Build-Win-MSVC-x86-Debug-Trybot/builds/6093)
4 years, 10 months ago (2016-02-10 22:16:58 UTC) #29
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1685133005/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1685133005/200001
4 years, 10 months ago (2016-02-10 22:18:27 UTC) #31
mtklein_C
The bots may have a little more complaining to do, but it's probably good enough ...
4 years, 10 months ago (2016-02-10 22:20:45 UTC) #33
mtklein_C
(A weirder version of f16 -> f32 requiring more denormalized multiplication, __m128i h = _mm_unpacklo_epi16(_mm_loadl_epi64((const ...
4 years, 10 months ago (2016-02-10 22:27:55 UTC) #34
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 10 months ago (2016-02-10 22:51:58 UTC) #36
reed1
double-woot! Glad we at least have a chance to add back in < 0 and ...
4 years, 10 months ago (2016-02-11 13:47:39 UTC) #37
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1685133005/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1685133005/200001
4 years, 10 months ago (2016-02-11 13:55:34 UTC) #39
commit-bot: I haz the power
Committed patchset #11 (id:200001) as https://skia.googlesource.com/skia/+/9ea11a4235b3e3521cc8bf914a27c2d0dc062db9
4 years, 10 months ago (2016-02-11 13:56:11 UTC) #41
mtklein
A revert of this CL (patchset #11 id:200001) has been created in https://codereview.chromium.org/1693443003/ by mtklein@google.com. ...
4 years, 10 months ago (2016-02-11 14:00:40 UTC) #42
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1685133005/220001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1685133005/220001
4 years, 10 months ago (2016-02-11 14:04:11 UTC) #46
commit-bot: I haz the power
4 years, 10 months ago (2016-02-11 14:30:07 UTC) #48
Message was sent while issue was closed.
Committed patchset #12 (id:220001) as
https://skia.googlesource.com/skia/+/fff055cc5f9ca5015678f4f13a4f842084bd62d5

Powered by Google App Engine
This is Rietveld 408576698