On the master branch you can now build HTCondor using Ninja (https://martine.github.io/ninja/ ) in addition to Make. If you stick with Make, nothing should change.
My experience switching to Ninja is that it saves about 20 seconds on a build. On my computer that takes a no-op build from 20 seconds to less than 1, and a single file build from 45 seconds to 25.
To use Ninja, just add "-GNinja" when you invoke cmake. For example, I usually create out of workspace builds with:
../CONDOR_SRC/configure_uw ../CONDOR_SRC
and now I do
../CONDOR_SRC/configure_uw -GNinja ../CONDOR_SRC
Ninja support was already present courtesy of CMake, but our glibc external would fail. I've fixed that. The fix is... hacky; if you have N cores the glibc build will do N parallel steps while Ninja will also do N parallel steps. Hopefully one isn't building glibc so often that this matters in practice. Builds using GNU Make will continue to use the Make jobserver and do the Right Thing.
--
Alan De Smet Center for High Throughput Computing
adesmet@xxxxxxxxxxx http://chtc.cs.wisc.edu
|