New issue
Advanced search Search tips

Issue 807505 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug

Blocking:
issue 803693



Sign in to add a comment

Reduce betty-pre-cq duration

Project Member Reported by nxia@chromium.org, Jan 31 2018

Issue description

betty-pre-cq is one of the default pre-cq builds, and it usually takes long time to finish because of the VMTestStage (45 mins ~ 50 mins). Reducing the build run time of betty-pre-cq would help to reduce the CL Pre-CQ-Handling time.

Is it possible to split the "smoke" suite into two sub-suites, run sub-suite-A in betty-pre-cq and move sub-suite-B to another pre-cq which can support vm-test? Do we have a pre-cq in current default-pre-cq set can cover the vmtest ?
 

Comment 1 by ihf@chromium.org, Jan 31 2018

Cc: pwang@chromium.org
PoHsien has been investigating similar issues. I think smoke could probably be split into 4 pieces. That said stability is unclear at that stage. Might be worth setting up an informational builder which tries this for a while first and then compare against betty.
Could we use a single PreCQ builder, but start 4 VM instances and shard the tests across them?

IE: Run all the tests on the same builder, but finish faster through the power of many CPUs?

Comment 3 by pwang@chromium.org, Feb 1 2018

I have done experiment on VM for suite:arc-cts as they run much longer than normal smoke tests. The experiment run reduced the total amount of run time from 17hr to 10hr if run with 2VM. Would expect more if we shard it more.

Comment 4 by ihf@chromium.org, Feb 1 2018

Re 3: yes, a builder could easily run 4 VM instances. It might run even 8 or 16, but we could start with 4.

Comment 5 by nxia@chromium.org, Feb 1 2018

Blocking: 803693

Comment 6 by pwang@chromium.org, Feb 2 2018

Owner: pwang@chromium.org
I'll take over it to see if we can make smoke suite run in parallel.

Comment 7 by pwang@chromium.org, Feb 16 2018

Manually split the suite and test on trybots/locally. 
Tested on cros-standard181-c2 with four suite in parallel takes ~40 mins. Running it as a whole takes ~50 minutes.

And observed that the Android bring up from 4 VMs got extremely slow which takes 5 minutes.


Comment 8 by ihf@chromium.org, Feb 16 2018

So, you are saying because of increased Android startup times we don't see much runtime improvement right now?

Comment 9 by nxia@chromium.org, Feb 16 2018

Is it bounded by the performance of the GCE? If so, we can upgrade the GCE to beefy for all vmtest pre-cqs if needed.

Comment 10 by ihf@chromium.org, Feb 16 2018

No, there is likely a bug impacting establishing communication to multiple Android instances using adb. Could be a networking configuration issue.

Comment 11 by pwang@chromium.org, Feb 16 2018

Suite1 14tests: >50minutes with 10 minutes waiting for android
Suite2 14tests:  25minutes with  5 minutes waiting for android
Suite3 14tests:  30minutes with 10 minutes waiting for android
Suite4 14tests:  31minutes with  5 minutes waiting for android

Comment 12 by pwang@chromium.org, Feb 16 2018

So, with good splitting mechanism, we could gain and make VMTestStage finish in 30 minutes.

IIUC, each VM are already in different virtual network. https://chromium-review.googlesource.com/c/chromiumos/chromite/+/780726 but may have other problem in networking.

Comment 13 by ihf@chromium.org, Feb 16 2018

Wow, this is very disappointing. Lets sit down together and see what is happening with the GCE instance.
Components: -Infra>Client>ChromeOS Infra>Client>ChromeOS>Build
Components: -Infra>Client>ChromeOS>Build Infra>Client>ChromeOS>CI
Status: Assigned (was: Untriaged)

Sign in to add a comment