That could help. But in this case we’re building on machines with quite a lot of cores, and the problem is not enough parallelism to keep them all busy rather than filling all the cores with the wrong jobs first.
We’re also using Buck rather than Cargo, which generally uses more aggressive parallelism when its available. (Though I don’t know whether it prioritizes targets on critical path chains.)