Português English
Contato
Publicado em: 21/08/2014

Dissertação de Mestrado em Projeto de Sistemas Computacionais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL

INSTITUTO DE INFORMÁTICA

PROGRAMA DE PÓS-GRADUAÇÃO EM COMPUTAÇÃO

———————————————————

DEFESA DE DISSERTAÇÃO DE MESTRADO

 

Aluno: Francis Birck Moreira

Orientador: Prof. Dr. Philippe Olivier Alexandre Navaux

Título: Profiling and Reducing Micro-architecture Bottlenecks at the Hardware Level

 

Linha de Pesquisa: Projeto de Sistemas Computacionais

Data: 26/08/14

Hora: 13:00h

Local: Prédio 43424 – Auditório Prof. Castilho, Instituto de Informática

 

Banca Examinadora:

Prof. Dr. Antônio Carlos Schneider Beck Filho (UFRGS)

Prof. Dr. Guido Costa Souza de Araújo (UNICAMP)

Prof. Dr. Sérgio Bampi (UFRGS)

 

Presidente da Banca: Prof. Dr. Philippe Olivier Alexandre Navaux

 

Resumo:

A maior parte dos mecanismos em processadores superescalares atuais usam granularidade de instrução para criar ou caracterizar especulações, tais como predição de desvios ou prefetchers. No

entanto, muitas das características individuais de instruções podem ser obtidas ao analisar uma granularidade mais grossa, o bloco básico de código, aumentando a quantidade de código coberta em um espaço similar de armazenamento. Adicionalmente, códigos podem ser analisados mais precisamente e prover uma variedade maior de informação ao observar diferentes tipos de instruções e suas relações. Devido a estas vantagens, a análise no nível de blocos pode fornecer mais oportunidades para mecanismos que necessitam desta informação. Por exemplo, é possível integrar informações de desvios previstos erroneamente e acessos a memória para gerar informações mais precisas de quais acessos a memória oferecem melhor desempenho ao serem priorizados.

Nesta tese propomos o BLAP(Block Level Architecture Profiler), um mecanismo em hardware que caracteriza gargalos no nível micro-arquitetural, tal como loads delinquentes, desvios difíceis de se prever e contenção nas unidades funcionais. O BLAP trabalha no nível de bloco básico, apenas detectando e fornecendo informações que pode ser usada para otimizar tais gargalos. Um mecanismo para a remoção de prefetches e uma política de controlador de memória DRAM foram criados para usar a informação criada pelo BLAP e demonstrar seu potencial. Juntos, estes mecanismos são capazes de melhorar o desempenho do sistema em até 17.39% (3.9% em média).

Nosso método mostrou também ganhos médios de 13.14% quando avaliado com uma pressão na memória mais alta devido a prefetchers mais agressivos.

 

Palavras-chave:  Arquitetura de Sistemas, Perfil de Programas, Design de Hardware, Blocos Básicos.

 

_____________

Divulgação PPGC