Experimentos com codificação e compactação no gerenciamento de memoria da maquina virtual java
Sandro Rigo
DISSERTAÇÃO
Português
T/UNICAMP R449e
Campinas, SP : [s.n.], 2000.
78f. : il.
Orientador: Guido Costa Souza de Araujo
Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação
Resumo: Gerenciamento de memória é uma tarefa muito importante para o bom desempenho de uma aplicação. Existem duas alternativas para a execução desta tarefa: gerenciamento explícito por parte do programador, ou a existência de um sistema dinâmico automático. O objetivo desse trabalho foi realizar...
Ver mais
Resumo: Gerenciamento de memória é uma tarefa muito importante para o bom desempenho de uma aplicação. Existem duas alternativas para a execução desta tarefa: gerenciamento explícito por parte do programador, ou a existência de um sistema dinâmico automático. O objetivo desse trabalho foi realizar experimentos de codificação e compactação do heap no sistema automático de gerenciamento de memória da máquina virtual Java, usando como plataforma a implementação desta conhecida como Kaffe. Na primeira parte deste trabalho, foi estudado um mecanismo alternativo de codificação dos objetos vivos, baseado em Binary Decision Diagrams (BDD). Na segunda etapa, foi projetado um coletor de lixo, cujo objetivo era avaliar o impacto da compactação do heap no desempenho da JVM. A implementação de nosso coletor se baseou no algoritmo conhecido como Mark-Compact. Obtivemos uma implementação híbrida para o sistema de recuperação de memória da máquina virtual Kaffe, capaz de realizar coletas utilizando ou não compactação. Esse sistema nos permite configurar a freqüência com que compactações são realizadas, permitindo ajustá-lo para diminuir o impacto causado por estas no desempenho do programa. Finalmente, mostramos nossas conclusões sobre os experimentos realizados e apontamos algumas possíveis melhorias a serem implementadas na máquina virtual kaffe, que visam aproveitar ao máximo os benefícios trazidos pela compactação.
Ver menos
Abstract: Memory management is an important task for good performance. There are two choices to accomplish this task: explicit management done by the programmer, or the presence of an automatic dynamic memory management system. The goal of this work was to perform experiments using codification and...
Ver mais
Abstract: Memory management is an important task for good performance. There are two choices to accomplish this task: explicit management done by the programmer, or the presence of an automatic dynamic memory management system. The goal of this work was to perform experiments using codification and compaction on Java Virtual Machine's memory management system, using its implementation known as Kaffe. In the first part, we have studied an alternative system of live objects codification, based on Binary Decision Diagrams(BDD). In the second part, a garbage collector has been projected. Its main goal was to evaluate the impact on JVM's performance by adding a heap compaction system. The implementation of this collector was based on the Mark-Compact algorithm. We got a hybrid implementation for our garbage collection system, which is able to collect using or not using compaction. This system allows us to configure how often it performs heap compaction, adjusting it to minimize the impact on program performance. Finally, we show our conclusions about the experiments we have done and suggest some possible improvements to be implemented on Kaffe JVM, intending to take full advantage of the compaction benefits.
Ver menos
Experimentos com codificação e compactação no gerenciamento de memoria da maquina virtual java
Sandro Rigo
Experimentos com codificação e compactação no gerenciamento de memoria da maquina virtual java
Sandro Rigo
Exemplares
Nº de exemplares: 2
Não existem reservas para esta obra