Você está na página 1de 9

Desempenho

Existem vários critérios aceitáveis: Tempo de execução; Débito (trabalho executado por unidade de tempo); etc.

Se D x representar o desempenho do computador X e T x o tempo de execução de um programa no mesmo computador, então D x = 1/T x .

Dizer que o computador X é n vezes mais rápido que o computador Y equivale a dizer que D x /D y = n = T y /T x

Tempo de resposta: Tempo decorrido entre início e fim de execução

Tempo de CPU:

Sistema (T x s ) + Utilizador (T x u )

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

1

Ciclos de Relógio

Em vez de reportar o tempo de execução em segundos, é frequente a sua quantificação em ciclos

Segundos/ Programa = (Ciclos/ Programa) * (Segundos/ Ciclo)

Período T (Tempo de ciclo) = Número de segundos por ciclo

Frequência f = 1/T = Número de ciclos por segundo (1 Hz = 1 ciclo/ segundo)

Por exemplo, um relógio com uma frequência de 200 MHz, possui um período

T = 1/(200*10 6 ) segundos = 5*10 -9 segundos = 5 nanosegundos

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

2

Tempos de execução

Para um dado programa, T u = N c * T, em que N c é o número de ciclos de relógio necessários para executar o programa.

Por outro lado, N c = N i * CPI, em que N i é o número de instruções executadas pelo programa e CPI é o número médio de ciclos de relógio por instrução.

Então,

RMV FEUP 2003/2004

TT uu == NN ii ** CPICPI ** TT

Arquitectura de Computadores Avaliação de Desempenho

3

Cálculo de desempenho: Um exemplo (1)

Um CPU possui as seguintes características:

Classe

CPI

A

1

B

2

C

3

O autor de um compilador pretende escolher entre duas sequências de instruções:

Sequência

Número de Instruções B

A

C

1

2

1

2

2

4

1

1

Pretende-se saber:

- A sequência que executa mais instruções

- A mais rápida

- O CPI de cada uma

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

4

Cálculo de desempenho: Um exemplo (2)

Sequência 1

N 1 i = 2 + 1 + 2 = 5 N 1 c = (2 * 1) + (1 * 2) + (2 * 3) = 10 CPI 1 = 10/5 = 2

Sequência 2

N 2 i = 4 + 1 + 1 = 6 N 2 c = (4 * 1) + (1 * 2) + (1 * 3) = 9 CPI 2 = 9/6 = 1.5

Mais instruções Menos ciclos Melhor CPI

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

5

Métricas de desempenho: MIPS

MIPS Millions of Instructions Per Second

MIPS = N i /(T u * 10 6 ) = f/(CPI * 10 6 )

T u = N i /(MIPS * 10 6 )

Em geral, máquinas mais rápidas Æ Índice MIPS maior. Contudo:

1. MIPS não depende do conjunto de instruções (não serve para comparar máquinas com instruções diferentes);

2. Depende dos programas e dos respectivos dados de entrada;

3. Pode evoluir de forma contrária ao desempenho!

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

6

Métrica MIPS: Exemplo

Para a máquina do exemplo anterior (página 4), foi medido o número de instruções para o mesmo programa com compiladores diferentes.

Compilador

Compilador Compilador 1 Compilador 2 Nº de instruções por classe (10 6 ) A B 5

Compilador 1

Compilador 2

Nº de instruções por classe (10 6 )

Nº de instruções por classe (10 6 )

Nº de instruções por classe (10 6 )

A

B

5

1

10

1

C

1

1

Suponhamos que f = 100 MHz. Qual código é mais rápido de acordo com MIPS? E de acordo com o tempo de execução?

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

7

Solução

N 1 c

CPI 1

= 10 * 10 6

= N 1 c /(7 * 10 6 ) = 1.43

MIPS 1 = (100 * 10 6 )/(1.43 * 10 6 ) = 69.9

T 1 u

(N 1 i * CPI 1 )/f

=

= (7 * 1.43)/100 = 0.10 S

N 2 c

CPI 2

= 15 * 10 6

= N 2 c /(12 * 10 6 ) = 1.25

MIPS 2 = (100 * 10 6 )/(1.25 * 10 6 ) = 80.0

T 2 u

(N 2 i * CPI 2 )/f

=

= (12 * 1.25)/100 = 0.15 S

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

8

Conclusão

- Desempenho é específico para um dado programa ou conjunto de programas

- Para uma dada arquitectura, melhoria de desempenho pode ser obtida por:

- Aumento da frequência de relógio (sem efeitos adversos no CPI);

- Melhoramentos na organização do processador por forma a baixar o CPI;

- Melhoramentos nos compiladores por forma a baixar o CPI e/ ou o número de instruções.

RMV FEUP 2003/2004

Arquitectura de Computadores Avaliação de Desempenho

9