LLVM BOLT Optimizations Net ~6% Improvement For GNOME's Pango

Written by Michael Larabel in GNOME on 22 March 2024 at 06:43 AM EDT. 4 Comments
GNOME
BOLT that was upstreamed into LLVM in 2022 by Facebook/Meta allows for optimizing the layout of binaries as a post-linking step to yield increased performance. BOLT like Profile Guided Optimizations (PGO) first requires the profiling step to generate perf recordings to feedback in for the optimization process, but the gains can be significant.

BOLT can yield very nice performance gains as shown across various workloads thanks to reorganizing the layout of libraries/binaries. The latest praise for LLVM's BOLT is by GNOME developer Christian Hergert.

In experimenting with BOLT, he generated a perf recording while using the GNOME Text Editor and then used that to optimize the layout of the Pango library. In turn with the optimized library he saw around a 6% reduction in the time spent measuring text, which is one of the most expensive parts of the process profiled. Not a bad win on top of everything else. LLVM BOLT is a very fascinating effort and hopefully it continues seeing more adoption as well as improvements to the code itself.

Those interested in learning more about Hergert's initial adventures in using LLVM BOLT can find the details on his blog.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week