In this article, Maksim Panchenko discusses BOLT, a binary optimization and layout tool used by Meta to optimize kernel binary, improving code locality for better performance. Originally designed for large applications at Meta, BOLT is now used by various projects like Python, LLVM, Rust, and more since its release as open source. By rearranging code in memory, BOLT significantly reduces instruction-cache misses, TLB misses, and CPU time, leading to performance gains. BOLT operates on ELF binaries, supports various architectures, and optimizes code without the need for recompilation. The article details BOLT’s process, optimizations, and challenges when applied to the kernel.
https://lwn.net/SubscriberLink/993828/eb9b437bf7604da3/