26 comments
jmmv · 7 days ago
A number of years ago, I was working on the port of Bazel to macOS. One of the issues we faced internally at Google was that some of our users reported that Bazel builds randomly killed their Internet connection and that they performed poorly.

There was a lot of FUD around the topic, with some engineers blanket-claiming that "well, macOS is bad at threads, so there's that". I didn't buy that explanation because I had seen macOS under serious load in other occasions and none of this nonsense happened in them.

And then, almost by chance, I stumbled upon this QoS system, did a few spot-checks, and found that the VPN daemon was misconfigured to run at a low class. Consequently, Bazel starved the VPN for those users and made everything misbehave. Adjusting that one parameter fixed everything.

If you are curious, I ended up writing some more on this here: https://jmmv.dev/2019/03/macos-threads-qos-and-bazel.html

Show replies

ComputerGuru · 8 days ago
I thought this was a life hack recommendations article but it’s about Quality of Service.

@dang or @op can we get QoS added to the title?

Show replies

eunoia · 8 days ago
· 7 days ago
[deleted]
lupire · 8 days ago
Why would a dev use this? I want my app to perform as high as possible, regardless of other apps (published by other companies) on the system.

This should be a user-controlled feature, with tasks identified and labeled by the OS.

Show replies