cmd/coordinator, dashboard: trim benchmark builders for initial launch

- Enable benchmarks on only linux-amd64, with 3 additional test
  helpers, to ensure we fit in the 5m trybot budget
  (disabling freebsd-amd64-gce101, linux-386, linux-arm,
  windows-amd64-2008, and windows-386-2008).
- Run benchmarks with GOMAXPROCS=2 to reduce variation in
  benchmarks. See
  https://perf.golang.org/search?q=upload%3A20170512.4+cores%3Aall+parallel%3A4+%7C+gomaxprocs%3A2+vs+gomaxprocs%3A16+vs+gomaxprocs%3A32

Updates golang/go#19871

Change-Id: I8a28127be86c0c8691605cae4c9d603e3c8122cc
Reviewed-on: https://go-review.googlesource.com/43532
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Avelino <t@avelino.xxx>
diff --git a/cmd/coordinator/benchmarks.go b/cmd/coordinator/benchmarks.go
index 89388a2..31975ff 100644
--- a/cmd/coordinator/benchmarks.go
+++ b/cmd/coordinator/benchmarks.go
@@ -149,6 +149,16 @@
 		Path:   []string{"$WORKDIR/" + goroot + "/bin", "$PATH"},
 		ExtraEnv: []string{
 			"GOROOT=" + st.conf.FilePathJoin(workDir, goroot),
+			// Some builders run in virtualization
+			// environments (GCE, GKE, etc.). These
+			// environments have CPU antagonists - by
+			// limiting GOMAXPROCS to 2 we can reduce the
+			// variability of benchmarks by leaving free
+			// cores available for antagonists. We don't
+			// want GOMAXPROCS=1 because that invokes
+			// special runtime behavior. Test data is at
+			// https://perf.golang.org/search?q=upload%3A20170512.4+cores%3Aall+parallel%3A4+%7C+gomaxprocs%3A2+vs+gomaxprocs%3A16+vs+gomaxprocs%3A32
+			"GOMAXPROCS=2",
 		},
 	})
 }
diff --git a/dashboard/builders.go b/dashboard/builders.go
index 4d9cb9b..8ccf299 100644
--- a/dashboard/builders.go
+++ b/dashboard/builders.go
@@ -750,7 +750,6 @@
 		TryBot:            true,
 		numTestHelpers:    2,
 		numTryTestHelpers: 4,
-		RunBench:          true,
 	})
 	addBuilder(BuildConfig{
 		Name:     "freebsd-amd64-110",
@@ -777,7 +776,6 @@
 		env:               []string{"GOARCH=386", "GOHOSTARCH=386"},
 		numTestHelpers:    1,
 		numTryTestHelpers: 3,
-		RunBench:          true,
 	})
 	addBuilder(BuildConfig{
 		Name:     "linux-386-387",
@@ -789,7 +787,7 @@
 		Name:           "linux-amd64",
 		HostType:       "host-linux-kubestd",
 		TryBot:         true,
-		numTestHelpers: 3,
+		numTestHelpers: 6, // As of 2017/05/16, 3 helpers are needed for tests and 3 more for benchmarks to complete in 5m.
 		RunBench:       true,
 	})
 	addBuilder(BuildConfig{
@@ -900,7 +898,6 @@
 		FlakyNet:          true,
 		numTestHelpers:    2,
 		numTryTestHelpers: 7,
-		RunBench:          true,
 	})
 	addBuilder(BuildConfig{
 		Name:          "linux-arm-nativemake",
@@ -957,7 +954,6 @@
 		HostType:          "host-windows-amd64-2008",
 		env:               []string{"GOARCH=amd64", "GOHOSTARCH=amd64"},
 		TryBot:            false, // Disabled until new Windows builders reliably come up quickly
-		RunBench:          true,
 		numTryTestHelpers: 5,
 	})
 	addBuilder(BuildConfig{
@@ -965,7 +961,6 @@
 		HostType:          "host-windows-amd64-2008",
 		env:               []string{"GOARCH=386", "GOHOSTARCH=386"},
 		TryBot:            false, // Disabled until new Windows builders reliably come up quickly
-		RunBench:          true,
 		numTryTestHelpers: 5,
 	})
 	addBuilder(BuildConfig{