Google Engineers Exploring Distributed ThinLTO Builds Of The Linux Kernel
Engineers from Google are proposing that distributed ThinLTO build support be introduced for LLVM/Clang when compiling the Linux kernel. The distributed ThinLTO mode for link-time optimizations can lead to quicker build times than the current in-process ThinLTO mode while also being more convenient and work with kernel live-patching solutions.
Rong Xu and other engineers from Google are looking at distributed ThinLTO support for the Linux kernel with LLVM/Clang. As for the differences in the ThinLTO behavior for carrying out link-time optimizations:
Besides jiving more nicely with kernel live-patching and being more convenient, the distributed ThinLTO compilation of the Linux kernel with LLVM Clang 20 is much faster than using the existing in-process ThinLTO configuration:
Those curious about this proposal for distributed ThinLTO support of the Linux kernel can find it via the LLVM Discourse.
Rong Xu and other engineers from Google are looking at distributed ThinLTO support for the Linux kernel with LLVM/Clang. As for the differences in the ThinLTO behavior for carrying out link-time optimizations:
In-process: Thin-link and ThinLTO BE compilation are invoked through the linker. The BE compilation is multi-threaded.
Distributed: Thin-link is through the linker. It generates ThinLTO index files. ThinLTO BE compilation is separated from linker and the build system / makefile invokes it explicitly with ThinLTO index files and pre-link IR objects.
Besides jiving more nicely with kernel live-patching and being more convenient, the distributed ThinLTO compilation of the Linux kernel with LLVM Clang 20 is much faster than using the existing in-process ThinLTO configuration:
Those curious about this proposal for distributed ThinLTO support of the Linux kernel can find it via the LLVM Discourse.
