New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 606789 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Apr 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug-Regression

Blocked on:
issue 606974



Sign in to add a comment

clang tot linux bots mysteriously faster (while still on gyp)

Project Member Reported by thakis@chromium.org, Apr 26 2016

Issue description

https://build.chromium.org/p/chromium.fyi/builders/ClangToTLinuxASan/builds/3943/steps/gclient%20runhooks/logs/stdio

'asan=1 clang=1 clang_use_chrome_plugins=0 component=static_library lsan=1 target_arch=x64 test_isolation_mode=prepare'

https://build.chromium.org/p/chromium.fyi/builders/ClangToTLinuxASan/builds/3962/steps/generate_build_files/logs/stdio

GYP_DEFINES='test_isolation_mode=prepare  clang_use_chrome_plugins=0 clang=1 asan=1 lsan=1 component=static_library gomadir=/b/build/slave/cache/cipd/goma'


Note that target_arch=x64 disappeared. x64 is the default in gn, but not in gyp.


Not fixing this myself since this is potentially a systemic issue with the mb conversion process.
 
Status: WontFix (was: Assigned)
GYP defaults to x64 on Linux and Mac; only on win and ios does it default to x86.

https://code.google.com/p/chromium/codesearch?q=common.gypi#chromium/src/build/common.gypi&l=47

In MB the convention is to not specify flags that have the default values, except on windows because it would be really confusing to flip a config from GYP to GN and get different values.

Comment 2 by thakis@chromium.org, Apr 26 2016

Cc: dpranke@chromium.org h...@chromium.org
Owner: thakis@chromium.org
Status: Started (was: WontFix)
Summary: clang tot linux bots mysteriously faster after switching to mb (while still on gyp) (was: clang tot linux bots no longer do 64-bit builds after mb switch)
Hm, that's a good point. However, something did happen, see https://build.chromium.org/p/chromium.fyi/stats/ClangToTLinuxASan

You can see where mb got turned on by when "runhooks" time drops, and build time dropped around the same time. The bot still uses gyp and builds the same thing, so it shouldn't suddenly get faster.

I ssh'd in and checked that the ninja files that gyp generates do pass -m64 (they do), so it's still a 64-bit build.
drop.png
348 KB View Download
The last pre-MB build is build 3958, which clocks in at 2:48:40. Build 3959 fails to compile; build 3960 takes 2:43:54.

I don't see any obvious differences in how we're generating build flags, so my guess is that something actually landed that makes the compile take less time. Though, oddly, we're building more things (31139 edges in ninja vs. 31803). It's just a guess, though.

Comment 4 by thakis@chromium.org, Apr 26 2016

Oh hm, I guess one thing that's new is that mb is supposed to set LLVM_FORCE_HEAD_REVISION, and if it doesn't then build/common.gypi won't define CR_CLANG_REVISION to the trunk revision but to the pinned one, and the bot won't do clobber builds.

...but no, it looks like base/base.ninja on the bot does have -DCR_CLANG_REVISION=267552 which looks right.

Comment 5 by thakis@chromium.org, Apr 26 2016

Summary: clang tot linux bots mysteriously faster (while still on gyp) (was: clang tot linux bots mysteriously faster after switching to mb (while still on gyp))
Last slow: https://build.chromium.org/p/chromium.fyi/builders/ClangToTLinuxASan/builds/3925
First fast: https://build.chromium.org/p/chromium.fyi/builders/ClangToTLinuxASan/builds/3928

This happened before we switched to mb, so this is due to something else.

Comment 6 by thakis@chromium.org, Apr 26 2016

Cc: xyzzyz@chromium.org
Labels: -Pri-1 Pri-2
https://build.chromium.org/p/chromium.fyi/builders/ClangToTLinuxASan/builds/3927 has the protoc update. I think I'd buy that this might improve build times by 10% or so, but then why did that happen on Linux only?

Anyhow, something happened that made builds faster (hooray). If we can figure out what, maybe we can make that happen on other bots too.

Comment 7 by thakis@chromium.org, Apr 26 2016

Blockedon: 606974
I wanted to compare build traces, but that's apparently broke atm, filed  bug 606974  for that.

Comment 8 by thakis@chromium.org, Apr 27 2016

Slower build: http://chromium-build-stats.appspot.com/ninja_log/2016/04/16/slave4-c1/ninja_log.slave4-c1.chrome-bot.20160416-164504.13675.gz
Faster build: http://chromium-build-stats.appspot.com/ninja_log/2016/04/21/slave4-c1/ninja_log.slave4-c1.chrome-bot.20160421-123954.22271.gz

Looks like everything is a bit faster (look at the table; it's sorted by duration.)

It's not just compiles, links are faster too, so probably not a change in clang.

Comment 9 by thakis@chromium.org, Apr 27 2016

Status: WontFix (was: Started)
I guess we'll never know.

Sign in to add a comment