Utilize este link para identificar ou citar este item: https://bdm.unb.br/handle/10483/34439
Arquivos neste item:
Arquivo Descrição TamanhoFormato 
2022_GustavoDeMedeirosRoarelli_tcc.pdfTrabalho de Conclusão de Curso 3,63 MBAdobe PDFver/abrir
Título: Integração de módulos de redes neurais em hardware em um sistema many-core : um estudo de caso
Autor(es): Roarelli, Gustavo de Medeiros
Orientador(es): Mandelli, Marcelo Grandi
Assunto: Redes neurais (Computação)
Linguagem de programação (Computadores)
Data de apresentação: 24-Jun-2022
Data de publicação: 4-Abr-2023
Referência: ROARELLI, Gustavo de Medeiros. Integração de módulos de redes neurais em hardware em um sistema many-core: um estudo de caso. 2022. 85 f., il. Trabalho de conclusão de curso (Bacharelado em Engenharia Mecatrônica) — Universidade de Brasília, Brasília, 2022.
Resumo: Este trabalho propõe um estudo de caso de implementação de um periférico de rede neu ral. Para isso, foi utilizada uma rede neural feedforward com duas entradas, uma camada escondida e uma saída, capaz de obter a saída de uma porta XOR. A metodologia utilizada para atingir o sistema proposto foi a da implementação de dois módulos no periférico, sendo estes chamados de Módulo de Rede Neural, que provê a saída da rede neural, e o Módulo de Interfaceamento, que envia e recebe pacotes provenientes da rede gerada pela plataforma Memphis. Além disso, a mesma rede neural foi implementada em software, na linguagem C, com objetivo de realizar comparações de desempenho. Para acoplar o periférico à Memphis, foram necessárias algumas adições ao software e ao hardware da mesma. O periférico de rede neural se mostrou funcional tanto isolado quanto acoplado à plataforma. Foi observado que, quando isolado, o periférico é capaz de enviar e receber pacotes e retornar a saída da rede neural. Quando acoplado à plataforma Memphis, o periférico tem seu tempo de execução individual de apenas 30 ciclos de clock para uma rede descongestionada. Ao comparar o desempenho do sistema gerado pela plataforma com o periférico retornando a saída da rede neural com o software em C implementado, notou-se que o tempo total de execução do sistema em software é, em média, 4% menor. Além disso, o delay de requisição da saída da rede neural no sistema em software é de 343 ciclos de clock, ao passo que esse tempo em hardware é de 1246 ciclos de clock em uma rede descongestionada com apenas 2 tarefas alocadas. Foi observado que essa diferença é decorrente principamente do tempo da chamada de sistema na API; do tempo de envio, recebimento e tratamento de pacotes; e do tempo de escalonamento entre tarefas. Dessa forma, concluiu-se que o desempenho entre o uso de uma implementação em software e hardware será relativo a complexidade da rede neural implementada.
Abstract: This work proposes a case study of an implementation of a neural network peripheral. In order to do this, a feed-forward neural network with two inputs, one hidden layer and one exit, capable of obtaining the output of a XOR logic gate was used. The methodology used to achieve the proposed system was the implementation of two modules in the peripheral, called Neural Network Module, that provides the output value of the neural network, and the Interface Module, that sends and receives packets from the mesh generated by the Memphis platform. Moreover, the same neural network was implemented in software, in C language, for performance comparison purposes. To attach the peripheral to Memphis, some additions were necessary to the Memphis’s software and hardware. The neural network peripheral proved to be functional not only isolated but also attached to the platform. It was observed that, when isolated, the peripheral is capable of sending and receiving packets and returning the output value of the neural network. When attached to Memphis, the peripheral has its individual execution time of only 30 clock cycles for a decongested mesh. When comparing the performance of the system generated by the platform when the peripheral returns the output value with the implemented software, it was observed that the total execution time of the system is, in average, 4% smaller. Furthermore, the requisition delay of the output of the neural network in software is 343 clock cycles, whereas in hardware is 1246 in a decongested mesh with 2 allocated tasks. It was observed that this difference is mostly due to the API system call time; sending, receiving and treating packets and the scheduling time between the tasks. Therefore, it is concluded that the performance between the implementation in software and in hardware is relative to the complexity of the neural network implemented.
Informações adicionais: Trabalho de conclusão de curso (graduação) — Universidade de Brasília, Faculdade de Tecnologia, 2022.
Licença: A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta.
Aparece na Coleção:Engenharia Mecatrônica



Todos os itens na BDM estão protegidos por copyright. Todos os direitos reservados.