Ferramentas e novas arquiteturas para aceleradores reconfiguráveis em plataformas heterogêneas CPU-FPGA com memória compartilhada

Imagem de Miniatura

Data

2019-02-25

Título da Revista

ISSN da Revista

Título de Volume

Editor

Universidade Federal de Viçosa

Resumo

O uso de arquiteturas reconfiguráveis como aceleradores em sistemas heterogêneos de alto desempenho surgiu como uma opção complementar a outras soluções, como por exemplo os processadores gráficos ou GPUs. Arquiteturas reconfiguráveis como FPGAs possuem como principal vantagem o paralelismo intrínseco de sua estrutura, que pode se adaptar à aplicação para alcançar o máximo desempenho com baixo consumo energético. Porém, faltam ferramentas para popularizar o uso dos FPGAs como aceleradores, reduzir o tempo de projeto, sem exigir dos programadores conhecimentos aprofundados no desenvolvimento de hardware. Nesta dissertação são apresentados três trabalhos que permitem a geração automática de código de aceleradores para sistemas heterogêneos com FPGA, além de propor uma nova arquitetura reconfigurável, que permite a execução no modelo MIMT (Multiple Instruction Multiple Threads) com troca de contexto em um ciclo de relógio. O primeiro trabalho apresenta uma ferramenta capaz de gerar automaticamente todo código de um acelerador para auxiliar na exploração de Redes Reguladoras de Genes, esta aborda- gem obteve um ganho de desempenho de duas ordens de grandeza em comparação com processador de uso geral. O segundo trabalho apresenta um arcabouço para facilitar a implantação de aceleradores em FPGA, deixando para o desenvolvedor apenas a implementação da aplicação, sem a necessidade de codificar os mecanismos de controle de comunicação entre o acelerador e a aplicação executada em software. Por fim, no terceiro trabalho é proposta uma nova arquitetura reconfigurável que permite a execução de múltiplas threads, fazendo o uso de paralelismo temporal e espacial para acelerar aplicações descritas na forma de grafos de fluxo de dados.
The use of reconfigurable architectures as accelerators in heterogeneous high performance systems has emerged as a complementary option to other solutions such as graphics processors or GPUs. Reconfigurable architectures like FPGAs have as main advantages the intrinsic parallelism of their structure that can be used to adapt the application to reach the maximum performance with low energy consumption. However, there is a lack of tools to popularize the use of FPGAs as accelerators to reduce design time, without requiring of programmers to have in-depth knowledge of hardware development. This dissertation presents three works that allow the automatic generation of accelerator code for heterogeneous systems with FPGA. Therefore, we propose a new reconfigurable architecture that allows execution in the MIMT (Multiple Instruction Multiple Threads) model with context change in one clock cycle. The first work presents a tool to automatically generate all the code of an accelerator to assist in the exploration of Gene Regulatory Networks, this approach achieved a performance gain of two orders of magnitude compared to general-purpose processor.The second work presents a framework to facilitate the implementation of accelerators in FPGA, leaving to the developer only the imple- mentation of the application without the need to code the communication control mechanisms between the accelerator and the application executed in software. The third work proposes a new reconfigurable architecture that allows the execution of multiple threads, using temporal and spatial parallelism to accelerate applications described in the form of data flow graphs.

Descrição

Palavras-chave

Arquitetura de computador, Computação heterogênea

Citação

SILVA, Lucas Bragança. Ferramentas e novas arquiteturas para aceleradores reconfiguráveis em plataformas heterogêneas CPU-FPGA com memória compartilhada. 2019. 79 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Viçosa, Viçosa. 2019.

Avaliação

Revisão

Suplementado Por

Referenciado Por