Estudo e implementação da otimização de Preload de dados usando o processador XScale

Detalhes bibliográficos
Ano de defesa: 2005
Autor(a) principal: Oliveira, Marcio Rodrigo de
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/1602694
Resumo: Orientador: Guido Costa Souza Araujo
id UNICAMP-30_1a5b769d62b767ed6bd804b8d64cca2a
oai_identifier_str oai::368249
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 Estudo e implementação da otimização de Preload de dados usando o processador XScaleStudy and implementation of data Preload optimization using XScaleCompiladores (Computadores)Sistemas de memória de computadoresArquitetura de computadorCompiling (Eletronic computers)Computer memory systemsComputer architectureOrientador: Guido Costa Souza AraujoDissertação (mestrado) - Universidade Estadual de Campinas, Instituto de ComputaçãoResumo: Atualmente existe um grande mercado para o desenvolvimento de aplicações para sistemas embutidos, pois estes estão fazendo parte crescente do cotidiano das pessoas em produtos de eletrônica de consumo como telefones celulares, palmtop's, agendas eletrônicas, etc. Os produtos de eletrônica de consumo possuem grandes restrições de projeto, tais como custo reduzido, baixo consumo de potência e muitas vezes alto desempenho. Deste modo, o código produzido pelos compiladores para os programas executados nestes produtos, devem executar rapidamente, economizando energia de suas baterias. Estes melhoramentos são alcançados através de transformações no programa fonte chamadas de otimizações de código. A otimização preload de dados consiste em mover dados de um alto nível da hierarquia de memória para um baixo nível dessa hierarquia antes deste dado ser usado. Este é um método que pode reduzir a penalidade da latência de memória. Este trabalho mostra o desenvolvimento da otimização de preload de dados no compilador Xingo para a plataforma Pocket PC, cuja arquitetura possui um processador XScale. A arquitetura XScale possui a instrução preload, cujo objetivo é fazer uma pré-busca de dados para a cache. Esta otimização insere (através de previsões) a instrução preload no código intermediário do programa fonte, tentando prever quais dados serão usados e que darão miss na cache (trazendo-os para esta cache antes de seu uso). Com essa estratégia, tenta-se minimizar a porcentagem de misses na cache de dados, reduzindo o tempo gasto em acessos à memória. Foram usados neste trabalho vários programas de benchmarks conhecidos para a avaliação dos resultados, dentre eles destacam-se DSPstone e o MiBench. Os resultados mostram que esta otimização de preload de dados para o Pocket PC produz um aumento considerável de desempenho para a maioria dos programa testados, sendo que em vários programas observou-se uma melhora de desempenho maior que 30%!Abstract: Nowadays, there is a big market for applications for embedded systems, in products as celIular phones, palmtops, electronic schedulers, etc. Consumer electronics are designed under stringent design constraints, like reduced cost, low power consumption and high performance. This way, the code produced by compiling programs to execute on these products, must execute quickly, and also should save power consumption. In order to achieve that, code optimizations must be performed at compile time. Data preload consists of moving data from a higher leveI of the memory hierarchy to a lower leveI before data is actualIy needed, thus reducing memory latency penalty. This dissertation shows how data preload optimization was implemented into the Xingo compiler for the Pocket PC platform, a XScale based processor. The XScale architecture has a preload instruction, whose main objective is to prefetch program data into cache. This optimization inserts (through heuristics) preload instructions into the program source code, in order to anticipate which data will be used. This strategy minimizes cache misses, allowing to reduce the cache miss latency while running the program code. Some benchmark programs have been used for evaluation, like DSPstone and MiBench. The results show a considerable performance improvement for almost alI tested programs, subject to the preload optimization. Many of the tested programs achieved performance improvements larger than 30%MestradoOtimização de CódigoMestre em Ciência da Computação[s.n.]Araújo, Guido Costa Souza de, 1962-Santos, Andre de MedeirosCentoducatte, Paulo CesarRigo, SandroUniversidade Estadual de Campinas (UNICAMP). Instituto de ComputaçãoPrograma de Pós-Graduação não informadoUNIVERSIDADE ESTADUAL DE CAMPINASOliveira, Marcio Rodrigo de20052005-10-08T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdf133p. : il.(Broch.)https://hdl.handle.net/20.500.12733/1602694OLIVEIRA, Marcio Rodrigo de. Estudo e implementação da otimização de Preload de dados usando o processador XScale. 2005. 133p. Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1602694. Acesso em: 2 set. 2024.https://repositorio.unicamp.br/acervo/detalhe/368249porreponame: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-18T04:32:17Zoai::368249Biblioteca Digital de Teses e DissertaçõesPUBhttp://repositorio.unicamp.br/oai/tese/oai.aspsbubd@unicamp.bropendoar:2017-02-18T04:32:17Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP)false
dc.title.none.fl_str_mv Estudo e implementação da otimização de Preload de dados usando o processador XScale
Study and implementation of data Preload optimization using XScale
title Estudo e implementação da otimização de Preload de dados usando o processador XScale
spellingShingle Estudo e implementação da otimização de Preload de dados usando o processador XScale
Oliveira, Marcio Rodrigo de
Compiladores (Computadores)
Sistemas de memória de computadores
Arquitetura de computador
Compiling (Eletronic computers)
Computer memory systems
Computer architecture
title_short Estudo e implementação da otimização de Preload de dados usando o processador XScale
title_full Estudo e implementação da otimização de Preload de dados usando o processador XScale
title_fullStr Estudo e implementação da otimização de Preload de dados usando o processador XScale
title_full_unstemmed Estudo e implementação da otimização de Preload de dados usando o processador XScale
title_sort Estudo e implementação da otimização de Preload de dados usando o processador XScale
author Oliveira, Marcio Rodrigo de
author_facet Oliveira, Marcio Rodrigo de
author_role author
dc.contributor.none.fl_str_mv Araújo, Guido Costa Souza de, 1962-
Santos, Andre de Medeiros
Centoducatte, Paulo Cesar
Rigo, Sandro
Universidade Estadual de Campinas (UNICAMP). Instituto de Computação
Programa de Pós-Graduação não informado
UNIVERSIDADE ESTADUAL DE CAMPINAS
dc.contributor.author.fl_str_mv Oliveira, Marcio Rodrigo de
dc.subject.por.fl_str_mv Compiladores (Computadores)
Sistemas de memória de computadores
Arquitetura de computador
Compiling (Eletronic computers)
Computer memory systems
Computer architecture
topic Compiladores (Computadores)
Sistemas de memória de computadores
Arquitetura de computador
Compiling (Eletronic computers)
Computer memory systems
Computer architecture
description Orientador: Guido Costa Souza Araujo
publishDate 2005
dc.date.none.fl_str_mv 2005
2005-10-08T00: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 (Broch.)
https://hdl.handle.net/20.500.12733/1602694
OLIVEIRA, Marcio Rodrigo de. Estudo e implementação da otimização de Preload de dados usando o processador XScale. 2005. 133p. Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1602694. Acesso em: 2 set. 2024.
identifier_str_mv (Broch.)
OLIVEIRA, Marcio Rodrigo de. Estudo e implementação da otimização de Preload de dados usando o processador XScale. 2005. 133p. Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1602694. Acesso em: 2 set. 2024.
url https://hdl.handle.net/20.500.12733/1602694
dc.language.iso.fl_str_mv por
language por
dc.relation.none.fl_str_mv https://repositorio.unicamp.br/acervo/detalhe/368249
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
133p. : 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_ 1809189774458617856