Um compilador paralelizante com detecção de paralelismo na linguagem intermediária
| Ano de defesa: | 1994 |
|---|---|
| Autor(a) principal: | |
| Orientador(a): | |
| Banca de defesa: | |
| Tipo de documento: | Dissertação |
| Tipo de acesso: | Acesso aberto |
| Idioma: | por |
| Instituição de defesa: |
Biblioteca Digitais de Teses e Dissertações da USP
|
| Programa de Pós-Graduação: |
Não Informado pela instituição
|
| Departamento: |
Não Informado pela instituição
|
| País: |
Não Informado pela instituição
|
| Palavras-chave em Português: | |
| Link de acesso: | https://www.teses.usp.br/teses/disponiveis/3/3141/tde-06122024-085501/ |
Resumo: | Os avanços nos vários campos da ciência tem exigidos níveis de desempenho dos computadores cada vez mais altos. Por isso, o objetivo desta pesquisa foi o desenvolvimento de um compilador paralelizante portável que suporta diferentes tipos de máquinas e é capaz de extrair o paralelismo de programas sequênciais. O compilador paralelizante foi projetado tendo em vista as portabilidades do front-end e do back-end, e a geração de código executável paralelo eficiente. Por isso, escolheu-se o compilador GNU gcc como o compilador-base. A detecção de paralelismo no nível da linguagem intermediária traz grandes vantagens sobre as abordagens tradicionais que, em geral, realizam toda a detecção ou no nível do código fonte ou em representações intermediárias de nível mais alto. Portanto, neste compilador paralelizante toda a detecção de paralelismo e as transformações de código são aplicadas sobre a linguagem de transferência de registradores, a linguagem intermediária do GNU gcc. O esquema de auto-escalonamento uniforme é uma técnica desenvolvida durante esta pesquisa, que oferece balanceamento de carga melhorado com baixo overhead. Além disso, ela permite a exploração do paralelismo aninhado encontrado em blocos e laços paralelos. |
| id |
USP_91aec5c53acbc55b10b8e301449c0367 |
|---|---|
| oai_identifier_str |
oai:teses.usp.br:tde-06122024-085501 |
| network_acronym_str |
USP |
| network_name_str |
Biblioteca Digital de Teses e Dissertações da USP |
| repository_id_str |
|
| spelling |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediáriaUntitled in englishAuto-escalonamentoAutoscalingCompilador paralelizanteIntermediate languageLinguagem intermediáriaParallelizing compilerOs avanços nos vários campos da ciência tem exigidos níveis de desempenho dos computadores cada vez mais altos. Por isso, o objetivo desta pesquisa foi o desenvolvimento de um compilador paralelizante portável que suporta diferentes tipos de máquinas e é capaz de extrair o paralelismo de programas sequênciais. O compilador paralelizante foi projetado tendo em vista as portabilidades do front-end e do back-end, e a geração de código executável paralelo eficiente. Por isso, escolheu-se o compilador GNU gcc como o compilador-base. A detecção de paralelismo no nível da linguagem intermediária traz grandes vantagens sobre as abordagens tradicionais que, em geral, realizam toda a detecção ou no nível do código fonte ou em representações intermediárias de nível mais alto. Portanto, neste compilador paralelizante toda a detecção de paralelismo e as transformações de código são aplicadas sobre a linguagem de transferência de registradores, a linguagem intermediária do GNU gcc. O esquema de auto-escalonamento uniforme é uma técnica desenvolvida durante esta pesquisa, que oferece balanceamento de carga melhorado com baixo overhead. Além disso, ela permite a exploração do paralelismo aninhado encontrado em blocos e laços paralelos.The advances in the various fields of science claim for ever increasing performance levels from the computers. Therefore, the goal of this research was to develop a portable parallelizing compiler that targets multiple kinds of machines and is capable of extracting the parallelism from sequential programs. The portable parallelizing compiler was designed enforcing front-end and backend portability, and the generation of execution efficient parallel executable code. Therefore, the GNU gcc compiler was chosen as the base compiler. The detection of parallelism in the intermediate language level offers great advantages over traditional approaches that usually perform all the detection either on the source code level or on higher level intermediate representations. Therefore, in this parallelizing compiler all the detection of parallelism and code transformations are applied on the Register Transfer Language, the intermediate language of GNU gcc. The Uniform Auto-Scheduling scheme is a technique developed during the research, which allows improved load balancing with low overhead. Moreover, it allows the exploitation of the nested parallelisms found in parallel blocks and parallel loops.Biblioteca Digitais de Teses e Dissertações da USPSato, Liria MatsumotoHsiang, Hsueh Tsung1994-06-24info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://www.teses.usp.br/teses/disponiveis/3/3141/tde-06122024-085501/reponame:Biblioteca Digital de Teses e Dissertações da USPinstname:Universidade de São Paulo (USP)instacron:USPLiberar o conteúdo para acesso público.info:eu-repo/semantics/openAccesspor2024-12-06T11:05:02Zoai:teses.usp.br:tde-06122024-085501Biblioteca Digital de Teses e Dissertaçõeshttp://www.teses.usp.br/PUBhttp://www.teses.usp.br/cgi-bin/mtd2br.plvirginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.bropendoar:27212024-12-06T11:05:02Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)false |
| dc.title.none.fl_str_mv |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária Untitled in english |
| title |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária |
| spellingShingle |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária Hsiang, Hsueh Tsung Auto-escalonamento Autoscaling Compilador paralelizante Intermediate language Linguagem intermediária Parallelizing compiler |
| title_short |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária |
| title_full |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária |
| title_fullStr |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária |
| title_full_unstemmed |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária |
| title_sort |
Um compilador paralelizante com detecção de paralelismo na linguagem intermediária |
| author |
Hsiang, Hsueh Tsung |
| author_facet |
Hsiang, Hsueh Tsung |
| author_role |
author |
| dc.contributor.none.fl_str_mv |
Sato, Liria Matsumoto |
| dc.contributor.author.fl_str_mv |
Hsiang, Hsueh Tsung |
| dc.subject.por.fl_str_mv |
Auto-escalonamento Autoscaling Compilador paralelizante Intermediate language Linguagem intermediária Parallelizing compiler |
| topic |
Auto-escalonamento Autoscaling Compilador paralelizante Intermediate language Linguagem intermediária Parallelizing compiler |
| description |
Os avanços nos vários campos da ciência tem exigidos níveis de desempenho dos computadores cada vez mais altos. Por isso, o objetivo desta pesquisa foi o desenvolvimento de um compilador paralelizante portável que suporta diferentes tipos de máquinas e é capaz de extrair o paralelismo de programas sequênciais. O compilador paralelizante foi projetado tendo em vista as portabilidades do front-end e do back-end, e a geração de código executável paralelo eficiente. Por isso, escolheu-se o compilador GNU gcc como o compilador-base. A detecção de paralelismo no nível da linguagem intermediária traz grandes vantagens sobre as abordagens tradicionais que, em geral, realizam toda a detecção ou no nível do código fonte ou em representações intermediárias de nível mais alto. Portanto, neste compilador paralelizante toda a detecção de paralelismo e as transformações de código são aplicadas sobre a linguagem de transferência de registradores, a linguagem intermediária do GNU gcc. O esquema de auto-escalonamento uniforme é uma técnica desenvolvida durante esta pesquisa, que oferece balanceamento de carga melhorado com baixo overhead. Além disso, ela permite a exploração do paralelismo aninhado encontrado em blocos e laços paralelos. |
| publishDate |
1994 |
| dc.date.none.fl_str_mv |
1994-06-24 |
| 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://www.teses.usp.br/teses/disponiveis/3/3141/tde-06122024-085501/ |
| url |
https://www.teses.usp.br/teses/disponiveis/3/3141/tde-06122024-085501/ |
| dc.language.iso.fl_str_mv |
por |
| language |
por |
| dc.relation.none.fl_str_mv |
|
| dc.rights.driver.fl_str_mv |
Liberar o conteúdo para acesso público. info:eu-repo/semantics/openAccess |
| rights_invalid_str_mv |
Liberar o conteúdo para acesso público. |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.coverage.none.fl_str_mv |
|
| dc.publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
| publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
| dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da USP instname:Universidade de São Paulo (USP) instacron:USP |
| instname_str |
Universidade de São Paulo (USP) |
| instacron_str |
USP |
| institution |
USP |
| reponame_str |
Biblioteca Digital de Teses e Dissertações da USP |
| collection |
Biblioteca Digital de Teses e Dissertações da USP |
| repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP) |
| repository.mail.fl_str_mv |
virginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.br |
| _version_ |
1865491669337505792 |