Los riesgos de usar PGO (optimización guiada por perfil) con el entorno de producción

Tengo un sistema (Linux y C ++) que realiza operaciones intensivas de procesamiento de señal / imagen. Me gustaría usar PGO para mejorar el rendimiento de nuestra aplicación.

¿Hay algún riesgo / problema potencial que deba tener en cuenta al usar PGO?

¿Son las pruebas unitarias + E2E pruebas suficientes para verificar que PGO no rompió nada?

Microsoft tiene un sistema que está modificando los saltos condicionales en función de las estadísticas de uso, además de que condensa las piezas de código utilizadas con frecuencia en un número menor de páginas. Básicamente, esto compacta la huella de memoria efectiva varias veces y reduce el consumo de CPU en un 20-50%.

Este sistema se usó ampliamente tanto en modo usuario como en modo kernel. La calidad de este sistema era muy alta. En el 100% de los casos estaba haciendo su trabajo correctamente. No veo ni siquiera los lados bajos.

Puede suceder que algún otro sistema similar sea menos confiable que el de Microsoft. Ese de Microsoft fue extremadamente bueno.