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

Issue 599693002: Only use custom SSE FMUL and FMAC with non-clang compilers. (Closed)

Created:
6 years, 3 months ago by DaleCurtis
Modified:
6 years, 2 months ago
CC:
chromium-reviews, feature-media-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Only use custom SSE FMUL and FMAC with non-clang compilers. clang's auto-vectorized C version performs better according to the Chrome Performance Dashboard. Searching back through the logs, this occurred when we switched over to clang by default. We could try to microoptimize further, but it's less of a maintenance burden to just let the compiler do its thing! The main reason the clang version is faster is it does 2x 128bit operations per loop. Simply copying these optimization yields ~97% similar performance, but the SIMD code a bit gnarlier. As such I choose to simply use the C variant when clang is present. BUG=none TEST=none Committed: https://crrev.com/657073100664172d14d61e92e1e4c36fc7024e5d Cr-Commit-Position: refs/heads/master@{#297268}

Patch Set 1 #

Patch Set 2 : Clang. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+7 lines, -0 lines) Patch
M media/base/vector_math.cc View 1 1 chunk +7 lines, -0 lines 0 comments Download

Messages

Total messages: 11 (2 generated)
DaleCurtis
Found this while reviewing your perf packet :) https://chromeperf.appspot.com/report?masters=ChromiumPerf&bots=chromium-rel-mac9%2Cchromium-rel-win7-dual%2Cchromium-rel-xp-dual%2Clinux-release&tests=media_perftests%2Fvector_math_fmul&checked=optimized_aligned%2Coptimized_unaligned%2Cunoptimized%2Coptimized_aligned%2Coptimized_unaligned%2Cunoptimized%2Coptimized_aligned%2Coptimized_unaligned%2Cunoptimized
6 years, 3 months ago (2014-09-23 22:37:25 UTC) #2
rileya (GONE FROM CHROMIUM)
On 2014/09/23 22:37:25, DaleCurtis wrote: > Found this while reviewing your perf packet :) > ...
6 years, 3 months ago (2014-09-23 22:46:53 UTC) #3
DaleCurtis
Looks like this benefit came when we switched to clang by default! +thakis to confirm ...
6 years, 3 months ago (2014-09-23 22:54:07 UTC) #4
Nico
On 2014/09/23 22:54:07, DaleCurtis wrote: > Looks like this benefit came when we switched to ...
6 years, 3 months ago (2014-09-23 22:57:56 UTC) #5
DaleCurtis
Hmm, sadly we don't have media_perftests benchmarks for ChromeOS. I'll test locally with a CrOS ...
6 years, 3 months ago (2014-09-23 23:05:16 UTC) #6
DaleCurtis
The SSE versions are faster when GCC is used, so I've switched the #if over ...
6 years, 2 months ago (2014-09-29 20:11:50 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/599693002/20001
6 years, 2 months ago (2014-09-29 20:14:22 UTC) #9
commit-bot: I haz the power
Committed patchset #2 (id:20001) as 0dc9320185be31bceb0c48cda534c1c4cb12e2af
6 years, 2 months ago (2014-09-29 21:17:47 UTC) #10
commit-bot: I haz the power
6 years, 2 months ago (2014-09-29 21:19:32 UTC) #11
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/657073100664172d14d61e92e1e4c36fc7024e5d
Cr-Commit-Position: refs/heads/master@{#297268}

Powered by Google App Engine
This is Rietveld 408576698