Inﬂuência das Características de Processadores e Aplicações no Nível de Blocos Básicos - Moreira, Francis B.; Alves, Marco A. Z.; Diener, Matthias; Navaux, Philippe O. A. (Anais do Simpósio em Sistemas Computacionais de Alto Desempenho (SSCAD), 2013)
Este trabalho avalia o desempenho do processador e aplicações no nível de blocos básicos, usando um simulador de microarquitetura para construir o perﬁl dinâmico do comportamento de cada bloco básico de uma aplicação. Foram analisadas diversas características relacionadas ao desempenho de cada bloco, tais como faltas de dados nas memórias cache, falhas nas predições de saltos e contenções nas unidades funcionais. Baseando-se nessa análise, podemos determinar a inﬂuência de tais características no desempenho de cada carga de trabalho, e assim, investigar possíveis otimizações para aumentar o paralelismo em nível de instruções no nível arquitetural. Entre os mecanismos dinâmicos, a maior parte efetua a análise em nível de instruções. Uma granularidade tão ﬁna implica em custos adicionais para coleta e armazenamento de informações por vezes irrelevantes. Os experimentos mostram que as características mais importantes para o desempenho do processador são as faltas de dados noúltimo nível de memória cache e falhas nas predições de saltos. A contenção nas unidades funcionais e as faltas de dados nas memórias cache L1 e L2 são menos relevantes, uma vez que grande parte destas latências são escondidas pela execução fora de ordem do processador superescalar e pelo mecanismo de prefetching . Nesse artigo, é usada uma análise dinâmica de desempenho em nível de blocos. Isto leva a um melhor entendimento das partes de código que possuem representatividade no programa, possibilitando ainda a caracterização de eventuais problemas em tais blocos. Quando eliminadas estas duas fontes de degradação do desempenho, através da simulação de um processador livre de faltas de dados noúltimo nível de cache ou com um preditor de saltos perfeito, observamos respectivamente melhorias de desempenho máximas de 78% e 127% (em média 10% e 23%).