New issue
Advanced search Search tips

Issue 782863 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner: ----
Closed: Jul 17
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocked on:
issue 813196
issue 840583
issue 840585

Blocking:
issue 745862



Sign in to add a comment

Include a Jumbo build in Commit Queue

Project Member Reported by ericwilligers@chromium.org, Nov 8 2017

Issue description

Parts of Chromium already build with with Jumbo
https://bugs.chromium.org/p/chromium/issues/detail?id=746956

For people who don't have Goma access (e.g. non Google contributors, people working offline), this gives valued build time advantages.

To "lock in" progress, we should include a Jumbo build in the commit queue.

We could start with a single platform.

 

Comment 1 by brat...@opera.com, Nov 9 2017

Blocking: 745862
Cc: dpranke@chromium.org most...@vewd.com
This is something we really want to happen and the main blocker is too many things for the infra people rather than anything else.

dpranke has bug 745862 for making jumbo official, and I don't know if he wants to make this a duplicate or not, but I'm setting a "blocker" relationship now.

I think his plan is to add a new config to CQ but making one of the existing builders use jumbo is also an option.
Status: Available (was: Untriaged)
If we start with Linux, it shouldn't be too hard to add one GCE-based bot that compiles with Jumbo. However, this will probably have to wait until after the LUCI conversion which is starting to happen any day now.

Making available, given it's low priority.
Labels: -Pri-3 Pri-2
We're currently capacity-constrained in the CQ, else I would've already done this. It's not low priority, and it's not (and shouldn't be) blocked on the LUCI conversion.
Do we currently build everything from scratch on each run?

If so, Jumbo might eventually help us with CQ capacity if we suspect we will be able to migrate a non-trivial portion of the runs to Jumbo.

No, we do incremental builds where we can.

Comment 6 by brat...@opera.com, Jan 9 2018

Do we have any knowledge about how jumbo affects compilation times for the standard cq build?

Or maybe it actually does not matter since 95% of the time is spent running tests.
No, we don't know yet. Depending on the builder, compilation time can certainly be a big part of the total. 
Cc: jbudorick@chromium.org
Labels: -Pri-2 Pri-1
Owner: martiniss@chromium.org
Status: Assigned (was: Available)
Raising priority. martiniss, are you ok with handling this?
I can handle this.

Compile time is semi significant, depending on the builder. So if jumbo builds make things faster, that could be useful.

Although I'm a bit wary of switching to it, if most devs don't do jumbo builds. I don't know if that's the case or not though.
Switching elsewhere is out of scope for this bug; we just want to spin up a new CQ bot and have it use jumbo builds. We can have the switch discussion at a later date.

Comment 11 by most...@vewd.com, Mar 29 2018

> Although I'm a bit wary of switching to it, if most devs don't do jumbo builds. I don't know if that's the case or not though.

Most Google devs probably use GOMA because it's faster, but Jumbo makes build times bearable for external contributors.  Having a Jumbo builder in the CQ would reduce code churn (fewer jumbo fixups required), which would benefit both Googlers and external developers.

Comment 12 by most...@vewd.com, Mar 29 2018

(Can we add a bot, rather than switching an existing bot from non-jumbo to jumbo?)
I was going to add a linux bot, running on LUCI, which does a jumbo build.
Yup, that's the thing to do :).
To be clear, we only care about the compile, right? Do we need to run tests with the jumbo build as well?
Also, should it be release or not? Any preference of other gn args to set?
There are existing mac, linux, win bots on chromium.fyi; https://ci.chromium.org/buildbot/chromium.fyi/Jumbo%20Linux%20x64/ and others.

Should we just promote these to the real waterfalls and make sheriffs monitor them?

Comment 18 by most...@vewd.com, Mar 29 2018

IMO jumbo bots should compile + run tests, since it's theoretically possible that jumbo builds can change runtime behaviour since it alters symbol lookups (I'm not sure if we have encountered this in practice so far).
I think we don't need to run tests at this time, and I'd do a release build w/ the same flags as linux_chromium_rel_ng (and build `all` like that bot does).

We should move the Jumbo Linux x64 builder onto chromium.linux (or the luci equivalent) as part of this.
We specifically want this config in the CQ (rather than *just* on the main waterfall) because it is likely to break often and you want to catch it up front.
Yeah, I don't know if we have capacity to run tests right now. If it's a significant problem, and people encounter it regularly in practice, then we can add it later.

Everything seems fine; the only thing i'm worried about is it being hard for sheriffs and devs to debug failures on the CQ or waterfall bot. 

I think i'm going to move the linux bot first, then mac and windows after. 

Comment 22 by most...@vewd.com, Mar 29 2018

SGTM.  Thankyou!
Project Member

Comment 23 by bugdroid1@chromium.org, Mar 30 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/813f8a4dd85680f40aab35e91a0144f5ce1da856

commit 813f8a4dd85680f40aab35e91a0144f5ce1da856
Author: Stephen Martinis <martiniss@google.com>
Date: Fri Mar 30 21:22:26 2018

Project Member

Comment 26 by bugdroid1@chromium.org, Apr 4 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/d3e21e7acce8a1fe860e22551fdb84554396a61d

commit d3e21e7acce8a1fe860e22551fdb84554396a61d
Author: Stephen Martinis <martiniss@google.com>
Date: Wed Apr 04 23:45:39 2018

Project Member

Comment 27 by bugdroid1@chromium.org, Apr 5 2018

Project Member

Comment 28 by bugdroid1@chromium.org, Apr 10 2018

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

commit 608c1785a332908b474f8892c344a4ca4d072373
Author: Stephen Martinis <martiniss@chromium.org>
Date: Tue Apr 10 18:26:59 2018

linux64-jumbo-rel: Fix cores dimension

Existing FYI bot has 8 cores, so I got a new machine that has 8 as well.

Bug:  782863 
Change-Id: I9d92de1326e753447ea9c8b90c1bde63c217a122
Reviewed-on: https://chromium-review.googlesource.com/998177
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549598}
[modify] https://crrev.com/608c1785a332908b474f8892c344a4ca4d072373/infra/config/global/cr-buildbucket.cfg

Linux builder is finally set up.

I'll make a mac and windows CI builder. Make sure those pass, then create the CQ bots.
Project Member

Comment 30 by bugdroid1@chromium.org, Apr 12 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/e99a3a3ba9bdbfb73b64024bc4a0357333f2be46

commit e99a3a3ba9bdbfb73b64024bc4a0357333f2be46
Author: Stephen Martinis <martiniss@google.com>
Date: Thu Apr 12 00:20:01 2018

Project Member

Comment 33 by bugdroid1@chromium.org, Apr 18 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/d6b277c53aca6a6d31ceeaa33914dc4c3c874154

commit d6b277c53aca6a6d31ceeaa33914dc4c3c874154
Author: Stephen Martinis <martiniss@google.com>
Date: Wed Apr 18 00:04:03 2018

Project Member

Comment 35 by bugdroid1@chromium.org, Apr 18 2018

Project Member

Comment 36 by bugdroid1@chromium.org, Apr 18 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/309a19cc9e748784adcdddc5b2c69ff00eb0cadf

commit 309a19cc9e748784adcdddc5b2c69ff00eb0cadf
Author: Stephen Martinis <martiniss@google.com>
Date: Wed Apr 18 00:54:43 2018

Project Member

Comment 38 by bugdroid1@chromium.org, Apr 18 2018

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

commit f3150125ff552dc17f7706a76fc39e5c90c27347
Author: Stephen Martinis <martiniss@chromium.org>
Date: Wed Apr 18 05:04:29 2018

Fix mb config for jumbo builders

TBR=dpranke

Bug:  782863 
Change-Id: I58d9133edb8ef51ab5cd3c6cf9fdb8684cc007b5
Reviewed-on: https://chromium-review.googlesource.com/1016172
Reviewed-by: Stephen Martinis <martiniss@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551585}
[modify] https://crrev.com/f3150125ff552dc17f7706a76fc39e5c90c27347/tools/mb/mb_config.pyl

Project Member

Comment 39 by bugdroid1@chromium.org, Apr 19 2018

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

commit 6d7c1c050ade1132e8be83c217c7700663756113
Author: Stephen Martinis <martiniss@chromium.org>
Date: Thu Apr 19 03:10:10 2018

Add jumbo trybots

Bug:  782863 
Change-Id: I6f2627b2c6bbc287f73df6550cb22152fa645202
Reviewed-on: https://chromium-review.googlesource.com/1014650
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551931}
[modify] https://crrev.com/6d7c1c050ade1132e8be83c217c7700663756113/infra/config/global/cr-buildbucket.cfg
[modify] https://crrev.com/6d7c1c050ade1132e8be83c217c7700663756113/infra/config/global/luci-milo.cfg
[modify] https://crrev.com/6d7c1c050ade1132e8be83c217c7700663756113/tools/mb/mb_config.pyl

An update!

The trybots are live right now. I want to test them and make sure they work correctly before adding them to the CQ. I'm also worried that regular chromium sheriffs won't know how to deal with failures on these bots, but that's something I would know less about.

There's currently an issue blocking this, which has to do with how we generate a buildbucket config. I can't seem to trigger a job for the new trybots until this gets fixed. 
Blockedon: 813196
#40: I wouldn't be too concerned about sheriffs not knowing how to deal with failures on these bots. Sheriffs are rarely familiar with all of the bots for which they're responsible.

Does `git cl try -B luci.chromium.try -b linux-jumbo-rel` not work?
That does! Thanks, I tried that but maybe missed the '-B' argument.
Project Member

Comment 44 by bugdroid1@chromium.org, Apr 25 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/8e4a30938268ac72bf36b6a7e5040827fb313540

commit 8e4a30938268ac72bf36b6a7e5040827fb313540
Author: Stephen Martinis <martiniss@google.com>
Date: Wed Apr 25 00:19:12 2018

Comment 45 by brat...@opera.com, Apr 25 2018

Really appreciate all the work you do!

Is it always this much effort to add something to CQ?

I created this on LUCI, so it's not always this bad. I think there are plans to streamline it in the future and catch small errors like the ones I made. So hopefully it won't be this complicated in the future.
Project Member

Comment 47 by bugdroid1@chromium.org, Apr 26 2018

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

commit e4b207b7b177153114e77c91f71a861202f79939
Author: Stephen Martinis <martiniss@chromium.org>
Date: Thu Apr 26 03:22:44 2018

Fix mac jumbo try builder core dimension

Bug:  782863 
Change-Id: I9565b84c027f0c88dfb4ee02602a2d49c3a95016
Reviewed-on: https://chromium-review.googlesource.com/1029218
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553881}
[modify] https://crrev.com/e4b207b7b177153114e77c91f71a861202f79939/infra/config/global/cr-buildbucket.cfg

Ok, I'm going to get additional capacity to have a compile only trybot on the CQ.

I think I'll need
60 windows machines
20 linux machines
25 mac machines

I based these on the existing optional trybots on the CQ, win_chromium_compile_dbg_ng, linux_chromium_compile_dbg_ng, and mac_chromium_compile_dbg_ng

I'll ask labs for these machines.
Blockedon: 840583
Blockedon: 840585
Let's just start w/ Linux. That will likely be enough for us to get real data comparing jumbo/non-jumbo, and it may be sufficient to catch nearly all of the breakages.
Project Member

Comment 52 by bugdroid1@chromium.org, May 9 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/39e8503018afbb995ae7a2d4381ff324b4fca7b5

commit 39e8503018afbb995ae7a2d4381ff324b4fca7b5
Author: Stephen Martinis <martiniss@google.com>
Date: Wed May 09 00:57:39 2018

Project Member

Comment 53 by bugdroid1@chromium.org, May 18 2018

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

commit 51d0c88a708dbef53e0e37b949ac3666c7235016
Author: Stephen Martinis <martiniss@chromium.org>
Date: Fri May 18 00:50:53 2018

Add linux jumbo bot as CQ experiment

Bug:  782863 
Change-Id: I1159a824b4c42d1482656fdc14279339b4d7511c
Reviewed-on: https://chromium-review.googlesource.com/1065212
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559758}
[modify] https://crrev.com/51d0c88a708dbef53e0e37b949ac3666c7235016/infra/config/branch/cq.cfg

Project Member

Comment 54 by bugdroid1@chromium.org, May 21 2018

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

commit 532569b00f8a3a2da1ba8205a83c9048284fb5c3
Author: Stephen Martinis <martiniss@chromium.org>
Date: Mon May 21 23:31:02 2018

Bump linux jumbo rel exp percentage to 50%

Bug:  782863 
Change-Id: Ifa4b8dae11353a57af76c7bda97d2b0650fb0952
Reviewed-on: https://chromium-review.googlesource.com/1066707
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560403}
[modify] https://crrev.com/532569b00f8a3a2da1ba8205a83c9048284fb5c3/infra/config/branch/cq.cfg

Comment 55 by brat...@opera.com, May 22 2018

Looking good?
It's looking good so far. Sorry, got distracted with other work.

I'll set it to 100% experiment to see if it can handle CQ load.
Project Member

Comment 57 by bugdroid1@chromium.org, May 31 2018

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

commit 41b384d66490cf7cf386229610731aae27f6a414
Author: Stephen Martinis <martiniss@chromium.org>
Date: Thu May 31 00:38:29 2018

Set linux jumbo bot to 100% experiment

If it overloads the bot, it's not a real issue. Want to see if it can
handle full CQ load

Bug:  782863 
Change-Id: I776efe034ce66bb12b0ea846c706d4e8e08b7893
Reviewed-on: https://chromium-review.googlesource.com/1080270
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563089}
[modify] https://crrev.com/41b384d66490cf7cf386229610731aae27f6a414/infra/config/branch/cq.cfg

Ok, this bot is looking good. I want to promote it to CQ.

Is there any sort of communication I should do to sheriffs about this? Or just turn it on?
You no longer need to email chrome eng review. I'm the approver for adding and removing builders now, and you are free to add this whenever.
Project Member

Comment 61 by bugdroid1@chromium.org, Jun 6 2018

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

commit c5e58f70d145a56376881fa216a229aaeb1aa6be
Author: Stephen Martinis <martiniss@chromium.org>
Date: Wed Jun 06 22:10:46 2018

Add linux-jumbo-rel builder to main CQ

Bug:  782863 
Change-Id: I6f4fb63fe1ed9c56a4f5238f1b0ca37c1c3a0715
Reviewed-on: https://chromium-review.googlesource.com/1087762
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565056}
[modify] https://crrev.com/c5e58f70d145a56376881fa216a229aaeb1aa6be/infra/config/branch/cq.cfg

The bot has been on CQ for about a week. People who rely on jumbo builds, have you noticed any difference in it being less broken for you at all?

Comment 63 by most...@vewd.com, Jun 12 2018

Cc: brat...@opera.com
The linux FYI jumbo bot has been broken twice in the past week, I believe due to the different values used for jumbo_file_merge_limit.  Smaller values are proportionally less likely to catch jumbo breakage.
I think I'm getting fewer build failure notifications. 

This should be easy enough to check by just looking at the completed_builds table in BQ.
I'll change the file limit to be the same as FYI.

Comment 67 by brat...@opera.com, Jun 13 2018

It's too early to say how much work it has saved since breakage arrives so randomly, but there hasn't been any "everything is broken for everyone" at all.

As Mostyn said, the times (once or twice?) that I know of, it's been because the CQ bot runs with a smaller jumbo chunk size (8) than non-goma users (who have 50). I mentioned it to dpranke who said he wanted to gather some numbers for that particular configuration so you may want to check with him before changing him.

Having the larger non-goma jumbo size would give much more extensive compilation testing though so it's what I would prefer. Or even running with chunk_size=infinity to capture any potential clashes within a target.

Still, the largest improvement was going from no CQ testing to any CQ testing! We're now much more confident adding further jumbo support.
Hi, I've been examining the interaction between jumbo chunking and compilation caching. In chromium/src.git over the past year, 1 in 8 changes to .cc files are adding or removing files. With the current assignment of sources to chunks, adding a single file invalidates half of the chunks in a jumbo module, on average. This is because the boundaries of every chunk after it shift by one, relative to the source list content. I have a proposal, with code, for improving the assignment strategy to mitigate this. Where is the best avenue for such a proposal?
Cc: brucedaw...@chromium.org
@david.barr@samsung.com - I suggest you post a CL and cc bratell, mostynb, brucedawson, and myself (from the cc list on this bug) and we can discuss there.
Project Member

Comment 70 by bugdroid1@chromium.org, Jun 27 2018

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

commit 2c7a71c3fd6cc3ee5eda41467ea6d5b8ee337386
Author: David Michael Barr <david.barr@samsung.com>
Date: Wed Jun 27 01:49:01 2018

jumbo: stable assignment of inputs to chunks

Adding or removing a file from a jumbo source set causes on average
half of the chunks to have their inputs reallocated.
Derive chunk boundaries from a combination of list position and path
content. This is so that when a file is added or removed, only the
boundaries with adjacent chunks typically move.
For a balance between maximum chunk size and stability of partitions:
* Partition uniformly into the required number of chunks.
* Pick a "center" from each chunk by minimum hash value.
* Pick the boundaries between centers by maximum hash value.

Bug:  782863 
Change-Id: Ie71d82b132e8145b4ed3d1141f85886a12149d5a
Reviewed-on: https://chromium-review.googlesource.com/1102218
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Daniel Bratell <bratell@opera.com>
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#570623}
[modify] https://crrev.com/2c7a71c3fd6cc3ee5eda41467ea6d5b8ee337386/build/config/jumbo.gni
[modify] https://crrev.com/2c7a71c3fd6cc3ee5eda41467ea6d5b8ee337386/build/config/merge_for_jumbo.py
[modify] https://crrev.com/2c7a71c3fd6cc3ee5eda41467ea6d5b8ee337386/docs/jumbo.md

Project Member

Comment 71 by bugdroid1@chromium.org, Jun 27 2018

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

commit 2405b447260539e04b184d4c6ef7a75a13b1d076
Author: Daniel Bratell <bratell@opera.com>
Date: Wed Jun 27 08:51:16 2018

Revert "jumbo: stable assignment of inputs to chunks"

This reverts commit 2c7a71c3fd6cc3ee5eda41467ea6d5b8ee337386.

Reason for revert: Linux with chunk size 50 broke in v8 which we
can't quickly fix, and Windows (chunk size 8) has a DWORD logging
error that looks non-trivial. We need to fix those before landing
this.

Original change's description:
> jumbo: stable assignment of inputs to chunks
> 
> Adding or removing a file from a jumbo source set causes on average
> half of the chunks to have their inputs reallocated.
> Derive chunk boundaries from a combination of list position and path
> content. This is so that when a file is added or removed, only the
> boundaries with adjacent chunks typically move.
> For a balance between maximum chunk size and stability of partitions:
> * Partition uniformly into the required number of chunks.
> * Pick a "center" from each chunk by minimum hash value.
> * Pick the boundaries between centers by maximum hash value.
> 
> Bug:  782863 
> Change-Id: Ie71d82b132e8145b4ed3d1141f85886a12149d5a
> Reviewed-on: https://chromium-review.googlesource.com/1102218
> Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
> Reviewed-by: Dirk Pranke <dpranke@chromium.org>
> Reviewed-by: Daniel Bratell <bratell@opera.com>
> Commit-Queue: Dirk Pranke <dpranke@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#570623}

TBR=dpranke@chromium.org,bratell@opera.com,brucedawson@chromium.org,david.barr@samsung.com

Change-Id: I8c81aca34ab2876aebea6b54e847cb24be3aa27f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  782863 
Reviewed-on: https://chromium-review.googlesource.com/1116658
Reviewed-by: Daniel Bratell <bratell@opera.com>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Commit-Position: refs/heads/master@{#570701}
[modify] https://crrev.com/2405b447260539e04b184d4c6ef7a75a13b1d076/build/config/jumbo.gni
[modify] https://crrev.com/2405b447260539e04b184d4c6ef7a75a13b1d076/build/config/merge_for_jumbo.py
[modify] https://crrev.com/2405b447260539e04b184d4c6ef7a75a13b1d076/docs/jumbo.md

Project Member

Comment 72 by bugdroid1@chromium.org, Jun 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/92cb6f9da74600e7cd2b8a21c7fbb07ac7fda409

commit 92cb6f9da74600e7cd2b8a21c7fbb07ac7fda409
Author: Mostyn Bramley-Moore <mostynb@vewd.com>
Date: Wed Jun 27 19:47:48 2018

[jumbo] remove some using statements in cctest

This is required for jumbo builds to work before the stable jumbo chunk
algorithm[*] can reland.

[*] https://chromium-review.googlesource.com/c/chromium/src/+/1102218

Bug: chromium:856964,  chromium:782863 
Change-Id: Ibbe0994980eb554acd4e1557e733d07526a90608
Reviewed-on: https://chromium-review.googlesource.com/1117059
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Mostyn Bramley-Moore <mostynb@vewd.com>
Cr-Commit-Position: refs/heads/master@{#54070}
[modify] https://crrev.com/92cb6f9da74600e7cd2b8a21c7fbb07ac7fda409/test/cctest/test-deoptimization.cc
[modify] https://crrev.com/92cb6f9da74600e7cd2b8a21c7fbb07ac7fda409/test/cctest/test-func-name-inference.cc

Project Member

Comment 73 by bugdroid1@chromium.org, Jul 11

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

commit 73ea8f55b7cf8a6add17696c344688a98260d84c
Author: David Michael Barr <david.barr@samsung.com>
Date: Wed Jul 11 17:48:37 2018

Reland "jumbo: stable assignment of inputs to chunks"

This is a reland of 2c7a71c3fd6cc3ee5eda41467ea6d5b8ee337386

Original change's description:
> jumbo: stable assignment of inputs to chunks
>
> Adding or removing a file from a jumbo source set causes on average
> half of the chunks to have their inputs reallocated.
> Derive chunk boundaries from a combination of list position and path
> content. This is so that when a file is added or removed, only the
> boundaries with adjacent chunks typically move.
> For a balance between maximum chunk size and stability of partitions:
> * Partition uniformly into the required number of chunks.
> * Pick a "center" from each chunk by minimum hash value.
> * Pick the boundaries between centers by maximum hash value.
>
> Bug:  782863 
> Change-Id: Ie71d82b132e8145b4ed3d1141f85886a12149d5a
> Reviewed-on: https://chromium-review.googlesource.com/1102218
> Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
> Reviewed-by: Dirk Pranke <dpranke@chromium.org>
> Reviewed-by: Daniel Bratell <bratell@opera.com>
> Commit-Queue: Dirk Pranke <dpranke@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#570623}

Bug:  860646 
Change-Id: I55b326beb716789896c39d58be8e793c97f7097d
Reviewed-on: https://chromium-review.googlesource.com/1121976
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#574233}
[modify] https://crrev.com/73ea8f55b7cf8a6add17696c344688a98260d84c/build/config/jumbo.gni
[modify] https://crrev.com/73ea8f55b7cf8a6add17696c344688a98260d84c/build/config/merge_for_jumbo.py
[modify] https://crrev.com/73ea8f55b7cf8a6add17696c344688a98260d84c/docs/jumbo.md

Owner: ----
Status: Fixed (was: Assigned)
There's a jumbo builder in the CQ now, so I think this bug can be marked as complete? 

If we want more jumbo builders on the CQ, I think filing a separate bug would be a good idea.

If anyone thinks this should be re-opened, feel free to and I'll take a look.
And I can confirm that it has drastically reduced the amount of fire fighting needed. It's been fewer commits (summer?) which is also a factor but it's so much better. Thank you!
Yup, this is done, thanks.

Sign in to add a comment