diff options
author | Ben Wagner <benjaminwagner@google.com> | 2018-05-09 15:37:34 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-05-10 15:45:45 +0000 |
commit | 27d5a3661ba76852c0c8b7935f47e88d7edd1cda (patch) | |
tree | 350de4b62186ed8de9dd8f9269486dedc33911de /infra/bots/gen_tasks.go | |
parent | cab25492864fe1e581e442d784f18aa72a13e6f5 (diff) |
Switch machine-type for Coverage tasks.
Coverage doesn't seem to deal well with multiple threads. Using 2-core
VMs is faster than using 64-core VMs.
On the other hand, the Coverage Upload task performs much better on a
64-core VM.
Bug: skia:7415
No-Try: true
Change-Id: Ieb58fc47970dd66fa64cf6a8c9de1f9236e2f3a0
Reviewed-on: https://skia-review.googlesource.com/127053
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Diffstat (limited to 'infra/bots/gen_tasks.go')
-rw-r--r-- | infra/bots/gen_tasks.go | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/infra/bots/gen_tasks.go b/infra/bots/gen_tasks.go index a937323681..64c7209894 100644 --- a/infra/bots/gen_tasks.go +++ b/infra/bots/gen_tasks.go @@ -489,6 +489,10 @@ func defaultSwarmDimensions(parts map[string]string) []string { if !ok { glog.Fatalf("Entry %q not found in GCE machine type mapping.", parts["role"]) } + // Coverage gets slower with more cores. + if strings.Contains(parts["extra_config"], "Coverage") { + machineType = MACHINE_TYPE_SMALL + } d["machine_type"] = machineType } } else { @@ -1035,7 +1039,8 @@ func coverage(b *specs.TasksCfgBuilder, name string, parts map[string]string, co extraProps := map[string]string{ "gs_bucket": CONFIG.GsBucketCoverage, } - uploadTask := kitchenTask(uploadName, "upload_coverage_results", "swarm_recipe.isolate", SERVICE_ACCOUNT_UPLOAD_COVERAGE, linuxGceDimensions(MACHINE_TYPE_SMALL), extraProps, OUTPUT_NONE) + // Use MACHINE_TYPE_LARGE because this does a bunch of computation before upload. + uploadTask := kitchenTask(uploadName, "upload_coverage_results", "swarm_recipe.isolate", SERVICE_ACCOUNT_UPLOAD_COVERAGE, linuxGceDimensions(MACHINE_TYPE_LARGE), extraProps, OUTPUT_NONE) usesGit(uploadTask, uploadName) uploadTask.CipdPackages = append(uploadTask.CipdPackages, CIPD_PKGS_GSUTIL...) // We need clang_linux to get access to the llvm-profdata and llvm-cov binaries |