LLVM-ACT: Profiling Based Tool for Approximate Computing Technique Selection - Miranda, Lavinia; Pereira, Monica; Vidal, Jorgiano (Anais do Simpósio Brasileiro de Engenharia de Sistemas Computacionais (SBESC), 2022)
Approximate Computing is currently an emerging paradigm that seeks to replace some data accuracy with aspects such as performance and energy efficiency. There are tools within this scope that apply some approximate computation techniques at software computational level. However, these tools are limited in a way that they only cover some specific scope, apply only one of the known techniques and/or need manual code annotations to work out. Thus, this work proposes the implementation of a tool that, according to the application profiling, chooses the most appropriate approximate computing technique to be applied. LLVM-ACT uses the LLVM compilation infrastructure, where each step is implemented as a code analysis or transformation LLVM Pass. The results show that the technique chosen by LLVM-ACT is cost-effective if low error rates and high speedup are taken into account, with an 8x speedup with 22% error rate on average with the Fluidanimate application.