Padrões arquitecturais e de desenho para aplicações paralelas

Detalhes bibliográficos
Autor(a) principal: Leitão, Vasco Luzio
Data de Publicação: 2021
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: https://hdl.handle.net/1822/82454
Resumo: Dissertação de mestrado integrado em Engenharia Informática
id RCAP_904391aace9c6709c594a742e7556f46
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/82454
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Padrões arquitecturais e de desenho para aplicações paralelasSoftware architectureHPCAlgoritmic skeletonsArquitectura de softwareHPCEsqueletos algorítmicosEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaDissertação de mestrado integrado em Engenharia InformáticaParallel programming is becoming increasingly common, given the evolution of hardware into multicore and manycore architectures. To take advantage of these architectures it is necessary to develop parallel code, since the automatic generation of parallel code from a sequential base code is not a viable option. Parallel programming tends to be complex and therefore the developed code tends to be difficult to maintain or even difficult to reuse. This dissertation aims to explore the use of algorithmic skeletons in the development of parallel applications in order to allow faster development as well as the production of higher quality final software. A skeleton framework was developed. The skeletons were developed through a technique called ”mixin layers”, which makes use of generic classes of C++. A great emphasis wass given to the use of generic classes and other alternatives in the construction of the skeletons. Finally, the performance of these solutions were evaluated in comparison with solutions already consolidated within parallel computing. For that, the codes of a set of applications were restructured in order to make use of the skeletons provided by the libraryA programação paralela está a tornar-se cada vez mais comum, dada a evolução do hardware para arquiteturas multicore e manycore. Para tirar partido destas arquitecturas é necessário desenvolver código paralelo, uma vez que a geração automática de código paralelo a partir de um código base sequencial não é uma opção viável. A programação paralela tende a ser complexa e por isso o código desenvolvido tende a ser de difícil manutenção ou até mesmo de difícil reutilização. Esta dissertação pretende explorar utilização de esqueletos algorítmicos no desenvolvimento de aplicações paralelas de forma a permitir um desenvolvimento mais célere assim como a produção de um software final de maior qualidade. Foi desenvolvida uma biblioteca de esqueletos. Os esqueletos foram desenvolvidos através de uma técnica denominada “mixin layers”, que faz uso de classes genéricas de C++. Foi dada uma grande ênfase à utilização destas classes genéricas e outras alternativas na construção dos esqueletos. Por fim foi avaliada a performance desta solução em comparação com soluções já consolidadas dentro da computação paralela. Para isso foram reestruturados os códigos de um conjunto de aplicações de modo a fazerem uso dos esqueletos disponibilizados pela biblioteca.Sobral, João Luís FerreiraUniversidade do MinhoLeitão, Vasco Luzio2021-12-222021-12-22T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1822/82454por203127200info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-07-21T12:26:50Zoai:repositorium.sdum.uminho.pt:1822/82454Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T19:21:19.676483Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Padrões arquitecturais e de desenho para aplicações paralelas
title Padrões arquitecturais e de desenho para aplicações paralelas
spellingShingle Padrões arquitecturais e de desenho para aplicações paralelas
Leitão, Vasco Luzio
Software architecture
HPC
Algoritmic skeletons
Arquitectura de software
HPC
Esqueletos algorítmicos
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Padrões arquitecturais e de desenho para aplicações paralelas
title_full Padrões arquitecturais e de desenho para aplicações paralelas
title_fullStr Padrões arquitecturais e de desenho para aplicações paralelas
title_full_unstemmed Padrões arquitecturais e de desenho para aplicações paralelas
title_sort Padrões arquitecturais e de desenho para aplicações paralelas
author Leitão, Vasco Luzio
author_facet Leitão, Vasco Luzio
author_role author
dc.contributor.none.fl_str_mv Sobral, João Luís Ferreira
Universidade do Minho
dc.contributor.author.fl_str_mv Leitão, Vasco Luzio
dc.subject.por.fl_str_mv Software architecture
HPC
Algoritmic skeletons
Arquitectura de software
HPC
Esqueletos algorítmicos
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic Software architecture
HPC
Algoritmic skeletons
Arquitectura de software
HPC
Esqueletos algorítmicos
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description Dissertação de mestrado integrado em Engenharia Informática
publishDate 2021
dc.date.none.fl_str_mv 2021-12-22
2021-12-22T00:00:00Z
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/1822/82454
url https://hdl.handle.net/1822/82454
dc.language.iso.fl_str_mv por
language por
dc.relation.none.fl_str_mv 203127200
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 Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799132679696809984