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

Issue 2885213002: Optimize yasm even in debug builds (Closed)

Created:
3 years, 7 months ago by brucedawson
Modified:
3 years, 7 months ago
Reviewers:
brettw, DaleCurtis
CC:
chromium-reviews
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Optimize yasm even in debug builds Running yasm on highbd_sad4d_sse2.asm takes about ~33 seconds on debug component builds on Windows - closer to 42 seconds when the system is under load. This is partially because compiler optimizations are disabled in debug builds (costs ~5 seconds) and partially because we link with the debug CRT (costs ~15 seconds). This change makes it so that we always enable optimizations and always link with the release CRT, thus reducing the time to run yasm on highbd_sad4d_sse2.asm from ~33 seconds to ~13 seconds. Further improvements could be obtained by only running yasm once on the .asm files, but such a change is left for later. The total CPU-time savings is tiny compared to the cost of a full build, but on some goma builds this step ends up being the long pole which serializes the build and costs an estimated 5% of elapsed build time. BUG=722617 Review-Url: https://codereview.chromium.org/2885213002 Cr-Commit-Position: refs/heads/master@{#473066} Committed: https://chromium.googlesource.com/chromium/src/+/9c90eb122f3327c8c03bbf2171a97cb157f89459

Patch Set 1 #

Patch Set 2 : Use variables to avoid replicating logic #

Unified diffs Side-by-side diffs Delta from patch set Stats (+50 lines, -0 lines) Patch
M build/config/win/BUILD.gn View 2 chunks +14 lines, -0 lines 0 comments Download
M third_party/yasm/BUILD.gn View 1 4 chunks +36 lines, -0 lines 0 comments Download

Messages

Total messages: 22 (17 generated)
brucedawson
Any thoughts on this fix? This may nicely improve the speed of some debug builds. ...
3 years, 7 months ago (2017-05-17 16:45:18 UTC) #10
brettw
lgtm
3 years, 7 months ago (2017-05-18 21:25:10 UTC) #13
DaleCurtis
lgtm, maybe we should just stick binaries in Google storage like we do for clang. ...
3 years, 7 months ago (2017-05-18 22:37:47 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2885213002/20001
3 years, 7 months ago (2017-05-19 02:01:02 UTC) #19
commit-bot: I haz the power
3 years, 7 months ago (2017-05-19 03:45:48 UTC) #22
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://chromium.googlesource.com/chromium/src/+/9c90eb122f3327c8c03bbf2171a9...

Powered by Google App Engine
This is Rietveld 408576698