PGO: Как устроено и как использовать

RU

Profile-guided optimization — довольно мощная техника, которая позволяет улучшить производительность приложения. В данном докладе мы сначала разберемся, как эта техника устроена в компиляторе (на примере clang/llvm). Затем мы познакомимся с более продвинутыми вариантами применения PGO, такими, как двухпроходная инструментация и оптимизация бинарных файлов. И в конце разберем пару небольших примеров: когда PGO может улучшить производительность приложения, а когда — нет.