Making for an even more exciting Black Friday is the Kbuild pull request submitted today for the near-over Linux 6.13 merge window… And it includes Clang Auto Feedback Directed Optimization (AutoFDO) support for kernel builds as well as Clang’s Propeller.
The Kbuild enhancements for Linux 6.13 include adding generic support for built-in boot DTB files, Kconfig updates, LZ4 use rather than LZ4C, and most excitingly is support for Clang AutoFDO compiler optimized builds as well as Clang Propeller Profile Guided Optimizations.
There have been patches from Google for enabling AutoFDO and Propeller support when compiling the Linux kernel with LLVM Clang. These compiler optimizations rely on profiles/feedback from running workloads to produce optimal binaries, but the benefits can be very meaningful for those going through the process of profiling their systems in order to produce a very optimized kernel build.
Google’s earlier observations on adapting the Linux kernel for Clang AutoFDO and Propeller yielded very nice returns:
“Our empirical data demonstrates significant performance improvements with AutoFDO and Propeller, up to 10% on microbenchmarks and up to 5% on large warehouse-scale benchmarks. This makes a strong case for their inclusion as supported features in the upstream kernel.”
More background information via this patch cover letter for those not tracking the earlier AutoFDO and Propeller articles on Phoronix.
The exciting AutoFDO and Propeller support additions can be found in this Kbuild pull request.
As of writing Linus Torvalds hasn’t yet pulled or otherwise commented on this pull request. Hopefully he finds no objections in these additions and they’ll squeeze into Linux 6.13 this weekend… Stay tuned and hopefully followed by some exciting Linux kernel performance benchmarks soon.