Optimización en dos pasos del rendimiento del software usando transformaciones de compilación

Published: 20 Mar 2025, Last Modified: 28 Mar 2025MAEB 2025EveryoneRevisionsBibTeXCC BY 4.0
Supplementary Material: zip
Keywords: Optimización del rendimiento de software, optimizaciones de compilador, Algoritmos genéticos
TL;DR: Nuevo problema de optimización para la optimización del rendimiento de programas informáticos con secuencias de longitud mínima
Abstract: Los compiladores tradicionales permiten generar versiones más eficientes de un programa mediante el uso de flags de optimización, que aplican secuencias específicas de transformaciones de código. Sin embargo, estas secuencias suelen ser genéricas y a menudo no logran su objetivo de mejorar el rendimiento. El impacto de las transformaciones aplicadas, así como su orden, depende tanto del software como del hardware en el que se ejecuta. Este hecho hace necesario la generación de secuencias de transformaciones ad hoc para la optimización del rendimiento del software. En este trabajo definimos un nuevo problema compuesto por dos problemas de optimización combinatoria distintos, cuyo objetivo es encontrar secuencias que optimicen el rendimiento del programa, y que tengan la menor longitud posible. Reducir la longitud de la secuencia óptima permite realizar compilaciones más rápidas utilizando únicamente las transformaciones de código más beneficiosas para el binomio hardware-software, generando así nuevo conocimiento sobre este importante tema. Se propone una metodología de dos pasos para resolver este problema. En el primero, se identifican secuencias óptimas que minimizan el tiempo de ejecución del programa objetivo. En el segundo, se minimiza la longitud de la secuencia tratando de mejorar aún más el rendimiento del programa. Los resultados muestran cómo el método propuesto encuentra secuencias hasta un 51,27% más cortas y con una mejora del rendimiento en tiempo de ejecución en más de un 26% en comparación con el flag de compilación -O3.
Submission Number: 15
Loading

OpenReview is a long-term project to advance science through improved peer review with legal nonprofit status. We gratefully acknowledge the support of the OpenReview Sponsors. © 2025 OpenReview