Optimizare ghidată de profil

Optimizare ghidată de profil ( PGO ) - o tehnică de optimizare a unui program de către un compilator, care vizează creșterea performanței programului. Spre deosebire de metodele tradiționale de optimizare care analizează doar codurile sursă, PGO utilizează rezultatele măsurătorilor testelor programului fiind optimizat pentru a genera un cod mai optim. Testele dezvăluie care părți ale programului sunt executate mai des și care mai rar. Avantajul acestei abordări este că compilatorul nu face ipoteze atunci când alege o metodă de optimizare, ci folosește statistici reale colectate în timpul execuției programului. Trebuie avut în vedere faptul că rulările de testare ale programului trebuie efectuate conform celui mai tipic scenariu pentru ca statisticile să fie reprezentative, altfel performanța programului se poate deteriora chiar.

Metode de optimizare

Printre optimizările care pot folosi statisticile colectate cu PGO [1] :

Implementări

Tehnicile de optimizare PGO sunt implementate, în special, de către compilatori:

Note

  1. Optimizări ghidate de profil . Consultat la 15 februarie 2012. Arhivat din original pe 22 februarie 2012.
  2. Clang Compiler User's Manual - Clang 3.9 documentation . clang.llvm.org. Preluat la 6 mai 2016. Arhivat din original la 15 septembrie 2011.