3d626834b4b5ee2d6dda34da365dfe40520253aa |
|
03-Apr-2015 |
mtklein <mtklein@chromium.org> |
New names for SkPMFloat methods. BUG=skia: Review URL: https://codereview.chromium.org/1055123002
/external/skia/bench/PMFloatBench.cpp
|
0340df5b3698aff1c9540fcdbc3dafd9d5ddb0b0 |
|
31-Mar-2015 |
mtklein <mtklein@chromium.org> |
back to Sk4f for SkPMColor #floats BUG=skia: BUG=skia:3592 Review URL: https://codereview.chromium.org/1047823002
/external/skia/bench/PMFloatBench.cpp
|
c9adb05b64fa0bfadf9d1a782afcda470da68c9e |
|
30-Mar-2015 |
mtklein <mtklein@chromium.org> |
Refactor Sk2x<T> + Sk4x<T> into SkNf<N,T> and SkNi<N,T> The primary feature this delivers is SkNf and SkNd for arbitrary power-of-two N. Non-specialized types or types larger than 128 bits should now Just Work (and we can drop in a specialization to make them faster). Sk4s is now just a typedef for SkNf<4, SkScalar>; Sk4d is SkNf<4, double>, Sk2f SkNf<2, float>, etc. This also makes implementing new specializations easier and more encapsulated. We're now using template specialization, which means the specialized versions don't have to leak out so much from SkNx_sse.h and SkNx_neon.h. This design leaves us room to grow up, e.g to SkNf<8, SkScalar> == Sk8s, and to grown down too, to things like SkNi<8, uint16_t> == Sk8h. To simplify things, I've stripped away most APIs (swizzles, casts, reinterpret_casts) that no one's using yet. I will happily add them back if they seem useful. You shouldn't feel bad about using any of the typedef Sk4s, Sk4f, Sk4d, Sk2s, Sk2f, Sk2d, Sk4i, etc. Here's how you should feel: - Sk4f, Sk4s, Sk2d: feel awesome - Sk2f, Sk2s, Sk4d: feel pretty good No public API changes. TBR=reed@google.com BUG=skia:3592 Review URL: https://codereview.chromium.org/1048593002
/external/skia/bench/PMFloatBench.cpp
|
3d4c4a5a9feff961c6ba70443fa40ea1ca0a503e |
|
26-Mar-2015 |
mtklein <mtklein@chromium.org> |
SkPMFloat::trunc() Add and test trunc(), which is what get() used to be before rounding. Using trunc() is a ~40% speedup on our linear gradient bench. #neon #floats BUG=skia:3592 #n5 #n9 CQ_INCLUDE_TRYBOTS=client.skia.android:Test-Android-Nexus5-Adreno330-Arm7-Debug-Trybot;client.skia.android:Test-Android-Nexus9-TegraK1-Arm64-Release-Trybot Review URL: https://codereview.chromium.org/1032243002
/external/skia/bench/PMFloatBench.cpp
|
36352bf5e38f45a70ee4f4fc132a38048d38206d |
|
26-Mar-2015 |
mtklein <mtklein@chromium.org> |
C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} NOPRESUBMIT=true BUG=skia: DOCS_PREVIEW= https://skia.org/?cl=1037793002 Review URL: https://codereview.chromium.org/1037793002
/external/skia/bench/PMFloatBench.cpp
|
02fd592c8d190058652bb715fb34feb7a72992e5 |
|
26-Mar-2015 |
mtklein <mtklein@chromium.org> |
hack on linear gradient Am I going nuts or can we get this down to just adds and converts in the loop? #floats #n9 BUG=skia:3592 CQ_INCLUDE_TRYBOTS=client.skia.android:Test-Android-Nexus9-TegraK1-Arm64-Release-Trybot Review URL: https://codereview.chromium.org/1008973004
/external/skia/bench/PMFloatBench.cpp
|
15391ee4acaa092f52742f64968ad8046b74ca81 |
|
25-Mar-2015 |
mtklein <mtklein@chromium.org> |
Update 4-at-a-time APIs. There is no reason to require the 4 SkPMFloats (registers) to be adjacent. The only potential win in loads and stores comes from the SkPMColors being adjacent. Makes no difference to existing bench. BUG=skia: Review URL: https://codereview.chromium.org/1035583002
/external/skia/bench/PMFloatBench.cpp
|
548bf38b28986fab6770350b72247d7114d98184 |
|
05-Mar-2015 |
mtklein <mtklein@chromium.org> |
4-at-a-time SkPMColor -> SkPMFloat API. Please see if this looks usable. It may even give a perf boost if you use it, even without custom implementations for each instruction set. I've been trying this morning to beat this naive loop implementation, but so far no luck with either _SSE2.h or _SSSE3.h. It's possible this is an artifact of the microbenchmark, because we're not doing anything between the conversions. I'd like to see how this fits into real code, what assembly's generated, what the hot spots are, etc. I've updated the tests to test these new APIs, and splintered off a pair of new benchmarks that use the new APIs. This required some minor rejiggering in the benches. BUG=skia: Review URL: https://codereview.chromium.org/978213003
/external/skia/bench/PMFloatBench.cpp
|
4e644f5d5020a6ec904734a3f521bfad173cb450 |
|
04-Mar-2015 |
mtklein <mtklein@chromium.org> |
Update SkPMFloat API a bit. Instead of set(SkPMColor), add a constructor SkPMFloat(SkPMColor). Replace setA(), setR(), etc. with a 4 float constructor. And, promise to stick to SkPMColor order. BUG=skia: Review URL: https://codereview.chromium.org/977773002
/external/skia/bench/PMFloatBench.cpp
|
60ff4582ae76aa131aeb20a3e16c89fa3a40a41c |
|
03-Mar-2015 |
mtklein <mtklein@chromium.org> |
Trim the fat off SkPMFloat bench. This bench was ~75% overhead, ~25% good bench. It is now just about the opposite: about 30% of the runtime is loop and random number overhead, and about 70% of the time is spent doing SkPMColor <-> SkPMFloat work. BUG=skia: NOPRESUBMIT=true Review URL: https://codereview.chromium.org/968133005
/external/skia/bench/PMFloatBench.cpp
|
a2f4be76a9d453f1fdfd55b0cec6a683f23ffe0f |
|
23-Feb-2015 |
mtklein <mtklein@chromium.org> |
Sketch SkPMFloat BUG=skia: Committed: https://skia.googlesource.com/skia/+/50d2b3114b3e59dc84811881591bf25b2c1ecb9f CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu13.10-GCC4.8-Arm7-Release-Android_Neon-Trybot http://build.chromium.org/p/client.skia.compile/builders/Build-Ubuntu13.10-GCC4.8-Arm7-Release-Android_Neon/builds/2120/steps/build%20most/logs/stdio Review URL: https://codereview.chromium.org/936633002
/external/skia/bench/PMFloatBench.cpp
|
088302756bde25083d6712b18dcd24644d4dcdbb |
|
23-Feb-2015 |
mtklein <mtklein@google.com> |
Revert of Sketch SkPMFloat (patchset #15 id:270001 of https://codereview.chromium.org/936633002/) Reason for revert: http://build.chromium.org/p/client.skia.compile/builders/Build-Ubuntu13.10-GCC4.8-Arm7-Release-Android_Neon/builds/2120/steps/build%20most/logs/stdio Original issue's description: > Sketch SkPMFloat > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/50d2b3114b3e59dc84811881591bf25b2c1ecb9f TBR=reed@google.com,msarrett@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/952453004
/external/skia/bench/PMFloatBench.cpp
|
50d2b3114b3e59dc84811881591bf25b2c1ecb9f |
|
23-Feb-2015 |
mtklein <mtklein@chromium.org> |
Sketch SkPMFloat BUG=skia: Review URL: https://codereview.chromium.org/936633002
/external/skia/bench/PMFloatBench.cpp
|