Optimização e Geração de código OpenCL para computação embutida

Detalhes bibliográficos
Autor(a) principal: Luis Alexandre Cubal dos Reis
Data de Publicação: 2014
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/10216/75062
Resumo: High-performance computing is increasingly multi-core. As such, sequencial computations must be replaced by their parallel counterparts for the hardware potential to be achieved. Programmers typically develop and validate sequential applications using high-level languages such as MATLAB and later manually migrate to lower-level parallel languages such as CUDA and OpenCL. This process is time consuming and error prone, so automatic source-to-source approaches are highly desirable, even when there is a considerable slow-down compared to the manual porting process. We present a tool capable of processing MATLAB and output the equivalent OpenCL and C wrapper code, based on an existing framework called MATISSE, which is already capable of generating C code from MATLAB source code. OpenCL generation is not entirely automated since it relies on the manual insertion of directives to guide the compilation. Future work could reduce this effort, since some directives are redundant and could be inferred by the compiler and others could be automatically injected into the code by Aspect-Oriented languages and tools.
id RCAP_5643b867638b430323efd56e524de791
oai_identifier_str oai:repositorio-aberto.up.pt:10216/75062
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 Optimização e Geração de código OpenCL para computação embutidaEngenharia electrotécnica, electrónica e informáticaElectrical engineering, Electronic engineering, Information engineeringHigh-performance computing is increasingly multi-core. As such, sequencial computations must be replaced by their parallel counterparts for the hardware potential to be achieved. Programmers typically develop and validate sequential applications using high-level languages such as MATLAB and later manually migrate to lower-level parallel languages such as CUDA and OpenCL. This process is time consuming and error prone, so automatic source-to-source approaches are highly desirable, even when there is a considerable slow-down compared to the manual porting process. We present a tool capable of processing MATLAB and output the equivalent OpenCL and C wrapper code, based on an existing framework called MATISSE, which is already capable of generating C code from MATLAB source code. OpenCL generation is not entirely automated since it relies on the manual insertion of directives to guide the compilation. Future work could reduce this effort, since some directives are redundant and could be inferred by the compiler and others could be automatically injected into the code by Aspect-Oriented languages and tools.2014-07-172014-07-17T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/10216/75062TID:201311119porLuis Alexandre Cubal dos Reisinfo: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-11-29T15:09:20Zoai:repositorio-aberto.up.pt:10216/75062Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T00:16:57.736928Repositó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 Optimização e Geração de código OpenCL para computação embutida
title Optimização e Geração de código OpenCL para computação embutida
spellingShingle Optimização e Geração de código OpenCL para computação embutida
Luis Alexandre Cubal dos Reis
Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
title_short Optimização e Geração de código OpenCL para computação embutida
title_full Optimização e Geração de código OpenCL para computação embutida
title_fullStr Optimização e Geração de código OpenCL para computação embutida
title_full_unstemmed Optimização e Geração de código OpenCL para computação embutida
title_sort Optimização e Geração de código OpenCL para computação embutida
author Luis Alexandre Cubal dos Reis
author_facet Luis Alexandre Cubal dos Reis
author_role author
dc.contributor.author.fl_str_mv Luis Alexandre Cubal dos Reis
dc.subject.por.fl_str_mv Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
topic Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
description High-performance computing is increasingly multi-core. As such, sequencial computations must be replaced by their parallel counterparts for the hardware potential to be achieved. Programmers typically develop and validate sequential applications using high-level languages such as MATLAB and later manually migrate to lower-level parallel languages such as CUDA and OpenCL. This process is time consuming and error prone, so automatic source-to-source approaches are highly desirable, even when there is a considerable slow-down compared to the manual porting process. We present a tool capable of processing MATLAB and output the equivalent OpenCL and C wrapper code, based on an existing framework called MATISSE, which is already capable of generating C code from MATLAB source code. OpenCL generation is not entirely automated since it relies on the manual insertion of directives to guide the compilation. Future work could reduce this effort, since some directives are redundant and could be inferred by the compiler and others could be automatically injected into the code by Aspect-Oriented languages and tools.
publishDate 2014
dc.date.none.fl_str_mv 2014-07-17
2014-07-17T00: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/10216/75062
TID:201311119
url https://hdl.handle.net/10216/75062
identifier_str_mv TID:201311119
dc.language.iso.fl_str_mv por
language por
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_ 1799136089807519745