Another data point on this: at facebook we recently switched the production infer binaries over to flambda -O3 (
https://github.com/facebook/infer/commit/f8d7c810452ce3a4d2e7027e38f5d00426a2a917). For local builds during development, we usually build without flambda, or actually even just bytecode. But for infer, flambda -O3 is worth 15-20% elapsed (~25% cpu) time, so it does not take an abnormal analysis run before that pays off the ~5x compile time deficit. (Given that we have to distribute a custom clang with the analyzer, build artifact size is basically in the noise.)