Fedora 32 Aiming To Enable Link-Time Optimizations By Default For Packages
In addition to finally enabling FSTRIM for flash-based storage devices, another arguably long overdue change slated for Fedora 32 to benefit performance is compiling packages by default with link-time optimizations (LTO) by the GCC compiler.
Link-time optimizations can be a big win for performance of common multi source file programs by applying optimizations during the linking phase, after all the object files have been combined. Thanks to this whole-program analysis/optimization there is much greater potential for enhancing the performance.
LTO has matured a lot over the years and is now employed by default on Linux distributions like openSUSE and Clear Linux while Fedora 32 is now eyeing it as part of the default flags to pass when building RPMs. Besides faster binaries, there can be beneficial size improvements too from LTO and all-around on newer compiler releases is generally a win. As it's been a few releases since last doing some big LTO compiler benchmark comparisons, I've tacked that onto my agenda this weekend.
The Fedora 32 plans for LTO by default can be found via this change proposal that still needs to be reviewed by the Fedora Engineering and Steering Committee.
Seeing that Fedora Workstation generally performs quite poorly in our multi-distribution comparisons of recent times, any Fedora 32 performance work is certainly very welcome.
Link-time optimizations can be a big win for performance of common multi source file programs by applying optimizations during the linking phase, after all the object files have been combined. Thanks to this whole-program analysis/optimization there is much greater potential for enhancing the performance.
LTO has matured a lot over the years and is now employed by default on Linux distributions like openSUSE and Clear Linux while Fedora 32 is now eyeing it as part of the default flags to pass when building RPMs. Besides faster binaries, there can be beneficial size improvements too from LTO and all-around on newer compiler releases is generally a win. As it's been a few releases since last doing some big LTO compiler benchmark comparisons, I've tacked that onto my agenda this weekend.
The Fedora 32 plans for LTO by default can be found via this change proposal that still needs to be reviewed by the Fedora Engineering and Steering Committee.
Seeing that Fedora Workstation generally performs quite poorly in our multi-distribution comparisons of recent times, any Fedora 32 performance work is certainly very welcome.
2 Comments