I benchmarked a few different versions of sphinx-build for 'make -j128 htmldocs' (with 128 cores) and got these results:
2.4.4 -- 7m37s
3.0 -- 94m43s
4.0 -- 70m49s
5.0 -- error
6.0 -- 97m12s
7.2.6 -- 17m18s
This machine can compile a full distro kernel in like 2 minutes.
I actually really like Sphinx but this is Not Good.
@vegard yes, something is horribly wrong with Sphinx's parallelism. :(
@jani @corbet Hm, I was going to suggest 'make htmldocs V=1' but that doesn't actually seem to do the right thing for some reason -- I was expecting it to print out the exact sphinx-build invocation. Although I do see it printing "Running Sphinx v4.3.2" so I know that getting to sphinx-build is less than 2-3 seconds.
@jani Do you want to claim this, or can I submit a patch?
@jani @corbet It also leaks absolute paths into the build, see e.g.: https://docs.kernel.org/admin-guide/abi-obsolete.html#file-var-lib-git-docbuild-linux-obsolete-sysfs-bus-usb or https://static.lwn.net/kerneldoc/admin-guide/abi-obsolete.html#file-stuff-k-git-kernel-obsolete-o2cb