Application-specific Soft-GPGPU on Reconfigurable Substrates

Bibliographic Details
Main Author: Duarte, Pedro Miguel Parola
Publication Date: 2016
Format: Master thesis
Language: eng
Source: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Download full: https://hdl.handle.net/10316/81672
Summary: Dissertação de Mestrado Integrado em Engenharia Electrotécnica e de Computadores apresentada à Faculdade de Ciências e Tecnologia
id RCAP_fc1cbda07d7cedd7bf9cf88f28c79373
oai_identifier_str oai:estudogeral.uc.pt:10316/81672
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling Application-specific Soft-GPGPU on Reconfigurable SubstratesApplication-specific Soft-GPGPU on Reconfigurable SubstratesGPGPU sintetizáveisarquitectura aplicação específicacomputação reconfigurávelarquiteturascomputação eficientesoft-GPGPUapplication-specific architecturere-configurable computingarchitecturespower-and energy-efficient computingDissertação de Mestrado Integrado em Engenharia Electrotécnica e de Computadores apresentada à Faculdade de Ciências e TecnologiaSoft-general-purpose graphics processing units (GPGPUs) are the implementation of a general-purpose GPU (GPGPU) on a field-programmable gate array (FPGA). They are set out to combine the processing power and programmability of graphics processing units (GPUs), using a framework such as Open Computing Language (OpenCL) or Compute Unified Device Architecture (CUDA), with the flexibility given by the FPGA. Due to current FPGA resource limits and design complexity, implementing a GPGPU core with the full parallel capability of a commercially available device has not yet been feasible. Hence, current implementations either focus in limiting the functionalities of an intellectual property (IP) core to fit in the FPGA, or in developing an entirely new processor with a custom instruction set architecture (ISA). However, neither of these take into consideration the application-specific intrinsic requirements.Hence, in this thesis, we propose application-specific soft-GPGPU cores optimizedfor a given application, in order to reduce the mapped resources to the actual application requirements, while retaining the ability to change the problem size. The proposed application-specific soft-GPGPU is based on MIAOW, a state-of-the-art soft-GPGPU compatible with AMD’s Southern Islands ISA. However, several enhancements are proposed, not only to provide additional performance gains, but also to correct several implementation errors affecting the execution of the supported instructions.Furthermore, the decrease in resource usage leaves enough room to increase the system’s parallel abilities. The proposed solution is scalable either in terms of vector ALU (VALU) units, or number GPGPU cores, as FPGA technology progresses to accommodate more resources.Considering the above, the proposed objective is to provide future embedded system designers with dedicated, ready to use, and highly optimized GPU cores. Therefore, the main focus of this work is in the development of application-specific GPGPU cores, providing not only these but also the means so that others can create their own application-specific soft-GPUs. Furthermore, the following objectives are proposed:• Develop application-specific GPGPU cores;• Improve state-of-the-art GPGPU cores, such as MIAOW, by increasing functionalityand throughput performance;• Develop a framework to test the synthesized instruction set architecture (ISA) implementation;• Be compatible with state-of-the-art programming languages, such as OpenCL orCUDA, in order to easily allow offloading application computational kernels to the soft-GPGPU;• Develop a framework for easily designing application-specific GPGPU cores;• Show the area and power benefits of allowing an adaptation of the computing resources to the application characteristics.Os soft-general-purpose graphics processing units (GPGPUs) consistem na implementação de uma general-purpose GPU (GPGPU) numa field-programmable gate array (FPGA). O seu propósito é aliar o poder de processamento e capacidade de programação de uma graphics processing unit (GPU), através de uma plataforma como Open Computing Language (OpenCL) ou Compute Unified Device Architecture (CUDA), com a flexibilidade dada pela FPGA. No entanto, devido aos recursos limitados das FPGAs e à complexidade do projeto de hardware, a implementação de um núcleo GPGPU com a capacidade total de computação paralela de um dispositivo comercial ainda não foi possível. As implementações atuais alternam entre reduzir as funcionalidades do núcleo, até ser sintetizável, e no desenvolvimento de um processador totalmente novo com um conjunto de instruções feito à medida.Nesta tese, propomos a criação de soft-GPGPUs de aplicação específica, a saber, núcleos de processamento otimizados para uma aplicação específica, que reduzem a utilização de recursos na placa, mantendo a capacidade de alterar a dimensão do problema sem a necessidade de re-sintetizar o projeto de hardware. Obtendo o núcleo simplificado, as capacidades de paralelismo, originalmente inviáveis, podem ser aproveitadas.Para alcançar o objetivo proposto, é feita uma pesquisa das atuais soft-GPGPUs que expõe as suas funcionalidades e descreve as peculiaridades de cada arquitetura. De seguida, a plataforma base que irá dar origem aos soft-GPGPUs de aplicação específica é selecionada e testada. Um perfil temporal é então elaborado, e são propostas melhorias com o intuito de aumentar tanto o desempenho como as funcionalidades, posteriormente validadas.Após o desenvolvimento dos soft-GPGPUs de aplicação específica verifica-se que existe uma redução de 18% na potência requerida pelo sistema, quando comparado com o sistema base. Além disso, a diminuição no uso de recursos deixa espaço suficiente para aumentar o paralelismo do sistema. A solução que se propõe tem escalabilidade quer ao nível das unidades aritméticas vetoriais, quer no número de núcleos que podem estar em simultâneo na placa, à medida que o número de recursos nas FPGA aumenta. Considerando o que foi acima descrito, o principal objectivo deste trabalho é prover núcleos de processamento dedicados, prontos a usar, e altamente otimizados, para futuros desenvolvedores de hardware.Desta forma, este trabalho foca-se na criação de núcleos de aplicação específica, detalhando a sua criação.2016-07-25info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttps://hdl.handle.net/10316/81672https://hdl.handle.net/10316/81672TID:202056899engDuarte, Pedro Miguel Parolainfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2021-05-14T10:10:03Zoai:estudogeral.uc.pt:10316/81672Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-29T05:27:45.711483Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv Application-specific Soft-GPGPU on Reconfigurable Substrates
Application-specific Soft-GPGPU on Reconfigurable Substrates
title Application-specific Soft-GPGPU on Reconfigurable Substrates
spellingShingle Application-specific Soft-GPGPU on Reconfigurable Substrates
Duarte, Pedro Miguel Parola
GPGPU sintetizáveis
arquitectura aplicação específica
computação reconfigurável
arquiteturas
computação eficiente
soft-GPGPU
application-specific architecture
re-configurable computing
architectures
power-and energy-efficient computing
title_short Application-specific Soft-GPGPU on Reconfigurable Substrates
title_full Application-specific Soft-GPGPU on Reconfigurable Substrates
title_fullStr Application-specific Soft-GPGPU on Reconfigurable Substrates
title_full_unstemmed Application-specific Soft-GPGPU on Reconfigurable Substrates
title_sort Application-specific Soft-GPGPU on Reconfigurable Substrates
author Duarte, Pedro Miguel Parola
author_facet Duarte, Pedro Miguel Parola
author_role author
dc.contributor.author.fl_str_mv Duarte, Pedro Miguel Parola
dc.subject.por.fl_str_mv GPGPU sintetizáveis
arquitectura aplicação específica
computação reconfigurável
arquiteturas
computação eficiente
soft-GPGPU
application-specific architecture
re-configurable computing
architectures
power-and energy-efficient computing
topic GPGPU sintetizáveis
arquitectura aplicação específica
computação reconfigurável
arquiteturas
computação eficiente
soft-GPGPU
application-specific architecture
re-configurable computing
architectures
power-and energy-efficient computing
description Dissertação de Mestrado Integrado em Engenharia Electrotécnica e de Computadores apresentada à Faculdade de Ciências e Tecnologia
publishDate 2016
dc.date.none.fl_str_mv 2016-07-25
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/10316/81672
https://hdl.handle.net/10316/81672
TID:202056899
url https://hdl.handle.net/10316/81672
identifier_str_mv TID:202056899
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833602360763482112