diff --git a/ui/build/rbe.go b/ui/build/rbe.go index d74f26210..8f9a69991 100644 --- a/ui/build/rbe.go +++ b/ui/build/rbe.go @@ -19,6 +19,7 @@ import ( "math/rand" "os" "path/filepath" + "runtime" "syscall" "time" @@ -87,6 +88,13 @@ func getRBEVars(ctx Context, config Config) map[string]string { } vars["RBE_server_address"] = fmt.Sprintf("unix://%v", name) } + + rf := 1.0 + if config.Parallel() < runtime.NumCPU() { + rf = float64(config.Parallel()) / float64(runtime.NumCPU()) + } + vars["RBE_local_resource_fraction"] = fmt.Sprintf("%.2f", rf) + k, v := config.rbeAuth() vars[k] = v return vars