Reusing values in a dynamic conditional execution architecture

Detalhes bibliográficos
Ano de defesa: 2004
Autor(a) principal: Santos, Tatiana Gadelha Serra dos
Orientador(a): Bampi, Sergio
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Não Informado pela instituição
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:
Palavras-chave em Inglês:
Link de acesso: http://hdl.handle.net/10183/6877
Resumo: A Execução Condicional Dinâmica (DCE) é uma alternativa para redução dos custos relacionados a desvios previstos incorretamente. A idéia básica é buscar todos os fluxos produzidos por um desvio que obedecem algumas restrições relativas à complexidade e tamanho. Como conseqüência, um número menor de previsões é executado, e assim, um número mais baixo de desvios é incorretamente previsto. Contudo, tal como outras soluções multi-fluxo, o DCE requer uma estrutura de controle mais complexa. Na arquitetura DCE, é observado que várias réplicas da mesma instrução são despachadas para as unidades funcionais, bloqueando recursos que poderiam ser utilizados por outras instruções. Essas réplicas são geradas após o ponto de convergência dos diversos fluxos em execução e são necessárias para garantir a semântica correta entre instruções dependentes de dados. Além disso, o DCE continua produzindo réplicas até que o desvio que gerou os fluxos seja resolvido. Assim, uma seção completa do código pode ser replicado, reduzindo o desempenho. Uma alternativa natural para esse problema é reusar essas seções (ou traços) que são replicadas. O objetivo desse trabalho é analisar e avaliar a efetividade do reuso de valores na arquitetura DCE. Como será apresentado, o princípio do reuso, em diferentes granularidades, pode reduzir efetivamente o problema das réplicas e levar a aumentos de desempenho.
id URGS_bf87998f7b3cf4663eb2d983a040d734
oai_identifier_str oai:www.lume.ufrgs.br:10183/6877
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str
spelling Santos, Tatiana Gadelha Serra dosBampi, SergioNavaux, Philippe Olivier Alexandre2007-06-06T19:01:29Z2004http://hdl.handle.net/10183/6877000448568A Execução Condicional Dinâmica (DCE) é uma alternativa para redução dos custos relacionados a desvios previstos incorretamente. A idéia básica é buscar todos os fluxos produzidos por um desvio que obedecem algumas restrições relativas à complexidade e tamanho. Como conseqüência, um número menor de previsões é executado, e assim, um número mais baixo de desvios é incorretamente previsto. Contudo, tal como outras soluções multi-fluxo, o DCE requer uma estrutura de controle mais complexa. Na arquitetura DCE, é observado que várias réplicas da mesma instrução são despachadas para as unidades funcionais, bloqueando recursos que poderiam ser utilizados por outras instruções. Essas réplicas são geradas após o ponto de convergência dos diversos fluxos em execução e são necessárias para garantir a semântica correta entre instruções dependentes de dados. Além disso, o DCE continua produzindo réplicas até que o desvio que gerou os fluxos seja resolvido. Assim, uma seção completa do código pode ser replicado, reduzindo o desempenho. Uma alternativa natural para esse problema é reusar essas seções (ou traços) que são replicadas. O objetivo desse trabalho é analisar e avaliar a efetividade do reuso de valores na arquitetura DCE. Como será apresentado, o princípio do reuso, em diferentes granularidades, pode reduzir efetivamente o problema das réplicas e levar a aumentos de desempenho.The Dynamic Conditional Execution (DCE) is an alternative to reduce the cost of mispredicted branches. The basic idea is to fetch all paths produced by a branch that obey certain restrictions regarding complexity and size. As a consequence, a smaller number of predictions is performed, and therefore, a lower number branches is mispredicted. Nevertheless, as other multipath solutions, DCE requires a more complex control engine. In a DCE architecture, one may observe that several replicas of the same instruction are dispatched to the functional units, blocking resources that might be used by other instructions. Those replicas are produced after the join point of the paths and are required to guarantee the correct semantic among data dependent instructions. Moreover, DCE continues producing replicas until the branch that generated the paths is resolved. Thus, a whole section of code may be replicated, harming performance. A natural alternative to this problem is the attempt to reuse those replicated sections, namely the replicated traces. The goal of this work is to analyze and evaluate the effectiveness of value reuse in DCE architecture. As it will be presented, the principIe of reuse, in different granularities, can reduce effectively the replica problem and lead to performance improvements.application/pdfengArquiteturas super escalaresSimulação computacionalSuperscalar architectureInstruction reuseTrace reuseMultipath executionDynamic conditional executionReusing values in a dynamic conditional execution architectureReusando Valores em uma Arquitetura com Execução Condicional Dinâmica info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2004doutoradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL000448568.pdf000448568.pdfTexto completo (inglês)application/pdf1942631http://www.lume.ufrgs.br/bitstream/10183/6877/1/000448568.pdfab2f7bca4779fc50334812bda5a7448aMD51TEXT000448568.pdf.txt000448568.pdf.txtExtracted Texttext/plain628202http://www.lume.ufrgs.br/bitstream/10183/6877/2/000448568.pdf.txtd894c54c55c7bdf7101d551fd7186078MD52THUMBNAIL000448568.pdf.jpg000448568.pdf.jpgGenerated Thumbnailimage/jpeg1092http://www.lume.ufrgs.br/bitstream/10183/6877/3/000448568.pdf.jpgbc33db9bb48783b0a8ccc0cdad8d9309MD5310183/68772021-05-07 05:12:31.373936oai:www.lume.ufrgs.br:10183/6877Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532021-05-07T08:12:31Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Reusing values in a dynamic conditional execution architecture
dc.title.alternative.pt.fl_str_mv Reusando Valores em uma Arquitetura com Execução Condicional Dinâmica
title Reusing values in a dynamic conditional execution architecture
spellingShingle Reusing values in a dynamic conditional execution architecture
Santos, Tatiana Gadelha Serra dos
Arquiteturas super escalares
Simulação computacional
Superscalar architecture
Instruction reuse
Trace reuse
Multipath execution
Dynamic conditional execution
title_short Reusing values in a dynamic conditional execution architecture
title_full Reusing values in a dynamic conditional execution architecture
title_fullStr Reusing values in a dynamic conditional execution architecture
title_full_unstemmed Reusing values in a dynamic conditional execution architecture
title_sort Reusing values in a dynamic conditional execution architecture
author Santos, Tatiana Gadelha Serra dos
author_facet Santos, Tatiana Gadelha Serra dos
author_role author
dc.contributor.author.fl_str_mv Santos, Tatiana Gadelha Serra dos
dc.contributor.advisor1.fl_str_mv Bampi, Sergio
dc.contributor.advisor-co1.fl_str_mv Navaux, Philippe Olivier Alexandre
contributor_str_mv Bampi, Sergio
Navaux, Philippe Olivier Alexandre
dc.subject.por.fl_str_mv Arquiteturas super escalares
Simulação computacional
topic Arquiteturas super escalares
Simulação computacional
Superscalar architecture
Instruction reuse
Trace reuse
Multipath execution
Dynamic conditional execution
dc.subject.eng.fl_str_mv Superscalar architecture
Instruction reuse
Trace reuse
Multipath execution
Dynamic conditional execution
description A Execução Condicional Dinâmica (DCE) é uma alternativa para redução dos custos relacionados a desvios previstos incorretamente. A idéia básica é buscar todos os fluxos produzidos por um desvio que obedecem algumas restrições relativas à complexidade e tamanho. Como conseqüência, um número menor de previsões é executado, e assim, um número mais baixo de desvios é incorretamente previsto. Contudo, tal como outras soluções multi-fluxo, o DCE requer uma estrutura de controle mais complexa. Na arquitetura DCE, é observado que várias réplicas da mesma instrução são despachadas para as unidades funcionais, bloqueando recursos que poderiam ser utilizados por outras instruções. Essas réplicas são geradas após o ponto de convergência dos diversos fluxos em execução e são necessárias para garantir a semântica correta entre instruções dependentes de dados. Além disso, o DCE continua produzindo réplicas até que o desvio que gerou os fluxos seja resolvido. Assim, uma seção completa do código pode ser replicado, reduzindo o desempenho. Uma alternativa natural para esse problema é reusar essas seções (ou traços) que são replicadas. O objetivo desse trabalho é analisar e avaliar a efetividade do reuso de valores na arquitetura DCE. Como será apresentado, o princípio do reuso, em diferentes granularidades, pode reduzir efetivamente o problema das réplicas e levar a aumentos de desempenho.
publishDate 2004
dc.date.issued.fl_str_mv 2004
dc.date.accessioned.fl_str_mv 2007-06-06T19:01:29Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10183/6877
dc.identifier.nrb.pt_BR.fl_str_mv 000448568
url http://hdl.handle.net/10183/6877
identifier_str_mv 000448568
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:Biblioteca Digital de Teses e Dissertações 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 Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/6877/1/000448568.pdf
http://www.lume.ufrgs.br/bitstream/10183/6877/2/000448568.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/6877/3/000448568.pdf.jpg
bitstream.checksum.fl_str_mv ab2f7bca4779fc50334812bda5a7448a
d894c54c55c7bdf7101d551fd7186078
bc33db9bb48783b0a8ccc0cdad8d9309
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br||lume@ufrgs.br
_version_ 1831315815614382080