Implementação de acelerador com arquitetura multi-núcleos ACQuA

Detalhes bibliográficos
Autor(a) principal: Taborda, Thales Baierle
Data de Publicação: 2017
Tipo de documento: Trabalho de conclusão de curso
Idioma: eng
Título da fonte: Repositório Institucional da UFRGS
Texto Completo: http://hdl.handle.net/10183/169060
Resumo: Uma das técnicas mais proeminentes para se obter desempenho computacional atualmente é mediante o uso de paralelismo, executar múltiplas tarefas simultaneamente em unidades de processamento distintas. Amplamente utilizada nos processadores multi-núcleo recentes, tais técnicas dependem, em sua grande maioria, do envolvimento direto de um desenvolvedor com mecanismos de sincronização, controle de seções críticas e a correta manipulação dos dados, o que pode aumentar os níveis de esforço e tempo necessários para produzir software e garantir seu perfeito funcionamento. Esse trabalho tem como objetivo, portanto, a descrição e implementação de um acelerador com a arquitetura ACQuA (Active Call Queue Architecture), que visa a exploração do paralelismo inerente a linguagens funcionais de maneira transparente ao programador, eliminando a necessidade de explicitar paralelismo e estruturas de sincronização. O acelerador desenvolvido se utiliza de estruturas e mecanismos presentes em hardware buscando minimizar overheads de despacho, comunicação e sincronização de chamadas de função independentes servindo, também, como instrumento de análise adicional da arquitetura proposta.
id UFRGS-2_b8678d0bcf8c4848d3563455c76377fd
oai_identifier_str oai:www.lume.ufrgs.br:10183/169060
network_acronym_str UFRGS-2
network_name_str Repositório Institucional da UFRGS
repository_id_str
spelling Taborda, Thales BaierleNazar, Gabriel Luca2017-09-30T02:31:06Z2017http://hdl.handle.net/10183/169060001048373Uma das técnicas mais proeminentes para se obter desempenho computacional atualmente é mediante o uso de paralelismo, executar múltiplas tarefas simultaneamente em unidades de processamento distintas. Amplamente utilizada nos processadores multi-núcleo recentes, tais técnicas dependem, em sua grande maioria, do envolvimento direto de um desenvolvedor com mecanismos de sincronização, controle de seções críticas e a correta manipulação dos dados, o que pode aumentar os níveis de esforço e tempo necessários para produzir software e garantir seu perfeito funcionamento. Esse trabalho tem como objetivo, portanto, a descrição e implementação de um acelerador com a arquitetura ACQuA (Active Call Queue Architecture), que visa a exploração do paralelismo inerente a linguagens funcionais de maneira transparente ao programador, eliminando a necessidade de explicitar paralelismo e estruturas de sincronização. O acelerador desenvolvido se utiliza de estruturas e mecanismos presentes em hardware buscando minimizar overheads de despacho, comunicação e sincronização de chamadas de função independentes servindo, também, como instrumento de análise adicional da arquitetura proposta.One of the most prominent techniques to increase processing power is parallelism, to execute multiple tasks simultaneously in distinct processing units. Widely used in recent multi-core processors, such techniques depend mostly on a developer’s direct engagement to synchronization mechanisms, critical section control and correct manipulation of data, this can increase the amount of time needed to produce software and guarantee its perfect working condition. This work’s focus, therefore, is to develop and implement a hardware accelerator of the ACQuA architecture (Active Call Queue Architecture), a novel architecture that aims to explore the inherent parallelism present in pure functional languages in a transparent manner, eliminating the need to explicit complex synchronization structures. The developed accelerator benefits from hardware structures and mechanisms to facilitate dispatch, communication and synchronization of independent function calls in order to minimize the overhead of these operations and also serves as a further analysis instrument to the proposed architecture.application/pdfengMicroeletrônicaArquitetura : ComputadoresACQuAParallelismFunctional languagesHardware acceleratorMulti-CoreImplementação de acelerador com arquitetura multi-núcleos ACQuADevelopment of a hardware accelerator of the ACQuA multi-core architecture info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPorto Alegre, BR-RS2017Engenharia de Computaçãograduaçãoinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL001048373.pdf001048373.pdfTexto completoapplication/pdf1337533http://www.lume.ufrgs.br/bitstream/10183/169060/1/001048373.pdf115fc594dc9a221f01e1f1eaa366b7b9MD51TEXT001048373.pdf.txt001048373.pdf.txtExtracted Texttext/plain68959http://www.lume.ufrgs.br/bitstream/10183/169060/2/001048373.pdf.txt304ea0867066a0f7ee159d1f9a451a38MD52THUMBNAIL001048373.pdf.jpg001048373.pdf.jpgGenerated Thumbnailimage/jpeg1069http://www.lume.ufrgs.br/bitstream/10183/169060/3/001048373.pdf.jpg781edad617bf0e937ae6cffea564bbe4MD5310183/1690602018-10-29 08:14:43.475oai:www.lume.ufrgs.br:10183/169060Repositório de PublicaçõesPUBhttps://lume.ufrgs.br/oai/requestopendoar:2018-10-29T11:14:43Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Implementação de acelerador com arquitetura multi-núcleos ACQuA
dc.title.alternative.en.fl_str_mv Development of a hardware accelerator of the ACQuA multi-core architecture
title Implementação de acelerador com arquitetura multi-núcleos ACQuA
spellingShingle Implementação de acelerador com arquitetura multi-núcleos ACQuA
Taborda, Thales Baierle
Microeletrônica
Arquitetura : Computadores
ACQuA
Parallelism
Functional languages
Hardware accelerator
Multi-Core
title_short Implementação de acelerador com arquitetura multi-núcleos ACQuA
title_full Implementação de acelerador com arquitetura multi-núcleos ACQuA
title_fullStr Implementação de acelerador com arquitetura multi-núcleos ACQuA
title_full_unstemmed Implementação de acelerador com arquitetura multi-núcleos ACQuA
title_sort Implementação de acelerador com arquitetura multi-núcleos ACQuA
author Taborda, Thales Baierle
author_facet Taborda, Thales Baierle
author_role author
dc.contributor.author.fl_str_mv Taborda, Thales Baierle
dc.contributor.advisor1.fl_str_mv Nazar, Gabriel Luca
contributor_str_mv Nazar, Gabriel Luca
dc.subject.por.fl_str_mv Microeletrônica
Arquitetura : Computadores
topic Microeletrônica
Arquitetura : Computadores
ACQuA
Parallelism
Functional languages
Hardware accelerator
Multi-Core
dc.subject.eng.fl_str_mv ACQuA
Parallelism
Functional languages
Hardware accelerator
Multi-Core
description Uma das técnicas mais proeminentes para se obter desempenho computacional atualmente é mediante o uso de paralelismo, executar múltiplas tarefas simultaneamente em unidades de processamento distintas. Amplamente utilizada nos processadores multi-núcleo recentes, tais técnicas dependem, em sua grande maioria, do envolvimento direto de um desenvolvedor com mecanismos de sincronização, controle de seções críticas e a correta manipulação dos dados, o que pode aumentar os níveis de esforço e tempo necessários para produzir software e garantir seu perfeito funcionamento. Esse trabalho tem como objetivo, portanto, a descrição e implementação de um acelerador com a arquitetura ACQuA (Active Call Queue Architecture), que visa a exploração do paralelismo inerente a linguagens funcionais de maneira transparente ao programador, eliminando a necessidade de explicitar paralelismo e estruturas de sincronização. O acelerador desenvolvido se utiliza de estruturas e mecanismos presentes em hardware buscando minimizar overheads de despacho, comunicação e sincronização de chamadas de função independentes servindo, também, como instrumento de análise adicional da arquitetura proposta.
publishDate 2017
dc.date.accessioned.fl_str_mv 2017-09-30T02:31:06Z
dc.date.issued.fl_str_mv 2017
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10183/169060
dc.identifier.nrb.pt_BR.fl_str_mv 001048373
url http://hdl.handle.net/10183/169060
identifier_str_mv 001048373
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.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFRGS
instname:Universidade Federal do Rio Grande do Sul (UFRGS)
instacron:UFRGS
instname_str Universidade Federal do Rio Grande do Sul (UFRGS)
instacron_str UFRGS
institution UFRGS
reponame_str Repositório Institucional da UFRGS
collection Repositório Institucional da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/169060/1/001048373.pdf
http://www.lume.ufrgs.br/bitstream/10183/169060/2/001048373.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/169060/3/001048373.pdf.jpg
bitstream.checksum.fl_str_mv 115fc594dc9a221f01e1f1eaa366b7b9
304ea0867066a0f7ee159d1f9a451a38
781edad617bf0e937ae6cffea564bbe4
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv
_version_ 1815447203641032704