A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

SSC114 Arquitetura de Computadores Pipeline - Desempenho

Apresentações semelhantes


Apresentação em tema: "SSC114 Arquitetura de Computadores Pipeline - Desempenho"— Transcrição da apresentação:

1 SSC114 Arquitetura de Computadores Pipeline - Desempenho
Aula 6 27/08/10 (Turmas 1 e 2) Profa. Sarita

2 Desempenho do pipeline
Idealmente: speedup igual ao número de estágios do pipeline Exemplo: Sem pipeline (1 instrução por vez) 1 instrução completa a cada 4 ns Taxa de finalização 0,25 instrução/ns (1/4ns)

3 Desempenho do pipeline
Pipeline de 4 estágios A partir do tempo 5ns, taxa de finalização de 1 instrução a cada ns.

4 Desempenho do pipeline
Pipeline de 8 estágios Tempo de cada estágio do pipeline: 4ns / 8 = 0,5ns Portanto, ciclo do clock de 0,5ns Taxa de finalização de 1 instrução a cada 0,5ns ou 2 instruções/ns

5 Desempenho do pipeline

6 Desempenho do pipeline
Mas, um aumento na taxa de finalização de 8 vezes pode ser traduzido como um decréscimo de 8 vezes no tempo de execução? Como calcular o tempo de execução de um programa utilizando pipeline?

7 Desempenho do pipeline
Em uma máquina com 1 processador de ciclo único, tem-se: Tempo de execução do programa = taxa de finalização da instrução (X ns por instrução) * número de instruções no programa Taxa de finalização da instrução = quanto tempo cada instrução leva para finalizar = 1 / tempo de execução da instrução (1 instrução em Y ns) No exemplo, se o número de instruções do programa fosse 7, então o tempo seria: Tempo de execução do programa = 4 ns/instrução x 7 = 28 ns

8 Desempenho do pipeline
Com pipeline o tempo de execução tem um cálculo diferente Deve-se considerar o tempo para “encher” o pipeline O que acontece com o tempo de execução de um programa conforme se aumenta o número de instruções, em uma arquitetura que utiliza pipeline?

9 Desempenho do pipeline
Medida de desempenho utilizada até o momento: Número de instruções que o processador pode completar a cada nanosegundo Outra medida de desempenho: throughput Número de instruções que o processador pode completar a cada ciclo de clock

10 Desempenho do pipeline
Instruction throughput: número de instruções que o processador finaliza a execução em cada ciclo de clock. Também conhecido como IPC (Instruction per cycle) Instruction throughput máximo teórico: o número máximo teórico de instruções que o processador pode finalizar a execução a cada ciclo de clock (1 IPC) Instruction throughput médio: o número médio de instruções por clock (IPC) que o processador realmente completa sobre um certo número de ciclos

11 Desempenho do pipeline

12 Desempenho do pipeline
Paradas no pipeline

13 Desempenho do pipeline
Impacto da parada de 2 ciclos no pipeline do slide anterior

14 Desempenho do pipeline
Impacto de uma parada de 10 ciclos (começando no estágio de busca do 18o. ciclo)


Carregar ppt "SSC114 Arquitetura de Computadores Pipeline - Desempenho"

Apresentações semelhantes


Anúncios Google