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

Issue 2669373002: Revert of Allow using goma on Windows with symbol_level == 2 (Closed)

Created:
3 years, 10 months ago by xdai1
Modified:
3 years, 10 months ago
CC:
chromium-reviews, ukai, Sébastien Marchand
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Revert of Allow using goma on Windows with symbol_level == 2 (patchset #2 id:20001 of https://codereview.chromium.org/2661023010/ ) Reason for revert: It broke amd64-generic Trusty informational build at generate_build_files: ERROR at //build/config/compiler/compiler.gni:115:3: Assertion failed. assert(is_win_fastlink || !use_goma, ^----- Goma builds that use symbol_level 2 must use is_win_fastlink. See //BUILD.gn:11:1: whence it was imported. import("//build/config/compiler/compiler.gni") ^-------------------------------------------- GN gen failed: 1 step returned non-zero exit code: 1 @@@STEP_FAILURE@@@ See crbug.com/688203 for more info. Original issue's description: > Allow using goma on Windows with symbol_level == 2 > > Traditionally goma for Chrome has been less useful on Windows than on > other platforms because it was incompatible with full debug information. > Building with goma requires using /Z7 instead of /Zi, and this causes > the linker's memory usage and runtime to blow up as all of the debug > information is merged. > > However, /debug:fastlink makes this work. Because it doesn't merge all > of the debug information it makes goma and /Z7 practical. Full release > component builds can be done in less than fifteen minutes, with > incremental builds taking just a few seconds. Without goma a full > release component build of Chrome can easily take 40+ minutes, even on a > Z840. > > Goma's speedup comes from massively parallelizing the compile phase, > however even with /debug:fastlink the linking phases are longer with the > /Z7 switch that is required by goma. A /debug:fastlink of chrome.dll in > a component build goes from ~32 seconds to ~110 seconds on a Z620 when > /Z7 (goma) is selected. This penalty will be reduced by VC++ 2017 which > claims 30% speed improvements on /debug:fastlink. > > So, if you frequently need to do full relinks then goma may still be a > bad choice. However for most scenarios this change should make goma a > good choice for component builds of Chrome, even with full debug > information enabled. To make use of this ability you need to explicitly > specify the switches below - symbol_level will otherwise default to 1 > when use_goma == true. > > use_goma = true > is_win_fastlink = true > symbol_level = 2 > > The fastlink PDBs work well for most scenarios but there are a few > scenarios (rare for most people) where they do not work: > - Copying PDBs to another machine (fails due to references to the .obj > files) > - Reporting on all symbols/globals with SymbolSort or similar fails > - ETW tracing fails > - VS heap profiling fails > Ideally mspdbcmf.exe would let us create "normal" PDBs when needed but > in practice this appears to be unusable with /Z7 created PDBs. > > R=scottmg@chromium.org > > Review-Url: https://codereview.chromium.org/2661023010 > Cr-Commit-Position: refs/heads/master@{#447892} > Committed: https://chromium.googlesource.com/chromium/src/+/4a3cadb2d998fb8f477d0ebc7ff13619b123a805 TBR=scottmg@chromium.org,dpranke@chromium.org,brucedawson@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2669373002 Cr-Commit-Position: refs/heads/master@{#447895} Committed: https://chromium.googlesource.com/chromium/src/+/169e1ad7aeb6cf86dda8912fbf7e2ef3e2321344

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1 line, -9 lines) Patch
M build/config/compiler/BUILD.gn View 1 chunk +1 line, -6 lines 0 comments Download
M build/config/compiler/compiler.gni View 1 chunk +0 lines, -3 lines 0 comments Download

Messages

Total messages: 6 (3 generated)
xdai1
Created Revert of Allow using goma on Windows with symbol_level == 2
3 years, 10 months ago (2017-02-03 01:09:05 UTC) #2
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/2669373002/1
3 years, 10 months ago (2017-02-03 01:09:49 UTC) #3
commit-bot: I haz the power
3 years, 10 months ago (2017-02-03 01:11:57 UTC) #6
Message was sent while issue was closed.
Committed patchset #1 (id:1) as
https://chromium.googlesource.com/chromium/src/+/169e1ad7aeb6cf86dda8912fbf7e...

Powered by Google App Engine
This is Rietveld 408576698