Please sign in to comment.
Lower Bazel's QoS service class to Utility on macOS.
Even though Bazel is an interactive tool, the operations it performs are not time-critical and should not starve system services (started by launchd, typically under the Utility class). To mitigate this problem, spawn the Bazel server under the Utility priority as well. In internal tests at Google, we have seen that this vastly improves build performance and overall system responsiveness when Bazel might compete with system services such as openvpn or FUSE daemons. Note that this is not a complete fix though. We are still letting the Bazel client run under the default class and the client still uses execv in a couple of places. First, in batch mode, and, second, in "bazel run". A possible fix for this would involve making the Bazel client respawn itself under the right priority at the very beginning but this has its own difficulties that should be looked into separately. Fixes #7446 for the most part. RELNOTES: None. PiperOrigin-RevId: 235054167
- Loading branch information...
Showing with 50 additions and 1 deletion.