Profile-Guided Optimization (PGO) in Rust: unknown parts

Profile-Guided Optimization (PGO) in Rust: unknown parts

Speaker: Aliaksandr Zaitsau

Description

Profile-Guided Optimization (PGO) is a compiler optimization technique that helps with optimizing software based on a collected in runtime profile. This optimization is available for a long time in the Rustc compiler. But how smooth will be your experience when you try to adopt PGO in practice? I applied PGO to many kinds of software (compilers, databases, log solutions, CLI tools, and many more), collected a lot of carefully hidden traps on my journey, and found multiple ways how to avoid them. In this talk, I want to share with you my experience. We will discuss the following topics:

After the talk, you will be much more prepared for doing PGO in practice and even will be aware of more advanced optimization techniques like Post-Link Optimization (PLO), ML-based compiler optimization and other interesting stuff from the optimization field.

Track

Technology & Community

Level

Intermediate