24
Avaliação de Desempenho

Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Embed Size (px)

Citation preview

Page 1: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Avaliação de Desempenho

Page 2: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Clock do Sistema

• Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais

• 1GHz = 1 bilhão de pulsos• Taxa de pulsos = taxa de clock• Incremento de clock = ciclo de clocks• Tempo entre pulsos = tempo de ciclos

Page 3: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Taxa de Execução de Instrução

• Processador é controlado por um clock comfreqüência constante f ou, de modo equivalente,um tempo de ciclo constante , onde = 1/f.

• Contagem de instruções Ic é o número deinstruções de máquinas, executadas, até que umdeterminado programa rode até o fim ou poralgum intervalo de tempo específico. (Obs.:nº deexecuções de instrução e não nº de instruções nocódigo)

Page 4: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Taxa de Execução de Instrução

• CPIMédia de ciclos por instrução• Se todas as instruções exigiessem o mesmonúmero de ciclos de clock, CPI seria valorconstante para o processador.

• Na realidade, esse valor varia para cada tipode instrução (load, store, etc.)

Page 5: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Taxa de Execução de Instrução

• CPIi é o número de ciclos exigidos para ainstrução tipo i e Ii o número de instruçõesexecutadas do tipo i para determinadoprograma.

Page 6: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Taxa de Execução de Instrução

• O tempo de processador, T, necessário paraexecutar determinado programa pode ser expresso como:

Page 7: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Taxa de Execução de Instrução

• Como parte do trabalho é feito pelo processador eparte do trabalho é feito em tranferências de dadospara a memória, cujo tempo de ciclo pode ser maiorque o do processador, a equação pode ser reescrita:

• Onde, p é o número de ciclos de processadornecessários para decodificar e executar a instrução, mé o número de referências de memória necessárias e krazão entre o tempo de ciclo de memória e o tempo deciclo do processador.

Page 8: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Fatores de Desempenho e Atributos do Sistema

Ic p m k

Arquitetura do conjunto de instruções X X

Tecnologia do compilador X X X

Implementação do processador X X

Hierarquia da cache e da memória X X

* Arquitetura do conjunto de instruções Projeto do conjunto de instruções

Page 9: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Milhões de Instruções por Segundo

(Cruzando)

f = 1 / 

Page 10: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Milhões de Instruções por Segundo

• Considere a execução de um programa queresulta na execução de 2 milhões deinstruções num processador 400 MHz. Oprograma consiste em quatro tipos principaisde instruções, de acordo com a tabela abaixo:

Tipo de Instrução CPI Número de Instruções (%)

Aritmética e Lógica 1 60%

Load/Store com acerto de cache 2 18%

Desvio 4 12%

Referência de memória com falha de cache

8 10%

Page 11: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Milhões de Instruções por Segundo

Page 12: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Milhões de Operações de Ponto Flutuante por Segundo

Page 13: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Lei de Amdahl

• Alguns exemplos de melhoria de desempenhode computadores passam pelo uso deprocessadores paralelos , hierarquia de cachee speedup no tempo de acesso da memória ena taxa de transferência de E/S

• A Lei de Amdahl, proposta por Gene Amdahllida com o potencial de speedup de umprograma usando múltiplos processadores emcomparação com um único processador.

Page 14: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Lei de Amdahl• Considere um programa rodando em um único

processador, de modo que uma fração (1‐f) do tempo deexecução envolva um código inerentemente serial e umafração f envolva código infinitamente paralelizável semoverhead de escalonamento. Considere que T seja otempo de execução total do programa usando um únicoprocessador. Então, o speedup usando um processadorparalelo com N processadores que explora totalmente aparte paralela do programa é como segue:

Page 15: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Lei de Amdahl

• Conclusões:– Se f for pequeno, o uso de processadoresparalelos tem pouco efeito

– Se N tende ao infinito, o speedup é limitado por1/(1‐f), de modo que existem retornosdecrescentes para o uso de mais processadores.

Page 16: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Lei de Amdahl

• A Lei de Amdahl ilustra os problemasenfrentados pela indústria nodesenvolvimento de máquinas Multicore comum número cada vez maior de processadores:o software que roda nessas máquinas, deveser adaptado para um ambiente de execuçãoaltamente paralelo, para explorar o poder doprocessamento paralelo.

Page 17: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Lei de Amdahl• Considere qualquer melhoria a um recurso de um

sistema que resulte num speedup o qual pode serexpresso por:

• Suponha que o recurso do sistema seja usado durante aexecução de uma fração do tempo f, antes da melhoria, eque o speedup desse recurso após a melhoria seja SUf.Então, o speedup geral do sistema é:

Page 18: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Lei de Amdahl

• Suponha que uma tarefa utilize muitasoperações de ponto flutuante com 40% dotempo sendo consumido por operações deponto flutuante. Com um novo projeto dehardware, o módulo de ponto flutuante éagilizado por um fator K. Então, o speedupgeral é:

Page 19: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Exercício 1

• Considere a execução de um programa queresulta na execução de 10 milhões deinstruções num processador 1,6 GHz. Oprograma consiste em quatro tipos principaisde instruções, de acordo com a tabela abaixo:

Tipo de Instrução CPI Número de Instruções (%)

Aritmética e Lógica 2 66%

Load/Store 4 14%

Desvio de processamento 6 12%

Referência de cache 16 8%

Page 20: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Exercício 1

Page 21: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Exercício 2• Suponha que uma tarefa utilize muitasoperações de ponto flutuante com 35% dotempo sendo consumido por operações deponto flutuante. Com um novo projeto dehardware, o módulo de ponto flutuante éagilizado por um fator 100. Então, o speedupgeral é ? Qual o speedupmáximo ?

Page 22: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Exercício 2

Page 23: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Exercício 3

• Suponha que uma tarefa utilize muitasoperações de ponto flutuante com 44% dotempo sendo consumido por operações deponto flutuante. Qual o fator de agilidadenecessário para um aumento de speedup de17% ?

Page 24: Avaliação de Desempenho - institutosiegen.com.br · Taxa de Execução de Instrução • Processador é controlado por um clock com freqüência constante f ou, de modo equivalente,

Exercício 3