Skip to content

Commit

Permalink
dashboard: add linux-amd64-perf host and builder
Browse files Browse the repository at this point in the history
Add a new builder to run the x/benchmarks performance tests on
linux-amd64.

For now, this runs on a GCE C2 instance type, as these instances have
well-defined, consistent CPUs and other server architecture components.

In basic noise testing, even standard VMs of this type appear to be
fairly low noise. As we gain experience with actual monitoring, we may
change this to a sole-tenant VM type or even a dedicated machine if
necessary.

For golang/go#49207

Change-Id: I17eaeeb5349af925249940bebd5b860a2579e6df
Reviewed-on: https://go-review.googlesource.com/c/build/+/354311
Trust: Michael Pratt <[email protected]>
Run-TryBot: Michael Pratt <[email protected]>
TryBot-Result: Go Bot <[email protected]>
Reviewed-by: Alexander Rakoczy <[email protected]>
  • Loading branch information
prattmic committed Nov 5, 2021
1 parent 0f6a98d commit 19ea0d2
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion dashboard/builders.go
Original file line number Diff line number Diff line change
Expand Up @@ -619,6 +619,14 @@ var Hosts = map[string]*HostConfig{
ExpectNum: 2,
env: []string{"GOROOT_BOOTSTRAP=/usr/lib/go"},
},
"host-linux-amd64-perf": &HostConfig{
Notes: "Cascade Lake performance testing machines",
machineType: "c2-standard-8", // C2 has precisely defined, consistent server architecture.
ContainerImage: "linux-x86-bullseye:latest",
buildletURLTmpl: "https://storage.googleapis.com/$BUCKET/buildlet.linux-amd64",
env: []string{"GOROOT_BOOTSTRAP=/go1.4"},
SSHUsername: "root",
},
}

// CrossCompileConfig describes how to cross-compile a build on a
Expand Down Expand Up @@ -692,7 +700,7 @@ type HostConfig struct {
ContainerImage string // e.g. "linux-buildlet-std:latest" (suffix after "gcr.io/<PROJ>/")
IsReverse bool // if true, only use the reverse buildlet pool

// GCE options, if VMImage != ""
// GCE options, if VMImage != "" || ContainerImage != ""
machineType string // optional GCE instance type
RegularDisk bool // if true, use spinning disk instead of SSD
MinCPUPlatform string // optional; https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform
Expand Down Expand Up @@ -2519,6 +2527,15 @@ func init() {
FlakyNet: true,
SkipSnapshot: true, // The builder has a slow uplink bandwidth.
})
addBuilder(BuildConfig{
Name: "linux-amd64-perf",
HostType: "host-linux-amd64-perf",
Notes: "Performance testing for linux-amd64",
buildsRepo: func(repo, branch, goBranch string) bool {
return repo == "benchmarks"
},
RunBench: true,
})
}

// addBuilder adds c to the Builders map after doing some sanity
Expand Down

0 comments on commit 19ea0d2

Please sign in to comment.