If you're doing single-core builds, you can get impressive speedups from unity builds.
This is because C++ compilers spends a lot of time redundantly parsing the same headers included in different .cpp files.
Normally, you get enough gains from compiling each .cpp file in parallel that it outweighs the parsing, but if you're artificially limited in parallelism then unity builds can pay for themselves very quickly as they did in the article.
If you're doing single-core builds, you can get impressive speedups from unity builds.
This is because C++ compilers spends a lot of time redundantly parsing the same headers included in different .cpp files.
Normally, you get enough gains from compiling each .cpp file in parallel that it outweighs the parsing, but if you're artificially limited in parallelism then unity builds can pay for themselves very quickly as they did in the article.
By reading your initial script,I see that there was absolutely no parallelisation in the initial build.
Was it a choice because you wanted to compare only single core performances?