Sistema de tradução binária de dois níveis para execução multi-ISA

Detalhes bibliográficos
Ano de defesa: 2011
Autor(a) principal: Fajardo Junior, Jair
Orientador(a): Carro, Luigi
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: 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/37186
Resumo: Atualmente, a adição de uma nova função implementada em hardware em um processador não deve impor nenhuma mudança no conjunto de instruções (ISA – Instruction Set Architecture) suportado para atingir melhorias em seu desempenho. O objetivo é manter a compatibilidade retroativa e futura de programas já compilados. Todavia, este fato se torna, muitas vezes, um fator impeditivo para o aprimoramento ou desenvolvimento de uma nova arquitetura. Desta maneira, a utilização de mecanismos de Tradução Binária abre novas oportunidades aos projetistas, já que estes mecanismos permitem a execução de programas já compilados em arquiteturas que suportam conjuntos de instruções diferentes do previsto inicialmente. Assim, para eliminar o custo adicional apresentado por estes sistemas de tradução, será proposto um novo mecanismo de tradução binária dinâmico de dois níveis. Enquanto o primeiro nível é responsável pela tradução de facto das instruções do conjunto nativo para instruções de uma linguagem de máquina intermediária, o segundo nível otimiza estas instruções já traduzidas para serem executadas na arquitetura alvo. O sistema é totalmente flexível, pois pode suportar a tradução de conjuntos de instruções completamente diferentes; assim como a utilização de arquiteturas de hardware com as mais diversas características. Este trabalho apresenta o primeiro esforço nesta direção: um estudo de caso onde ocorre a tradução de código x86 para MIPS (linguagem intermediária), que será otimizado para ser executado em uma arquitetura que realiza reconfiguração dinâmica. Resta demonstrado que é possível manter a compatibilidade binária, com melhoria no desempenho em torno de 45% em média e consumo de energia semelhante ao da execução nativa.
id URGS_e28dd4275accd0d178f1b5dc091262af
oai_identifier_str oai:www.lume.ufrgs.br:10183/37186
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str
spelling Fajardo Junior, JairCarro, LuigiBeck Filho, Antonio Carlos Schneider2012-02-11T01:24:27Z2011http://hdl.handle.net/10183/37186000819365Atualmente, a adição de uma nova função implementada em hardware em um processador não deve impor nenhuma mudança no conjunto de instruções (ISA – Instruction Set Architecture) suportado para atingir melhorias em seu desempenho. O objetivo é manter a compatibilidade retroativa e futura de programas já compilados. Todavia, este fato se torna, muitas vezes, um fator impeditivo para o aprimoramento ou desenvolvimento de uma nova arquitetura. Desta maneira, a utilização de mecanismos de Tradução Binária abre novas oportunidades aos projetistas, já que estes mecanismos permitem a execução de programas já compilados em arquiteturas que suportam conjuntos de instruções diferentes do previsto inicialmente. Assim, para eliminar o custo adicional apresentado por estes sistemas de tradução, será proposto um novo mecanismo de tradução binária dinâmico de dois níveis. Enquanto o primeiro nível é responsável pela tradução de facto das instruções do conjunto nativo para instruções de uma linguagem de máquina intermediária, o segundo nível otimiza estas instruções já traduzidas para serem executadas na arquitetura alvo. O sistema é totalmente flexível, pois pode suportar a tradução de conjuntos de instruções completamente diferentes; assim como a utilização de arquiteturas de hardware com as mais diversas características. Este trabalho apresenta o primeiro esforço nesta direção: um estudo de caso onde ocorre a tradução de código x86 para MIPS (linguagem intermediária), que será otimizado para ser executado em uma arquitetura que realiza reconfiguração dinâmica. Resta demonstrado que é possível manter a compatibilidade binária, com melhoria no desempenho em torno de 45% em média e consumo de energia semelhante ao da execução nativa.In these days, every new added hardware feature must not change the underlying instruction set architecture (ISA), in order to avoid adaptation or recompilation of existing code. Therefore, Binary Translation (BT) opens new possibilities for designers, previously tied to a specific ISA and all its legacy hardware issues, since it allows the execution of already compiled applications on different architectures. To overcome the BT inherent performance penalty, we propose a new mechanism based on a dynamic two-level binary translation system. While the first level is responsible for the BT de facto to an intermediate machine language, the second level optimizes the already translated instructions to be executed on the target architecture. The system is totally flexible, supporting the porting of radically different ISAs and the employment of different target architectures. This work presents the first effort towards this direction: it translates code implemented in the x86 ISA to MIPS assembly (the intermediate language), which will be optimized by the target architecture: a dynamically reconfigurable architecture. In this work is showed that is possible to maintain binary compatibility with performance improvements on average 45% and similar energy consumption when compared to native execution.application/pdfporMicroeletrônicaSistemas embarcadosBinary translationEmbedded systemsReconfigurable architecturesSistema de tradução binária de dois níveis para execução multi-ISATow-level binary translation system for multiple-isa execution info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em MicroeletrônicaPorto Alegre, BR-RS2011mestradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT000819365.pdf.txt000819365.pdf.txtExtracted Texttext/plain178746http://www.lume.ufrgs.br/bitstream/10183/37186/2/000819365.pdf.txt3957c2fc23c0dc4bbad7c20966bf4e37MD52ORIGINAL000819365.pdf000819365.pdfTexto completoapplication/pdf2387649http://www.lume.ufrgs.br/bitstream/10183/37186/1/000819365.pdfb8872dee4bdcb5b83ff1f9414a21b77aMD51THUMBNAIL000819365.pdf.jpg000819365.pdf.jpgGenerated Thumbnailimage/jpeg1121http://www.lume.ufrgs.br/bitstream/10183/37186/3/000819365.pdf.jpg1f4a3fde59a6a25a856af9715a5379adMD5310183/371862018-10-05 08:13:10.923oai:www.lume.ufrgs.br:10183/37186Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532018-10-05T11:13:10Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Sistema de tradução binária de dois níveis para execução multi-ISA
dc.title.alternative.en.fl_str_mv Tow-level binary translation system for multiple-isa execution
title Sistema de tradução binária de dois níveis para execução multi-ISA
spellingShingle Sistema de tradução binária de dois níveis para execução multi-ISA
Fajardo Junior, Jair
Microeletrônica
Sistemas embarcados
Binary translation
Embedded systems
Reconfigurable architectures
title_short Sistema de tradução binária de dois níveis para execução multi-ISA
title_full Sistema de tradução binária de dois níveis para execução multi-ISA
title_fullStr Sistema de tradução binária de dois níveis para execução multi-ISA
title_full_unstemmed Sistema de tradução binária de dois níveis para execução multi-ISA
title_sort Sistema de tradução binária de dois níveis para execução multi-ISA
author Fajardo Junior, Jair
author_facet Fajardo Junior, Jair
author_role author
dc.contributor.author.fl_str_mv Fajardo Junior, Jair
dc.contributor.advisor1.fl_str_mv Carro, Luigi
dc.contributor.advisor-co1.fl_str_mv Beck Filho, Antonio Carlos Schneider
contributor_str_mv Carro, Luigi
Beck Filho, Antonio Carlos Schneider
dc.subject.por.fl_str_mv Microeletrônica
Sistemas embarcados
topic Microeletrônica
Sistemas embarcados
Binary translation
Embedded systems
Reconfigurable architectures
dc.subject.eng.fl_str_mv Binary translation
Embedded systems
Reconfigurable architectures
description Atualmente, a adição de uma nova função implementada em hardware em um processador não deve impor nenhuma mudança no conjunto de instruções (ISA – Instruction Set Architecture) suportado para atingir melhorias em seu desempenho. O objetivo é manter a compatibilidade retroativa e futura de programas já compilados. Todavia, este fato se torna, muitas vezes, um fator impeditivo para o aprimoramento ou desenvolvimento de uma nova arquitetura. Desta maneira, a utilização de mecanismos de Tradução Binária abre novas oportunidades aos projetistas, já que estes mecanismos permitem a execução de programas já compilados em arquiteturas que suportam conjuntos de instruções diferentes do previsto inicialmente. Assim, para eliminar o custo adicional apresentado por estes sistemas de tradução, será proposto um novo mecanismo de tradução binária dinâmico de dois níveis. Enquanto o primeiro nível é responsável pela tradução de facto das instruções do conjunto nativo para instruções de uma linguagem de máquina intermediária, o segundo nível otimiza estas instruções já traduzidas para serem executadas na arquitetura alvo. O sistema é totalmente flexível, pois pode suportar a tradução de conjuntos de instruções completamente diferentes; assim como a utilização de arquiteturas de hardware com as mais diversas características. Este trabalho apresenta o primeiro esforço nesta direção: um estudo de caso onde ocorre a tradução de código x86 para MIPS (linguagem intermediária), que será otimizado para ser executado em uma arquitetura que realiza reconfiguração dinâmica. Resta demonstrado que é possível manter a compatibilidade binária, com melhoria no desempenho em torno de 45% em média e consumo de energia semelhante ao da execução nativa.
publishDate 2011
dc.date.issued.fl_str_mv 2011
dc.date.accessioned.fl_str_mv 2012-02-11T01:24:27Z
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 http://hdl.handle.net/10183/37186
dc.identifier.nrb.pt_BR.fl_str_mv 000819365
url http://hdl.handle.net/10183/37186
identifier_str_mv 000819365
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: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/37186/2/000819365.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/37186/1/000819365.pdf
http://www.lume.ufrgs.br/bitstream/10183/37186/3/000819365.pdf.jpg
bitstream.checksum.fl_str_mv 3957c2fc23c0dc4bbad7c20966bf4e37
b8872dee4bdcb5b83ff1f9414a21b77a
1f4a3fde59a6a25a856af9715a5379ad
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_ 1831315905021214720