Software-only computation reuse techniques for energy efficient CNNs - Moura, Rafael Fão de (2019)
Nos últimos anos, pesquisas em melhorias nas áreas de algoritmos e arquiteturas computacionais foram postas lado-a-lado de modo a permitir o uso em larga-escala de CNNs. Desde então, a maior parte destas melhorias têm sido baseadas na aceleração de convoluções através da execução paralela de operações MAC, utilizando a replicação de unidades de ponto-flutuante. No entanto, essas soluções ficam muito aquém do que é permitido em termos de consumo energético quando se trata de sistemas embarcados executando NNs. Considerando características específicas de imagens, tais como repetições de padrões de entrada, neste trabalho, nós apresentamos uma mudança algorítmica no modo como CNNs realizam inferências, empregando uma técnica de reuso de computação no lugar da implementação original. Com base em análises estatísticas, nós abordamos o reuso de computação em três granularidades: ao nível de convolução e ao nível de conjunto de convoluções, realizando consultas em tabelas ao invés das convoluções originais, e ao nível de frame através da substituição da computação original de um frame inteiro por um algoritmo de predição de movimento. Nossos resultados mostram que é possível obter níveis de economia de energia em até 27,5 , e reduzir o tempo de inferência por um fator de 116 em relação à versão original, com uma perda de precisão de 13%.