Holos (Dec 2020)
Aceleradores Reconfiguráveis no Projeto Multicore: uma análise de custo versus benefício
Abstract
A crescente evolução do software através de novas técnicas tem permitido o desenvolvimento de diversas soluções para atender a demanda da sociedade. Um exemplo atual é o avanço de técnicas de aprendizado de máquina para ser utilizadas em veículos autônomos, diagnósticos médicos, robôs, dentre outros. Diversas soluções de hardware têm surgido nos últimos anos para atender à essa demanda. Dentre essas soluções, os sistemas com múltiplos núcleos, chamados de multicores, estão entre as principais tendências. Porém, a busca por soluções de hardware não visa só o alto desempenho. É preciso levar em consideração outros aspectos como a eficiência energética e a área. Nesse cenário, a combinação de processadores com aceleradores reconfiguráveis tem sido amplamente explorada pelo fato destes últimos proporcionarem ganho de desempenho com redução de energia. Neste trabalho, pretendemos colaborar com o projeto de multicores investigando diferentes combinações de processadores com aceleradores reconfiguráveis. Como estudo de caso, combinamos processadores superescalares com arquiteturas reconfiguráveis de granularidade grossa e avaliamos três cenários. O primeiro é uma combinação de processadores e aceleradores que alcançam o mais alto desempenho possível para um conjunto de aplicações. O segundo é uma combinação de processadores e aceleradores definido por um limite de desempenho e o terceiro é limitado pela energia. Os experimentos mostram que é possível obter uma aceleração de mais de 2,5x para determinadas aplicações; economizar mais de 11% de energia com perda de 10% de aceleração e reduzir 30% de área com economia de 20% de energia.
Keywords