Compressão de codigo baseada em multi-profile

Orientadores: Paulo Cesar Centoducatte, Rodolfo Jardim de Azevedo === Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Computação Cientifica === Made available in DSpace on 2018-08-03T20:18:33Z (GMT). No. of bitstreams: 1 WanderleyNetto_EduardoBraulio_D.pd...

Full description

Bibliographic Details
Main Author: Wanderley Netto, Eduardo Braulio
Other Authors: UNIVERSIDADE ESTADUAL DE CAMPINAS
Format: Others
Language:Portuguese
Published: [s.n.] 2004
Subjects:
Online Access:WANDERLEY NETTO, Eduardo Braulio. Compressão de codigo baseada em multi-profile. 2004. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Computação Cientifica, Campinas, SP. Disponível em: <http://www.repositorio.unicamp.br/handle/REPOSIP/276417>. Acesso em: 3 ago. 2018.
http://repositorio.unicamp.br/jspui/handle/REPOSIP/276417
id ndltd-IBICT-oai-repositorio.unicamp.br-REPOSIP-276417
record_format oai_dc
collection NDLTD
language Portuguese
format Others
sources NDLTD
topic Compressão de dados (Computação)
Arquitetura de computador
Sistemas embarcados (Computadores)
spellingShingle Compressão de dados (Computação)
Arquitetura de computador
Sistemas embarcados (Computadores)
Wanderley Netto, Eduardo Braulio
Compressão de codigo baseada em multi-profile
description Orientadores: Paulo Cesar Centoducatte, Rodolfo Jardim de Azevedo === Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Computação Cientifica === Made available in DSpace on 2018-08-03T20:18:33Z (GMT). No. of bitstreams: 1 WanderleyNetto_EduardoBraulio_D.pdf: 1509383 bytes, checksum: 7f2b5d47609daeb50be111be056b2377 (MD5) Previous issue date: 2004 === Resumo: A compressão de códigos de programas representa uma alternativa para diminuição de área de silício usada na fabricação de chips para sistemas embarcados. Este requisito tem sido fortemente influenciado pela crescente funcionalidade, incluíndo aplicações em multimídia, exigida para os softwares que neles executam. Recentes estudos apresentam a compressão de código como alternativa também para melhorar o desempenho e reduzir o consumo de energia nestes sistemas. Este trabalho apresenta um novo método de compressão, o ComPacket, baseado em pequenos dicionários incompletos com um descompressor em hardware situado entre a cache e o processador (RISC), permitindo assim que a cache guarde o código comprimido e portanto possibilitando uma maior capacidade de armazenamento. Além disto, um novo paradigma de construção de dicionários é introduzido de tal forma a propiciar uma melhor exploração da tríade de requisitos área-desempenho-consumo de energia. Este paradigma baseia-se ao mesmo tempo em informações estatísticas obtidas de profiles dinâmico e estático do uso de instruções em um programa e por isto é denominado Multi-Profile. Foram realizados experimentos de uso de dicionários Multi-Profile em dois métodos de compressão de código: o Instruction Based Compression (IBC), desenvolvido anteriormente em nosso laboratório e o novo ComPacket. Para o IBC, a razão de compressão média varia entre 71% e 77% para um conjunto de aplicações retiradas das suites Mediabench e MiBench, enquanto o número de ciclos de clock usados para execução do código comprimido varia em média de 75% a 65% dos valores obtidos sem compressão. Usando o mesmo conjunto de aplicações e o ComPacket, a razão de compressão média varia entre 72% e 88%, o número de ciclos de clock chega a 52% do original para uma construção específica do dicionário e a redução no consumo de energia na cache de instruções chega a 46% do valor original (sem com pressão) === Abstract: Code compression is an approach to reduce the silicon area requirement to produce embedded systems chips. This requirement is stronlgy affected by the increasing functionality, including multimedia applications, required by the embedded softwares. Recently, some researches point out the code compression as an alternative to increase performance and reduce energy consumption. This work introduces a new code compression method, the ComPacket, based on small, incomplete dictionary and a new decompressor hardware which is located between the cache and the processor (RIS C), thus making the cache to keep compressed instructions augmenting its storage capacity. Moreover, a new paradigm to build dictionaries is introduced, such that a better exploration of area-performance-energy consumption trade-offs is achieved. This paradigm is based on both dynamic and static profiles informations at the same time, which led the name of Multi-Profile. We used this paradigm on two code compression scheme: the Instruction Based Compression (IBC), formerly developed in our Laboratory, and the new ComPacket. For the IBC, the average compression ratio varies from 71% to 77% for the benchmarks excerpted from Mediabench and MiBench suites, while a cycle count reduction of 75% to 65% were achieved (related to original uncompressed execution of the code). For the ComPacket, the average compression ratio varies from 72% to 88% and the cycle count reduction is as low as 52% for a special case of dicionary construction. The instruction cache energy reduction reaches 46% of the original === Doutorado === Doutor em Ciência da Computação
author2 UNIVERSIDADE ESTADUAL DE CAMPINAS
author_facet UNIVERSIDADE ESTADUAL DE CAMPINAS
Wanderley Netto, Eduardo Braulio
author Wanderley Netto, Eduardo Braulio
author_sort Wanderley Netto, Eduardo Braulio
title Compressão de codigo baseada em multi-profile
title_short Compressão de codigo baseada em multi-profile
title_full Compressão de codigo baseada em multi-profile
title_fullStr Compressão de codigo baseada em multi-profile
title_full_unstemmed Compressão de codigo baseada em multi-profile
title_sort compressão de codigo baseada em multi-profile
publisher [s.n.]
publishDate 2004
url WANDERLEY NETTO, Eduardo Braulio. Compressão de codigo baseada em multi-profile. 2004. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Computação Cientifica, Campinas, SP. Disponível em: <http://www.repositorio.unicamp.br/handle/REPOSIP/276417>. Acesso em: 3 ago. 2018.
http://repositorio.unicamp.br/jspui/handle/REPOSIP/276417
work_keys_str_mv AT wanderleynettoeduardobraulio compressaodecodigobaseadaemmultiprofile
_version_ 1718876698560167936
spelling ndltd-IBICT-oai-repositorio.unicamp.br-REPOSIP-2764172019-01-21T20:43:14Z Compressão de codigo baseada em multi-profile Wanderley Netto, Eduardo Braulio UNIVERSIDADE ESTADUAL DE CAMPINAS Azevedo, Rodolfo Jardim de, 1974- Centoducatte, Paulo Cesar, 1957- Centoducatte, Banda: Paulo Cesar Lima, Banda: Manoel Eusebio de Saotome, Banda: Osamu Machado, Banda: Nelson Castro Pannain, Banda: Ricardo Compressão de dados (Computação) Arquitetura de computador Sistemas embarcados (Computadores) Orientadores: Paulo Cesar Centoducatte, Rodolfo Jardim de Azevedo Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Computação Cientifica Made available in DSpace on 2018-08-03T20:18:33Z (GMT). No. of bitstreams: 1 WanderleyNetto_EduardoBraulio_D.pdf: 1509383 bytes, checksum: 7f2b5d47609daeb50be111be056b2377 (MD5) Previous issue date: 2004 Resumo: A compressão de códigos de programas representa uma alternativa para diminuição de área de silício usada na fabricação de chips para sistemas embarcados. Este requisito tem sido fortemente influenciado pela crescente funcionalidade, incluíndo aplicações em multimídia, exigida para os softwares que neles executam. Recentes estudos apresentam a compressão de código como alternativa também para melhorar o desempenho e reduzir o consumo de energia nestes sistemas. Este trabalho apresenta um novo método de compressão, o ComPacket, baseado em pequenos dicionários incompletos com um descompressor em hardware situado entre a cache e o processador (RISC), permitindo assim que a cache guarde o código comprimido e portanto possibilitando uma maior capacidade de armazenamento. Além disto, um novo paradigma de construção de dicionários é introduzido de tal forma a propiciar uma melhor exploração da tríade de requisitos área-desempenho-consumo de energia. Este paradigma baseia-se ao mesmo tempo em informações estatísticas obtidas de profiles dinâmico e estático do uso de instruções em um programa e por isto é denominado Multi-Profile. Foram realizados experimentos de uso de dicionários Multi-Profile em dois métodos de compressão de código: o Instruction Based Compression (IBC), desenvolvido anteriormente em nosso laboratório e o novo ComPacket. Para o IBC, a razão de compressão média varia entre 71% e 77% para um conjunto de aplicações retiradas das suites Mediabench e MiBench, enquanto o número de ciclos de clock usados para execução do código comprimido varia em média de 75% a 65% dos valores obtidos sem compressão. Usando o mesmo conjunto de aplicações e o ComPacket, a razão de compressão média varia entre 72% e 88%, o número de ciclos de clock chega a 52% do original para uma construção específica do dicionário e a redução no consumo de energia na cache de instruções chega a 46% do valor original (sem com pressão) Abstract: Code compression is an approach to reduce the silicon area requirement to produce embedded systems chips. This requirement is stronlgy affected by the increasing functionality, including multimedia applications, required by the embedded softwares. Recently, some researches point out the code compression as an alternative to increase performance and reduce energy consumption. This work introduces a new code compression method, the ComPacket, based on small, incomplete dictionary and a new decompressor hardware which is located between the cache and the processor (RIS C), thus making the cache to keep compressed instructions augmenting its storage capacity. Moreover, a new paradigm to build dictionaries is introduced, such that a better exploration of area-performance-energy consumption trade-offs is achieved. This paradigm is based on both dynamic and static profiles informations at the same time, which led the name of Multi-Profile. We used this paradigm on two code compression scheme: the Instruction Based Compression (IBC), formerly developed in our Laboratory, and the new ComPacket. For the IBC, the average compression ratio varies from 71% to 77% for the benchmarks excerpted from Mediabench and MiBench suites, while a cycle count reduction of 75% to 65% were achieved (related to original uncompressed execution of the code). For the ComPacket, the average compression ratio varies from 72% to 88% and the cycle count reduction is as low as 52% for a special case of dicionary construction. The instruction cache energy reduction reaches 46% of the original Doutorado Doutor em Ciência da Computação 2004 2018-08-03T20:18:33Z 2018-08-03T20:18:33Z 2004-05-21T00:00:00Z info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/doctoralThesis (Broch.) WANDERLEY NETTO, Eduardo Braulio. Compressão de codigo baseada em multi-profile. 2004. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Computação Cientifica, Campinas, SP. Disponível em: <http://www.repositorio.unicamp.br/handle/REPOSIP/276417>. Acesso em: 3 ago. 2018. http://repositorio.unicamp.br/jspui/handle/REPOSIP/276417 por info:eu-repo/semantics/openAccess application/octet-stream [s.n.] Universidade Estadual de Campinas. Instituto de Matemática, Estatística e Computação Científica reponame:Repositório Institucional da Unicamp instname:Universidade Estadual de Campinas instacron:UNICAMP