masterThesis
LLVM-ACT: uma ferramenta baseada em profiling para seleção de técnica de computação aproximada
LLVM-ACT: profiling-based tool proposal for approximate computing technique selection
Registro en:
MIRANDA, Lavinia Medeiros. LLVM-ACT: uma ferramenta baseada em profiling para seleção de técnica de computação aproximada. Orientadora: Mônica Magalhães Pereira. 2022. 83f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2022.
Autor
Miranda, Lavinia Medeiros
Resumen
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 applications annotations to work out. The current state of the art still has questions such as
the existence or not of a relation between the characteristics of the studied application
and the chosen technique for its exploration; also remains open what would be the most
appropriate technique for each particular context. Thus, this dissertation proposes the
implementation of a tool that, according to the application profiling, chooses the most
appropriate approximate computing technique to be applied. The tool uses the LLVM
compilation infrastructure, where each step is implemented as a code analysis or transformation LLVM Pass. In addition to the Profiler, three approximate computation techniques
were implemented, and the results obtained show that the technique chosen by the tool
is cost-effective if the parameters of error rates and speedup are considered. Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES Computação Aproximada é atualmente um paradigma em ascensão que visa substituir
um pouco de acurácia de dados por aspectos como desempenho e eficiência energética.
Ao nível computacional de software, existem ferramentas dentro desse escopo que aplicam
algumas técnicas de computação aproximada. No entanto, essas ferramentas são limitadas de forma que abrangem somente algum escopo específico, aplicam apenas uma das
técnicas conhecidas e/ou precisam de anotações manuais nas aplicações para funcionarem. O estado da arte atual ainda possui questionamentos, como a existência ou não de
uma relação entre as características da aplicação estudada e a escolha da técnica utilizada
para sua exploração; permanece em aberto também qual seria a técnica mais adequada a
cada determinado contexto. Dessa forma, essa dissertação propõe e uma ferramenta que,
conforme as características das aplicações, escolha a técnica de computação aproximada
mais adequada a ser aplicada naquele contexto. A ferramenta desenvolvida utiliza a infraestrutura de compilação do LLVM, onde cada etapa é implementada na forma de um
LLVM Pass de análise ou transformação de código. Além do Profiler, foram implementadas três técnicas de computação aproximada e os resultados obtidos mostram que a
técnica escolhida pela ferramenta apresentam um custo-benefício se forem considerados
os parâmetros de taxas de erro e aceleração.