Вы находитесь на странице: 1из 72

Anlisis comparativo

de rendimiento
Qu sistema informtico
tiene mejor rendimiento para una
carga determinada?

Usuarios, administradores y diseadores


Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Contenido
1. Introduccin
Qu es la referenciacin?
Sistemas con rendimientos distintos?

2. ndices clsicos de rendimiento


CPI, MIPS, MFLOPS

3. Benchmarks
Microbenchmaks: toys y kernels
Programas Sandra, PassMark, Bapco
Consorcios SPEC, TPC
Benchmark HINT

4. Resumen de rendimiento
Tipos de medias
Ponderacin y normalizacin

5. Estrategias de anlisis
Empleo de medias
Efectos perniciosos

6. Ejemplos reales
CPU2000
SYSMark 2004

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

1. Introduccin
Qu es la referenciacin? Factores influyentes
Las cargas de prueba
Comparacin del rendimiento de dos sistemas

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Qu es la referenciacin?
Referenciacin (benchmarking)

Carga

ndice de prestaciones

Tcnicas usadas en la comparacin del rendimiento de


diferentes sistemas informticos
Todos los sistemas se han de someter a la misma carga
Prestaciones = f (carga)

S1

S2

S3

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Sistema
4

ndices de rendimiento

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Medidas del rendimiento


Tiempo: el computador que hace la misma cantidad de
trabajo en el mnimo tiempo es el ms rpido
Las medidas de rendimiento han de ser reproducibles,
indicando las condiciones en que se han obtenido
Procesador, frecuencia de funcionamiento, memoria, cache, ...

No hay que confundir el rendimiento del sistema con el


rendimiento del procesador

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Factores influyentes en la referenciacin


Elementos hardware de cada equipo
Procesador, placa base y chipset, memoria principal, discos, ...

Sistema operativo
Sistema de memoria
Configuraciones de las memorias cache y virtual

Efecto del compilador sobre el cdigo ejecutable


Cuidado con las posibles optimizaciones
j=log(5.0); por for(i=1;i<=5000;i++) j=log(5.0);
x=exp(log(x)/2*T1) por la expresin
x=sqrt(exp(log(x)/T1)), ya que sqrt(exp(x))=exp(x/2)

Hay compiladores listos que detectan los benchmarks clsicos

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Carga de trabajo y carga de prueba


Carga de trabajo (workload)
Conjunto de todas las demandas a que est sometido un
sistema informtico durante un periodo de tiempo
Programas, datos, rdenes, usuarios, ...

f (carga)

Carga

Medidas del rendimiento


o prestaciones

Carga de prueba (test workload)


Carga a que se somete un sistema informtico durante una
sesin de medida de rendimiento
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

La carga real
Difcil de utilizar en la evaluacin de sistemas
Resulta complicado reproducirla
Vara a lo largo del tiempo
Interacciona con el sistema informtico

ndices de
prestaciones

Carga
real
Variacin de los parmetros del SO

Variacin del comportamiento de los usuarios

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

10

El modelado de la carga
Caracterizacin o modelado de la carga
Descripcin cuantitativa
Carga
real

Modelo

Toma de medidas de rendimiento


A partir del sistema y carga reales, o bien a partir de modelos

Carga
de prueba:
real o modelo

Sistema
informtico
o modelo

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

Medidas

11

Obtencin de los ndice de prestaciones


Programas similares
a los de la carga real

Carga
real

IP

Datos de entrada al modelo


(analtico o simulacin)

Modelo de la
carga real

IP

IP

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

12

Ejemplo de medida de rendimiento


trilog.c
#include <math.h>
#define NTIMES 10000000
void main()
{
long y;
float x=0.0, y=9.9;
for(i=0; i<NTIMES; y++)
x+=sin(atan(cos(log(y))));
}

Sistema real (mquina Unix) y


carga de coma flotante modelada

% gcc trilog.c -o trilog -lm


% time trilog
real
user
sys

6m 0.38s
3m 0.22s
2m 0.30s

%_

Tiempo total:

398 s

Tiempo de ejecucin:

352 s

Modo usuario:
Modo sistema:

202 s
150 s

Tiempo de espera: 398-352 = 46 s

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

13

Terminologa
Perspectivas de rendimiento
Usuario: tiempo de respuesta o tiempo de ejecucin
Administrador: cantidad de trabajo hecha por unidad de tiempo o
productividad

Hay que evitar terminologa ambigua


Este sistema es tantas veces ms lento que aquel
Este sistema es tantas veces mejor que aquel

Hablaremos de
Mejora del rendimiento
Mejora del tiempo de respuesta o de ejecucin

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

14

Qu sistema es ms rpido?
El rendimiento del computador A es n veces mejor que el
rendimiento del computador B si

R A TB

n
RB TA
Ejemplo: TA=10 s y TB=15 s

TB
1.5
TA
El computador A es 1.5 veces ms rpido que el B
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

15

Qu sistema es ms rpido?
El rendimiento del computador A es un n% superior al
rendimiento del computador B si

RA TB
n
1
, o tambin,
RB T A
100

R A RB

100 n
RB

Ejemplo: TA=10 s y TB=15 s


TB TA
TB
n
100 50
1
n
TA
100
TA
El computador A es un 50% ms rpido que el B
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

16

Rendimientos diferentes?
Ejecucin de n programas en dos mquinas A y B
Son significativas las diferencias obtenidas?
Hay que usar mecanismos estadsticos

Intervalo de confianza para las diferencias

x t

1 , n 1
2

s
n

Nivel de confianza, por ejemplo, del 95% (=0.05)


Si incluye el cero, entonces no hay diferencias significativas
Si no incluye el cero, entonces las mquinas tienen rendimientos
significativamente diferentes
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

17

Ejemplo de rendimientos similares


Tiempos de ejecucin en dos sistemas A y B
Programa
P1
P2
P3
P4
P5
P6

A
5.4
16.6
0.6
1.4
0.6
7.3

B
19.1
3.5
3.4
2.5
3.6
1.7

Diferencias (AB)
13.7
13.1
2.8
1.1
3.0
5.6
Son significativas
estas diferencias?

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

18

Clculo del intervalo de confianza


1 n
1 n
2
x xi 0.32, s
(
x

x
)
9.03, t 0.1 t0.975,5 2.571

i
1 , n 1
n i 1
n 1 i 1
2

xt

1 , n 1
2

s
9.03
0.32 2.571
0.32 9.478
n
6

Como el intervalo calculado es (-9.80, 9.17) e incluye el


cero podemos afirmar, con un nivel de confianza del
95%, que las diferencias NO SON SIGNIFICATIVAS

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

19

2. ndices clsicos de rendimiento


CPI, MIPS, MFLOPS

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

20

Ciclos por intruccin de un programa


CPI (cycles per instruction)
Es un valor medio que interesa minimizar
Depende de la organizacin y arquitectura (lenguaje mquina)
Inconveniente: ignora el tiempo imprevisible que hace falta para
sincronizar procesador y memoria cache (ciclos de espera, fallos
en cache, ...)
El valor mnimo es 1

Ciclos de reloj de CPU usados


CPI
Instrucciones ejecutadas
Tiempo de ejecucin Frecuencia de reloj

Instrucciones ejecutadas
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

21

Relacin entre tiempo y frecuencia


Ejemplo de cmputo
Procesador con un reloj a 500 MHz o 0,5 GHz
Cul es la duracin del tiempo de ciclo del reloj?

Frecuencia : 500 MHz 500 10 6 Hz 500 10 6 s 1


1
1
9
Ciclo de reloj :

10
s 2 ns
6
500 MHz 500 10 Hz

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

22

Clculo del CPI de un programa


Cada instruccin necesita un determinado nmero de
ciclos, y por tanto, el valor de CPI depende de las
instrucciones ejecutadas por cada programa

Instrucciones de escritura (store):


Instrucciones de lectura (load):
Instrucciones de la ALU:
Instrucciones de salto:

12%
21%
43%
24%

2 ciclos
2 ciclos
1 ciclo
2 ciclos

CPI ti f i 1,57
i 1

Instrucciones ejecutadas CPI


Tiempo de ejecucin
Frecuencia de reloj
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

23

MIPS
MIPS (million of instructions per second)
Se denominan MIPS nativos

Instrucciones ejecutadas
Frecuencia de reloj de la CPU
MIPS

6
Tiempo de ejecucin 10
CPI 106
Depende del juego de instrucciones y los MIPS medidos varan
entre programas en el mismo computador
Meaningless indicator of processor speed

MIPS relativos: referidos a una mquina de referencia


(proceso de normalizacin)

MIPS relativos

Tiempo de referencia
MIPS referencia

Tiempo de ejecucin

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

24

Ejemplo con MIPS


El programa P contiene 200106 instrucciones
Procesador 1 (175 MHz): ejecuta P en 10 s
Procesador 2 (300 MHz): ejecuta P en 5 s

Instrucciones ejecutadas
200 106
MIPS1

20
6
6
Tiempo de ejecucin 10
10 10
Instrucciones ejecutadas 200 106
MIPS 2

40
6
6
Tiempo de ejecucin 10
5 10
Ciclos de reloj de CPU usados 10 175 10 6
CPI1

8,75
6
Instrucciones ejecutadas
200 10
Ciclos de reloj de CPU usados 10 300 106
CPI 2

7,5
6
Instrucciones ejecutadas
200 10
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

25

MFLOPS
MFLOPS (million of floating-point operations per second)
Se denominan MFLOPS nativos
Basado en operaciones y no en instrucciones
El tiempo de ejecucin de la frmula es el del programa, incluyendo
el tiempo consumido por las instrucciones de enteros

Operaciones de coma flotante ejecutadas


MFLOPS
Tiempo de ejecucin 10 6
La dura realidad
El juego de instrucciones en coma flotante varia de una arquitectura
a otra y, dentro de una misma arquitectura, cada instruccin tiene un
tiempo distinto que puede variar segn los operandos

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

26

MFLOPS normalizados
Consideran la complejidad de las operaciones en coma
flotante
Suma, resta, multiplicacin, comparacin, negacin: poco
costosas
Divisin, raz cuadrada: costosas
Trigonomtricas: muy costosas

Ejemplo de normalizacin de operaciones en coma


flotante
ADD, SUB, COMPARE, MULT
DIVIDE, SQRT
EXP, SIN, ATAN, ...

1 operacin normalizada
4 operaciones normalizadas
8 operaciones normalizadas

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

27

Clculo de los MFLOPS de un programa


Programa Spice: el computador DECStation 3100 tarda
en 94 segundos en ejecutarlo
Contiene 109.970.178 operaciones en coma flotante de las
cuales:
15.682.333 son divisiones (DIVD)
El resto tiene una complejidad similar a la de la suma

109.970.178
MFLOPS nativos
1,2
6
94 10
94.287.845 15.682.333 4
MFLOPS normalizados
1,7
6
94 10
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

28

4. Benchmarks
Microbenchmarks: toys, kernels
Programas Sandra, WinBench y PassMark
Corporaciones: BAPCO, SPEC, TPC

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

29

Microbenchmarks: toys
Sieve (algoritmo criba de Eratstenes)
Encuentra los nmeros primos entre 1 y n
Comparacin de microprocesadores y lenguajes de alto nivel

Funcin de Ackermann
Programa recursivo
Evaluacin del mecanismo de llamada a procedemiento

Otros ejemplos
Funcin de Fibonacci
Mtodos de ordenacin de vectores
Un largo etctera

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

30

Microbenchmarks: kernels
Whetstone (1976)
Pequeas aplicaciones cientficas (coma flotante)
Estructurado en mdulos independientes

Linpack (1983)
Aplicaciones cientficas de clculo numrico de coma flotante
Resolucin de sistemas densos de ecuaciones lineales

Dhrystone (1984)
Entornos tpicos de programacin: aspectos de los lenguajes
fuente de sistemas operativos, editores, compiladores, etctera
Aspectos no numricos: manejo de cadenas de caracteres

Inicialmente diseado en Ada, hay versiones en C y Pascal

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

31

Programa Sandra
Evala procesador, memoria, disco, tarjeta grfica, red
Calcula MIPS (dhrystone) y MFLOPS (whetstone)
http://www.sisoftware.net

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

32

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

33

PassMark Software
Variedad de programas para evaluar el rendimiento y
fiabilidad de los computadores personales
Hardware benchmarking and reliability testing software

Ejemplos de productos
Simple PC Benchmarking
PC Reliability and Load Testing

http://www.passmark.com

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

34

BAPCO
BAPCo (Business Applicationn Performance Corporation)
http://www.bapco.com

Evaluacin de computadores en entornos empresariales


Benchmarks desarrollados
SYSmark 2004
MobileMark 2005
WebMark 2004

Intervienen muchas empresas


Toshiba, Microsoft, IBM, Dell
HP, Intel, AMD, ZDNet, ...

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

35

SPEC
SPEC (Standard Performance Evaluation Corporation)
MISSION: to establish, maintain, and endorse a standardized set of
relevant benchmarks and metrics for performance evaluation of modern
computer systems

Funciones de SPEC
Desarrollar benchmarks
Hacer pblicos los resultados

Intervienen muchas empresas


HP, MIPS, Sun, AT&T, Compaq, IBM, Intel,
Motorola, DEC, etc.

http://www.spec.org

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

36

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

37

TPC
TPC (Transactions Processing Performance Council)
Entornos transaccionales (OLTP: on-line transaction
processing)
http://www.tpc.org

Compuesto por varios programas


TPC-App, TPC-C, TPC-H

Aspectos tratados
Sistemas de bases de datos distribuidas
Arquitectura cliente/servidor, servidores web

Unidades: peticiones procesadas por segundo (tps)

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

38

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

39

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

40

HINT (Hierarchical INTegration )


Coste de computacin y tiempo de ejecucin variables
Se resuelve un problema matemtico cuya solucin se puede ir
mejorando paulatinamente
Clculo de los lmites racionales inferior y superior de:

1 x
0 1 x dx
1

Medida de prestaciones: QUIPS (quality improvement


per second)
til para explorar los lmites computacionales de los
computadores as como la calidad del resultado
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

41

Aspecto tpico de grficas con QUIPS

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

42

Impacto futuro de HINT?


John Gustafson (derecha) y Quinn Snell (Ames Lab)
afirman que HINT es posiblemente el benchmark ms
portable jams escrito
Con HINT se pueden medir las prestaciones de cualquier
supercomputador, por sofisticado que sea, como si de una
simple calculadora se tratara

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

43

4. Resumen de rendimientos:
aproximaciones
Uso de medias
Normalizacin de rendimientos

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

44

Cmo expresar el rendimiento?


El rendimiento es una variable multidimensional
Habra de expresarse mediante mltiples ndices
Sin embargo, las comparaciones son ms sencillas si se usa un
nico ndice de rendimiento (a minimizar o maximizar)

Cmo concentrar todas las variables en una sola?


Utilizar la mejor variable que represente el rendimiento
Asegurar que su obtencin es vlida
Mtodo habitual de sntesis: uso de medias
Hay que tener especial cuidado con la normalizacin de valores

Espacio
Espacio
multidimensional
multidimensional

Espacio
unidimensional

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

45

Puntos de partida
Est aceptado universalmente que
El tiempo necesario para llevar a terme un determinado cmputo
refleja la esencia del rendimiento de un computador

Dos propiedades indispensables


Si resumimos el rendimiento de un computador para un conjunto
de benchmarks en una nica cantidad expresada en unidades
de tiempo, entonces ha de ser directamente proporcional al
tiempo total (ponderado) consumido por los benchmarks
Si resumimos el rendimiento de un computador para un conjunto
de benchmarks en una nica cantidad expresada en ratio,
entonces ha de ser inversamente proporcional al tiempo total
(ponderado) consumido por los benchmarks

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

46

La media aritmtica
til para tiempos de respuesta
n

1
xa xi
n i 1
n

i 1

i 1

xa wi xi , con wi 1
No se ha de utilizar con ratios
Recomendacin: normalizar el resultado final (no cada xi)
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

47

La media armnica
til cuando los valores son ratios con unidades de
tiempo en el denominador (MIPS, MFLOPS)

xh

n
n

i 1 xi

n
n
xh n
, con wi 1
wi
i 1

i 1 xi

No se ha de utilizar con tiempos de respuesta


Recomendacin: normalizar el resultado final (no cada xi)
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

48

La media geomtrica
No es til ni para tiempos de respuesta ni para ratios

x g

x
i 1

1
n

x g x , con wi 1
i 1

wi
i

i 1

nica virtud: mantiene el mismo orden en las


comparaciones con valores normalizados (consistencia)
Usado en los benchmarks de SPEC y BAPCO

Sin embargo, este orden puede no ser el correcto


Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

49

Ejemplo de comparacin con tiempos


Programa

1400

141

170

136

134

1400

154

166

215

301

1100

96.8

94.2

146

201

1800

271

283

428

523

1000

83.8

90.1

77.4

81.2

1800

179

189

199

245

1300

112

131

87.7

75.5

1800

151

158

138

142

1100

93.5

122

104

118

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

50

Comparacin con el tiempo total


Ordenacin con el tiempo total:
De ms rpida a ms lenta: A, B, C, D
Esto no significa que A sea siempre la ms rpida (depende del
programa), aunque, en conjunto, s que lo es

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

51

Resumen con la media aritmtica


1 12
1831,1
x A t A,i
152,6
12 i 1
12
1 12
2010,3
x B t B ,i
167,5
12 i 1
12
1 12
2166,1
xC tC ,i
180,5
12 i 1
12
1 12
2710.7
x D t D ,i
225,9
12 i 1
12

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

52

Normalizacin de rendimientos: ratios


Dividimos el valor obtenido en una mquina de referencia
entre los valores de cada fila (aceleraciones)
Programa

1400

9.9

8.2

10.3

10.4

1400

9.1

8.4

6.6

4.7

....

A partir de aqu el resumen con las medias se hace con los


valores normalizados (aceleraciones)
Ahora la aceleracin es un ndice a maximizar

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

53

Comparacin con valores normalizados

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

54

Lecturas de la grfica anterior


A obtiene mejor ndice en todos los casos
Altibajos en la media aritmtica
Comparacin de B y C con tiempos
B es ms rpido que C: 2010,3 s frente a 2166,1 s
Relacin de tiempos: 2166,1/2010,3 = 1,08

Comparacin de B y C con la media geomtrica


B y C son casi igual de rpidos: 9,60 s frente a 9,59 s
Relacin de medias geomtricas: 9,60/9,59 = 1,00

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

55

5. Estrategias de anlisis

Efectos de la normalizacin y de la
ponderacin

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

56

Estrategias de anlisis
Muy raramente un estudio comparativo de prestaciones
es un trabajo aburrido, sobre todo cuando intervienen los
diseadores e inteseres econmicos
Caso de estudio
Tres sistemas: A, B y C
Dos programas de prueba: P1 y P2
Tiempo de ejecucin en segundos de cada programa

A
P1
P2

10

20

1000

100

20

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

57

Tiempo individual de cada programa


Tiempo individual de cada mquina

A
P1
P2

10

20

1000

100

20

A es 10 veces ms rpido que B para P1


B es 10 veces ms rpido que A para P2
C es 50 veces ms rpido que A para P2
B es 2 veces ms rpido que C para P1
C es 5 veces ms rpido que B para P2

Sin embargo, la comparacin entre los tres sistemas


resulta confusa
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

58

Tiempo total de ejecucin


Tiempo total de respuesta
Buena aproximacin si los programas de prueba se ejecutan en
tiempo no demasiado diferentes

A
Total 1001

B
110

C
40

B es 9.1 (1001/110) veces ms rpido que A para P1 y P2


C es 25 (1001/40) veces ms rpido que A para P1 y P2
C es 2.75 (110/40) veces ms rpido que B para P1 y P2

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

59

Utilizando medias aritmticas


Resumiendo las datos con una media
Buena aproximacin si los programas de prueba se ejecutan las
mismas veces

A
Media aritmtica

500.5

55.0

20.0

Resumiendo las datos con una media ponderada


Por ejemplo, si el responsable del 80% de la carga es P1 y del
20% es P2, entonces el peso del primero es 0.8 y el del segundo
es 0.2

Media aritmtica ponderada 200.8

28.0

20.0

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

60

Medias aritmticas ponderadas


Aproximacin si no se conoce la proporcin de cada
programa
Se supone que el tiempo se distribuye entre los n programas
Clculo de los pesos para cada programa

wi

Ti

T
j 1
j
n

w1
w2

2 (B) 3 (A)

0.500 0.909 0.999


0.500 0.091 0.001

Media aritmtica
Mquina B como referencia

Mquina A como referencia

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

61

Medias aritmticas ponderadas: resumen


Clculo de medias aritmticas ponderadas
A

w1 = w1 = 0.5

500.5

55.0

20.0

w1 = 0.909, w1 = 0.091

91.1

18.2

20.0

w1 = 0.999, w1 = 0.001

2.0

10.1

20.0

Problema de la media aritmtica ponderada


Hay dependencia de la mquina de referencia
Hay dependencia del tiempo usado en cada programa de prueba

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

62

Normalizacin de los tiempos


Normalizacin sobre diferentes bases
Normalizado sobre A Normalizado sobre B Normalizado sobre C

Programa P1

1.0

10.0

20.0

0.1

1.0

2.0

0.05

0.5

1.0

Programa P2

1.0

0.1

0.02

10.0

1.0

0.2

50.0

50.0

1.0

Media aritmtica

1.0

5.05 10.01

5.05

1.0

1.1

25.03

2.75

1.0

Media geomtrica

1.0

0.63

1.0

1.0

0.63

1.58

1.58

1.0

0.11 0.04

9.1

1.0

0.36

25.03

2.75

1.0

Tiempo total

1.0

1.0

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

63

Principales conclusiones
Anlisis de los resultados
El rendimiento calculado con la media aritmtica varia segn la
mquina de referencia

Col. 2: B es ms lenta que A (referencia A)


Col. 4: A es ms lenta que B (referencia B)
Col. 3: C es ms lenta que A y B (referencia A)
Col. 9: C es ms rpida que A y B (referencia C)

Las medias geomtricas son consistentes independientemente


de la mquina de referencia
A y B tienen el mismo rendimiento
El tiempo de ejecucin de C es el 63% de A o B
Sin embargo, el tiempo total de ejecucin de A es 9 veces el de B, y
el de B tres veces el de C

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

64

6. Ejemplos reales
CPU2000 (SPEC)
SYSMark 2004 (BAPCO)

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

65

El paquete SPEC CPU2000


Compuesto por dos partes
CINT2000: rendimiento en aritmtica entera intensiva
CFP2000: rendimiento en aritmtica de coma flotante intensiva

Qu quiere decir la C?
Se evalan componentes, no el sistema entero

Qu componentes se evalan?
Procesador
Arquitectura de memoria
Compilador

Qu componentes no se evalan?
Subsistema de disco, red o grficos

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

66

Criterios de seleccin de programas


Portabilidad a muchas arquitecturas
32 y 64 bits: Alpha, Intel, PA-RISC, Rxx00, SPARC, etc

Portabilidad a muchos sistemas operativos


Unix, Linux y Windows

No han de contener I/O, ni red ni grficos


Han de caber en 256 MB de memoria principal para no
provocar intercambio (swapping) con el disco
No han de pasar ms del 5% del tiempo ejecutando
cdigo que no sea especificado por SPEC

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

67

Programas dentro de CPU2000


CINT2000: 12 programas
Todos en lenguaje C

164.gzip
176.gcc
186.crafty
197.parser
254.gap

Utilidad de compresin
Compilador de C
Programa para jugar al ajedrez
Procesador de lenguaje natural
Teora computacional de grupos

CFP2000: 14 programas, en lenguajes FORTRAN y C


6 en FORTRAN77, 4 en FORTRAN90 y 4 en C
173.applu
178.galgel
200.sixtrack

Ecuaciones diferenciales parciales


Dinmica de fluidos
Modelo de acelerador de partculas

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

68

ndices prestaciones en SPEC CPU2000


ndices de prestaciones
Aritmtica entera
SPECint2000, SPECint_base2000

Aritmtica en coma flotante


SPECfp2000, SPECfp_base2000

Significado de base y non-base


Compilacin en modo conservativo o agresivo

Clculo
Media geomtrica de los valores normalizados respecto de la
mquina de referencia Sun Ultra5_10 con un procesador a 300
MHz
Tarda aproximadamente 2 das en ejecutar todos los benchmarks
del paquete
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

69

Clculo del ndice SPECfp_base


Benchmark

Tiempo
refer.

Tiempo
medido

Relacin
(x100)

168.wupwise

1600

470

340

171.swim

3100

616

503

172.mgrid

1800

704

256

173.applu

2100

715

294

177.mesa

1400

334

419

178.galgel

2900

645

457

179.art

2600

1232

211

183.equake

1300

500

260

187.facerec

1900

488

390

188.ammp

2200

756

291

189.lucas

2000

869

230

191.fma3d

2100

594

354

200.sixtrack

1100

465

237

301.apsi

2600

975

267

Hardware
AMD Gigabyte GA-7ZM
motherboard 1.1 GHz Athlon
L1 cache: 64KB I+64KB D on
chip
L2 cache: 256KB (I+D) on chip
Memory: 256MB PC133
SDRAM

Software
Windows 2000
Compiler: Visual Fortran 6.5

Tref

SPECfp _ base
100 311
i 1 Ti

14

14

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

70

Benchmark SYSMark 2004


Considera la carga en dos categoras
Internet Content Creation (ICC)
Dreamweaver, Photoshop, Flash, Premiere...

Office Productivity (OP)


Word, Excel, Access, Netscape, WinZip, ...

Con cada programa se ejecuta un conjunto de


tareas (tasks) de acuerdo con un modelo de
comportamiento del usuario
Las medidas se basan en el tiempo de respuesta
Se mide el tiempo de ejecucin de cada tarea individual
Para cada categora se calcula el tiempo medio de
ejecucin de todas las tareas incluidas en ella
Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

71

Clculo del ndice SYSMark 2004


El tiempo medio de cada categora se normaliza (ratio)
respecto de una mquina de referencia (calibration
platform) y se multiplica por 100
Si ratio = 200 doble de rpida que la de referencia

Finalmente, el ndice SYSMark se calcula mediante la


media geomtrica de los dos ratios obtenidos

Tref,OP

SYSMark 2004
100
TOP

Tref,ICC

100
TICC

Evaluacin y modelado del rendimiento de los sistemas informticos: Anlisis comparativo de rendimiento

72

Вам также может понравиться