Incremental LTO in GCC

Day 1 | 17:40 | 00:20 | K.3.201 | Michal Jireš


Note: I'm reworking this at the moment, some things won't work.

The stream isn't available yet! Check back at 17:40.
Get involved in the conversation!Join the chat

Incremental LTO in GCC

Link Time Optimization (LTO) postpones many compiler steps into linking, when we have access to all files linked together. This allows us to optimize across compilation units leading to significantly faster and smaller binaries. However it comes at a cost of long compile times because after even a minor edit the entire application needs to be re-optimized. Incremental LTO will be a new feature of GCC 15 which aims to reduce those compile times for small changes by caching LTO partitions unaffected by the change.

This talk will cover quick overview of Incremental LTO and how to use it in upcoming GCC 15 along with a simple example. I will also show estimate of how much compile time can be saved when recompiling GCC itself.