Escolar Documentos
Profissional Documentos
Cultura Documentos
Desempenho
Desempenho
• Desempenho é a chave para entender a motivação subjacente para o hardware e sua
organização
• Medir, relatar e resumir o desempenho permite que os usuários façam:
• escolhas inteligentes
• vejam além do hype do marketing
• Por que alguns hardwares são melhores que outro para programas diferentes?
• Quais fatores de desempenho do sistema são relacionados ao hardware?
• Como o conjunto de instruções de uma máquina afetam o desempenho?
O que medimos?
Define o desempenho…
Entendendo Desempenho
Desempenho 1
O algoritmo determina o número de instruções do código fonte e o número de
operações de 1/0 executadas
Métricas de Desempenho
Existem 2 classes distintas de métricas de desempenho:
Desempenho 2
SPECfp - Benchmarks SPEC que avaliam o desempenho do processador em
operações de ponto flutuante (primeiro lançamento em 1989)
Desempenho Computacional:
Vazão (Throughput)
Tempo de Execução
Tempo decorrido
É uma medida útil, mas não é muito boa para fins de comparação
Desempenho 3
tempo decorrido = tempo CPU + tempo de espera (1/0, outros programas)
Tempo de CPU
Não conta espera por 1/O ou tempo gasto rodando outros programas
Definição de Desempenho
Ciclos de Clock
Desempenho 4
Frequentemente usamos ciclos para calcular o tempo de
execução
Desempenho 5
Essa suposição é incorreta! Porque:
Por que...?
Desempenho 6
Exemplo
Nosso programa favorito roda em 10 segundos no computador A, que tem um clock
de 400 Mhz.
Desempenho 7
Desempenho 8
Terminologia
Desempenho 9
Um dado programa precisa algum número de instruções algum número de ciclos
Medida de Desempenho
Desempenho é determinado pelo tempo de execução
# de instruções no programa?
Armadilha: achar que uma variável é indicativo de desempenho quando de fato ela
não é
Equação de Desempenho II
Desempenho 10
Derivado da Equação de Desempenho |
Exemplo I de CPI
Suponha que temos duas implementações do mesmo
ISA. Para um determinado programa:
Qual computador é mais rápido para esse programa e o quanto mais rápido?
Desempenho 11
Desempenho 12
Exemplo II de CPI
Qual sequência vai ser mais rápida? Quanto mais rápida? Qual é a
CPI de cada sequência?
Desempenho 13
Desempenho 14
Exemplo MIPS
Dois compiladores diferentes estão sendo testados para um computador de 500
MHz com 3 classes de instruções diferentes:
Class A, Classe B e Classe C, que requerem 1, 2 e 3 ciclos (respectivamente).
Ambos compiladores estão usados para produzir código para um grande pedaço
de software.
Desempenho 15
Desempenho 16
Desempenho 17