The SCons ninja generator uses the SCons concurrency setting to configure the local_pool in the generated build.ninja, which constrains the number of local jobs. Unfortunately, the detection in SCons happens too late, and the local_pool always ends up having depth 1. This greatly slows down the early part of the build where we are doing things like generating files from IDL, which uses the local concurrency.
We can also be a little smarter about preventing misconfiguration by the user.