Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios

Detalhes bibliográficos
Ano de defesa: 2012
Autor(a) principal: Baixo, André Oliveira Loureiro do, 1986-
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: [s.n.]
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://hdl.handle.net/20.500.12733/1618637
Resumo: Orientador: Guido Costa Souza de Araújo
id UNICAMP-30_a3193e1e7cb3ab918ddf1da065dfad7e
oai_identifier_str oai::877881
network_acronym_str UNICAMP-30
network_name_str Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
repository_id_str
spelling Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágiosMechanism for speculative execution of applications parallelized by DOPIPE techniques using stage replicationArquitetura de computadorProcessamento paralelo (Computadores)Compiladores (Programas de computador)Computer architectureParallel processing (Electronic computers)Compilers (Computer programs)Orientador: Guido Costa Souza de AraújoDissertação (mestrado) - Universidade Estadual de Campinas, Instituto de ComputaçãoResumo: A utilização máxima dos núcleos de arquiteturas multi-processadas é fundamental para permitir uma utilização completa do paralelismo disponível em processadores modernos. A fim de obter desempenho escalável, técnicas de paralelização requerem um ajuste cuidadoso de: (a) mecanismo arquitetural para especulação; (b) ambiente de execução; e (c) transformações baseadas em software. Mecanismos de hardware e software já foram propostos para tratar esse problema. Estes mecanismos, ou requerem alterações profundas (e arriscadas) nos protocolos de coerência de cache, ou exibem uma baixa escalabilidade de desempenho para uma gama de aplicações. Trabalhos recentes em técnicas de paralelização baseadas em DOPIPE (como DSWP) sugerem que a combinação de versionamento de dados baseado em paginação com especulação em software pode resultar em bons ganhos de desempenho. Embora uma solução apenas em software pareça atrativa do ponto de vista da indústria, essa não utiliza todo o potencial da microarquitetura para detectar e explorar paralelismo. A adição de tags às caches para habilitar o versionamento de dados, conforme recentemente anunciado pela indústria, pode permitir uma melhor exploração de paralelismo no nível da microarquitetura. Neste trabalho, é apresentado um modelo de execução que permite tanto a especulação baseada em DOPIPE, como as técnicas de paralelização especulativas tradicionais. Este modelo é baseado em uma simples abordagem com tags de cache para o versionamento de dados, que interage naturalmente com protocolos de coerência de cache tradicionais, não necessitando que estes sejam alterados. Resultados experimentais, utilizando benchmarks SPEC e PARSEC, revelam um ganho de desempenho geométrico médio de 21.6× para nove programas sequenciais em uma máquina simulada de 24 núcleos, demonstrando uma melhora na escalabilidade quando comparada a uma abordagem apenas em softwareAbstract: Maximal utilization of cores in multicore architectures is key to realize the potential performance available from modern microprocessors. In order to achieve scalable performance, parallelization techniques rely on carefully tunning speculative architecture support, runtime environment and software-based transformations. Hardware and software mechanisms have already been proposed to address this problem. They either require deep (and risky) changes on the existing hardware and cache coherence protocols, or exhibit poor performance scalability for a range of applications. Recent work on DOPIPE-based parallelization techniques (e.g. DSWP) has suggested that the combination of page-based data versioning with software speculation can result in good speed-ups. Although a softwareonly solution seems very attractive from an industry point-of-view, it does not enable the whole potential of the microarchitecture in detecting and exploiting parallelism. The addition of cache tags as an enabler for data versioning, as recently announced in the industry, could allow a better exploitation of parallelism at the microarchitecture level. In this paper we present an execution model that supports both DOPIPE-based speculation and traditional speculative parallelization techniques. It is based on a simple cache tagging approach for data versioning, which integrates smoothly with typical cache coherence protocols, and does not require any changes to them. Experimental results, using SPEC and PARSEC benchmarks, reveal a geometric mean speedup of 21.6x for nine sequential programs in a 24-core simulated CMP, while demonstrate improved scalability when compared to a software-only approachMestradoCiência da ComputaçãoMestre em Ciência da Computação[s.n.]Araújo, Guido Costa Souza de, 1962-Breternitz Junior, MauricioAzevedo, Rodolfo Jardim deUniversidade Estadual de Campinas (UNICAMP). Instituto de ComputaçãoPrograma de Pós-Graduação em Ciência da ComputaçãoUNIVERSIDADE ESTADUAL DE CAMPINASBaixo, André Oliveira Loureiro do, 1986-2012info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdf77 f. : il.https://hdl.handle.net/20.500.12733/1618637BAIXO, André Oliveira Loureiro do. Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios. 2012. 77 f. Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1618637. Acesso em: 28 fev. 2025.https://repositorio.unicamp.br/acervo/detalhe/877881porreponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)instname:Universidade Estadual de Campinas (UNICAMP)instacron:UNICAMPinfo:eu-repo/semantics/openAccess2017-02-18T06:45:40Zoai::877881Biblioteca Digital de Teses e DissertaçõesPUBhttp://repositorio.unicamp.br/oai/tese/oai.aspsbubd@unicamp.bropendoar:2017-02-18T06:45:40Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP)false
dc.title.none.fl_str_mv Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
Mechanism for speculative execution of applications parallelized by DOPIPE techniques using stage replication
title Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
spellingShingle Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
Baixo, André Oliveira Loureiro do, 1986-
Arquitetura de computador
Processamento paralelo (Computadores)
Compiladores (Programas de computador)
Computer architecture
Parallel processing (Electronic computers)
Compilers (Computer programs)
title_short Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
title_full Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
title_fullStr Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
title_full_unstemmed Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
title_sort Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios
author Baixo, André Oliveira Loureiro do, 1986-
author_facet Baixo, André Oliveira Loureiro do, 1986-
author_role author
dc.contributor.none.fl_str_mv Araújo, Guido Costa Souza de, 1962-
Breternitz Junior, Mauricio
Azevedo, Rodolfo Jardim de
Universidade Estadual de Campinas (UNICAMP). Instituto de Computação
Programa de Pós-Graduação em Ciência da Computação
UNIVERSIDADE ESTADUAL DE CAMPINAS
dc.contributor.author.fl_str_mv Baixo, André Oliveira Loureiro do, 1986-
dc.subject.por.fl_str_mv Arquitetura de computador
Processamento paralelo (Computadores)
Compiladores (Programas de computador)
Computer architecture
Parallel processing (Electronic computers)
Compilers (Computer programs)
topic Arquitetura de computador
Processamento paralelo (Computadores)
Compiladores (Programas de computador)
Computer architecture
Parallel processing (Electronic computers)
Compilers (Computer programs)
description Orientador: Guido Costa Souza de Araújo
publishDate 2012
dc.date.none.fl_str_mv 2012
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/20.500.12733/1618637
BAIXO, André Oliveira Loureiro do. Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios. 2012. 77 f. Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1618637. Acesso em: 28 fev. 2025.
url https://hdl.handle.net/20.500.12733/1618637
identifier_str_mv BAIXO, André Oliveira Loureiro do. Mecanismo para execução especulativa de aplicações paralelizadas por técnicas DOPIPE usando replicação de estágios. 2012. 77 f. Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1618637. Acesso em: 28 fev. 2025.
dc.language.iso.fl_str_mv por
language por
dc.relation.none.fl_str_mv https://repositorio.unicamp.br/acervo/detalhe/877881
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
77 f. : il.
dc.publisher.none.fl_str_mv [s.n.]
publisher.none.fl_str_mv [s.n.]
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
instname:Universidade Estadual de Campinas (UNICAMP)
instacron:UNICAMP
instname_str Universidade Estadual de Campinas (UNICAMP)
instacron_str UNICAMP
institution UNICAMP
reponame_str Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
collection Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP)
repository.mail.fl_str_mv sbubd@unicamp.br
_version_ 1829137531917041664