Autores

6162
Andrey Matheus Coppieters
2810,131
6163
2810,131

Informações:

Publicações do PESC

Título
O Impacto do Reuso de Traços Internos a Laços
Linha de pesquisa
Arquitetura e Sistemas Operacionais
Tipo de publicação
Dissertação de Mestrado
Número de registro
Data da defesa
28/3/2008
Resumo

Este trabalho identifica as estruturas de laço dos códigos dos programas como um padrão para a detecção de sequências de instruções redundantes. Adotando esta estratégia, adaptou-se uma arquitetura superescalar com um mecanismo de reuso especulativo localizado, capturando instruções e traces reusáveis apenas internamente aos laços. Observou-se o mesmo nível de desempenho e uma redução suave no número de acessos às estruturas de memória (em até 12% para Memo-Table-T e em média 0,63% para todas as estruturas) quando comparado ao reuso empregado por todo o código. Esta manutenção no número total de acessos às estruturas foi decorrente da compensação observada entre a redução nos acessos à Tabela de Reuso e o acréscimo dos acessos às Caches L1 e à Tabela do Preditos de Desvios.

Abstract

This work points out that loop structures inside program codes is the main pattern to prefetch as reusable instruction sequences. Adopting this strategy, some adaptations have been made to a speculative reuse mechanism of a superscalar architecture, so it would be able to dynamically detect the beginning and ending of loops as boundaries in order to keep the reuse mechanism tumed on only inside loops. It was obsesved that the perfonnance level was inantained and also a slight reduction on the number of memory stsucture accesses (until 12% to Memo-Table-T and a 0.63% average to a11 stmctures) when compared to the reuse mechanism applied to the entire code. Regarding the maintenance of the total number of memory accesses, this could be explained by a balance between the reduction of accesses to the unified Reuse Table and the increase of accesses to the first level caches, so as to the Branch Predictor Table.

Arquivo
Topo