Towards Just-In-Time Software Approximations - Reis, Lucas; Wanner, Lucas; Rigo, Sandro (Anais do Simpósio em Sistemas Computacionais de Alto Desempenho (SSCAD); 2024: Anais do XXV Simpósio em Sistemas Computacionais de Alto DesempenhoDO - 10.5753/sscad.2024.244522, 2024)
Aproximações em nível de software, como a perforação de laços, substituição de funções e memoização podem melhorar o desempenho e consumo energético de uma aplicação de forma significativa em tempo de compilação. Entretanto, aproximadores a nível de compilação muitas vezes exigem intensa intervenção do usuário e pecam na capacidade de adaptação em tempo real. Esse trabalho apresenta RAAS, um framework que integra recompilação just-in-time com um sistema de avaliação automática para criar um ambiente de aproximação em nível de software de propósito geral que requer intervenção mínima do usuário. Nosso framework pode aplicar aproximações adaptáveis a diferentes entradas sem necessitar de uma fase de testes ao monitorar continuiamente o desempenho da aplicação alvo e recompilando trechos do código. Avaliamos o framework com um conjunto de benchmarks resilientes a aproximação, também comparando seu desempenho com um framework similar focado aproximações por compilação estática. Nossos testes demonstram speedups de até 6.3x com redução de qualidade limitado a 30%, alcançando resultados competitivos à compilação estática com reduzido tempo de convergência.