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

Issue 616651 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Jul 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug



Sign in to add a comment

Improve Android Link Speed via Smarter --build-id

Project Member Reported by agrieve@chromium.org, Jun 2 2016

Issue description

Knowledge from mcgrathr:

> There is no requirement that build IDs be generated in any one particular
> way--there is just an underspecified requirement that they be "unique
> enough".  The "canonical" one is what's implemented by --build-id=sha1
> (aka --build-id by default in BFD ld), which is a hash across the
> whole output file and so becomes a serializing operation at the end of
> the link.  Gold implements another scheme available under
> --build-id=tree (which became the default for gold in binutils-2.24,
> so it should be what we are using now in Chromium) , which is intended
> also to be reliably reproducible but to be implementable with much
> less serialization.  If you didn't care about reproducibility, it
> would be entirely valid to use some other scheme like --build-id=uuid,
> which just uses a random bit string (long enough to be presumed
> universally unique), and thus is generated in constant time.  The
> tools also support --build-id=0x... so that you can precompute a value
> in whatever fashion you choose (however many bytes long you like,
> though the SHA1 length is what's usually used) and just store exactly
> that at link time (which of course is also constant time).

I don't think there's any reason that we need to use sha1 build-ids. Let's see how much faster --build-id=UUID and --build-id=tree make our link times.

 
Tested setting --build-id=none. Component link time for libchrome.cr.so went from ~10s to ~8.5s

--build-id=tree made it no faster.
Status: WontFix (was: Available)
False alarm. More playing showed this didn't help at all.

Sign in to add a comment