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

Issue 735361 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug

Blocked on:
issue 635308



Sign in to add a comment

Sequential proguard build makes build extremely slow

Project Member Reported by tikuta@chromium.org, Jun 21 2017

Issue description

Recently, Android builder took nearly 1 hour for entire build.

https://build.chromium.org/p/chromium/builders/Android

For this build, sequential build step for proguard took many time.
https://luci-milo.appspot.com/buildbot/chromium/Android/73537

I found that from build trace log of 'ninja_log' in 'postprocess_for_goma.upload_log' step -> 'trace viewer'
http://chromium-build-stats.appspot.com/ninja_log/2017/06/21/slave136-c1/ninja_log.slave136-c1.chrome-bot.20170620-231721.15093.gz/trace.html

These 7 large proguard builds cannot run in parallel?

 
Blockedon: 635308
We recently changed bots to remove parallelism here due to bots running out of memory:
https://bugs.chromium.org/p/chromium/issues/detail?id=725224

This will hopefully be fixed in a better way once GN supports pools of size > 1:  bug 635308 
Project Member

Comment 2 by bugdroid1@chromium.org, Aug 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/buildtools/+/ceb050498e43dd0a1c8489022bf21fe687394366

commit ceb050498e43dd0a1c8489022bf21fe687394366
Author: John Budorick <jbudorick@chromium.org>
Date: Mon Aug 14 19:40:02 2017

Roll gn c5323f29dd..b1573039b7 (r482038:r486916) (RELAND)

  a88945a80077 [iOS] Refactoring XcodeWriter::CreateProductsProject.
  43929085bfb1 Reland "memory-infra: Move TracingObserver to service/"
  148fef685eba [iOS] Add xcode_test_application_name property to create_bundle target.
  c94fbe298c74 [iOS] Add extra_attributes property to create_bundle target of GN.
  a735e99b56ec Add support for building chromium on mips64el using GN.
  7e3d0c035118 Revert "memory-infra: Move TracingObserver to service/"
  15617f0ba9ba memory-infra: Move TracingObserver to service/
  6eb496ce333c [iOS] Refactoring XcodeWriter::CreateProductsProject.
  1ad4642b4db1 [iOS XCUITest] Generate XCUITest target for Xcode project.
  86c29e88b6bc Update GN keywords for emacs syntax highlighting
  f6016b060cb2 Remove ScopedVector from tools/gn/.
  07fdd86df083 Add new owners for tools/gn/misc.
  ee96d561c0b6 Replace base::AtomicRefCount functions with member functions.
  216b1a3e072f Use a correct method to define pool builder record
  56398249f62d Remove synthetic delay framework
  4a581dfb4b77 tools/gn: require a newer version of ninja
  44fd682dac10 Implement tracking of BUILD.gn files used to define target, toolchain or pool.
  49be032f4d32 Add not_needed function
  43ee2b1163bd Support explicit pools in actions
  4ea964bbff81 Allow overriding the builtin functions with a template
  3c22f577cbbf tools/gn: Write correct CharSet to VS project files
  188307cee040 tools/gn: write out the required version of ninja
  ce88977522c4 Fix gn typo
  ff8516afe227 Fix GN bootstrap

Reland of:
  https://chromium.googlesource.com/chromium/buildtools/+/afba46cd46efe9456eeb61b1902f35189d374419
  https://chromium.googlesource.com/chromium/buildtools/+/27f253f9a92f1f7d2ea72c05419b50506b016221

BUG= 735361 

Change-Id: Ib38bc4d80469ea4970258a3d53cb0e1227e01348

[modify] https://crrev.com/ceb050498e43dd0a1c8489022bf21fe687394366/linux64/gn.sha1
[modify] https://crrev.com/ceb050498e43dd0a1c8489022bf21fe687394366/mac/gn.sha1
[modify] https://crrev.com/ceb050498e43dd0a1c8489022bf21fe687394366/win/gn.exe.sha1

Project Member

Comment 3 by bugdroid1@chromium.org, Aug 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4d6856691add980c4f4b818ef9a5b23b6e685991

commit 4d6856691add980c4f4b818ef9a5b23b6e685991
Author: John Budorick <jbudorick@chromium.org>
Date: Mon Aug 14 22:38:52 2017

Switch to explicit pools for APK finalization.

This removes enable_concurrent_apk_finalization as a gn option.
It's no longer necessary given that apk finalization is no longer
locked to a pool size of 1.

Bug:  735361 
Change-Id: I000d9117fafd8e09e892139fde41f6194cb92724
Reviewed-on: https://chromium-review.googlesource.com/614306
Commit-Queue: John Budorick <jbudorick@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#494217}
[modify] https://crrev.com/4d6856691add980c4f4b818ef9a5b23b6e685991/DEPS
[modify] https://crrev.com/4d6856691add980c4f4b818ef9a5b23b6e685991/build/config/android/config.gni
[modify] https://crrev.com/4d6856691add980c4f4b818ef9a5b23b6e685991/build/config/android/internal_rules.gni
[modify] https://crrev.com/4d6856691add980c4f4b818ef9a5b23b6e685991/build/config/android/rules.gni

Owner: jbudorick@chromium.org
Status: Fixed (was: Untriaged)
APK finalization now shares the link pool.

Sign in to add a comment