@misc{10498/31666, year = {2023}, month = {5}, url = {http://hdl.handle.net/10498/31666}, abstract = {Efficient green software solutions require being aware of the characteristics of both the software and the hardware where it is executed. Separately optimizing them leads to inefficient results, and there is a need for a perfect synergy between software and hardware for optimal outcomes. We present a novel combinatorial optimization problem for the minimization of the software execution time on a specific hardware, taking into account the existing uncertainty in the system. A solution to the problem is a sequence of LLVM code transformations, and a cellular genetic algorithm is used to find it. Assuming that hardware does not change, reducing the software runtime typically leads to a greener version with lower consumption. To cope with the uncertainty, two novel approaches relying on bootstrap method to compute confident intervals of the software runtime at negligible cost are proposed and compared to three other techniques and -O3 Clang compilation flag over four hardware architectures. Results show how the proposed approach effectively copes with the uncertainty, providing more robust solutions with respect to the compared methods. The execution time of the raw program is reduced from 28.1% to up to 63.2%, outperforming -O3 flag by 13.9% to 26.3%, for the different architectures.}, organization = {This work was supported by the Junta de AndalucÍa and ERDF (GENIUS – P18-2399), the Spanish Ministerio de Ciencia, Innovación y Universidades and ERDF (NEMOVISION– PID2019-109465RB-I00) and ERDF (OPTIMALE – FEDERUCA18-108393). This publication is part of TED2021-131880B-I00 project (eFracWare), funded MCIN/AEI/10. 13039/501100011033 and the European Union “NextGenerationEU”/PRTR and project eMob (PID2022-137858OBI00) funded by Spanish MCIN, the AEI and the ERDF on MCIN/AEI/10.13039/501100011033/FEDER, UE. This work was partially supported by the Spanish Ministry of Science and Innovation and ERDF (RED2018-102472-T). J.C. de la Torre and J.M. Aragón-Jurado would like to acknowledge the Spanish Ministerio de Ciencia, Innovación y Universidades for the support through FPU17/00563 and FPU21/02026 grants, respectively. J.M. Aragón-Jurado acknowledges the grant from Plan Propio - UCA 2022-2023. B. Dorronsoro and P. Ruiz acknowledge “ayuda de recualificación” funded by Ministerio de Universidades and the European Union-NextGenerationEU}, publisher = {Institute of Electrical and Electronics Engineers (IEEE)}, keywords = {Software performance}, keywords = {LLVM}, keywords = {execution time}, keywords = {uncertainty}, keywords = {source code transformation}, keywords = {evolutionary computation}, title = {Automatic Software Tailoring for Optimal Performance}, doi = {10.1109/TSUSC.2023.3330671}, author = {Aragón Jurado, José Miguel and Torre Macías, Juan Carlos de la and Ruiz Villalobos, Patricia and Galindo Riaño, Pedro Luis and Zomaya, Albert Y. and Dorronsoro Díaz, Bernabé}, }