Optimización en Tiempo de Enlace (LTO): ¿El Siguiente Nivel de Optimización del Compilador?
Este artículo explora la Optimización en Tiempo de Enlace (LTO), una técnica que mejora el rendimiento del programa realizando optimizaciones durante la fase de enlace. Los compiladores tradicionales optimizan dentro de archivos individuales, mientras que LTO permite optimizaciones más completas entre archivos, como la inserción de funciones y la mejora de la localidad del código. Si bien LTO puede producir mejoras significativas en el rendimiento (por ejemplo, una reducción del 9,2% en el tiempo de ejecución y una reducción del 20% en el tamaño del binario en la prueba del proyecto ProjectX), también requiere tiempos de compilación y enlace más largos y más memoria. El autor compara experimentos en ProjectX y ffmpeg para ilustrar las ventajas y desventajas de LTO y sugiere probar LTO en proyectos que no están optimizados agresivamente para la velocidad, concluyendo que las ganancias de rendimiento finales dependen del proyecto específico.