PDF de programación - Medición del rendimiento de la CPU

Imágen de pdf Medición del rendimiento de la CPU

Medición del rendimiento de la CPUgráfica de visualizaciones

Publicado el 10 de Octubre del 2018
160 visualizaciones desde el 10 de Octubre del 2018. Una media de 35 por semana
1,2 MB
42 paginas
Creado hace 81d (24/08/2018)
Medición del rendimiento

Medición del rendimiento

El rendimiento de la CPU es el tiempo de ejecución.
Ecuación del rendimiento de la CPU

Tiempo CPU = Ciclos de reloj para el programa x Periodo del reloj

Alternativamente

Tiempo CPU = Número de instrucciones x CPI x Periodo del reloj

Donde CPI es el número de ciclos en promedio por

instrucción.

Universidad de Sonora

Arquitectura de Computadoras

2

Medición del rendimiento
Para comparar dos sistemas computacionales:
1. Correr la carga de trabajo (workload) del usuario

en los dos sistemas.

2. Correr un benchmark. Un programa o conjunto de
programas usados específicamente para medir el
rendimiento de una computadora.

Universidad de Sonora

Arquitectura de Computadoras

3

Tipos de benchmarks

1. Programas de juguete tipo quicksort.
2. Benchmarks sintéticos. No hacen nada aparte de

evaluar el rendimiento de la CPU como Whetstone
y Dhrystone.

3. Aplicaciones reales como los benchmarks de

SPEC (Standard Performance Evaluation
Corporation) y de TPC (Transaction Processing
Council).

La tercera es la opción con mejor reputación.

Universidad de Sonora

Arquitectura de Computadoras

4

Benchmarks clásicos

Utilizados hasta principios de los 1990s.
Todavía son populares porque son gratis y fáciles

de usar y entender.

Dos clases de benchmarks clásicos:

Universidad de Sonora

Arquitectura de Computadoras

5

Benchmarks clásicos
1. Benchmarks sintéticos: No realizan ninguna

computación util.
Whetstone.

Dhrystone.

2. Benchmarks de kernel. Obtenidos de un programa

(o librería) real.
Linpack.

Livermore loops.

Universidad de Sonora

Arquitectura de Computadoras

6

Benchmarks clásicos

Cada benchmark viene en dos versiones.

Versión optimizada. El benchmark fue compilado con

las opciones de optimización del compilador.

Versión no optimizada. El benchmark fue compilado

sin las opciones de optimización del compilador.

La versión optimizada debe correr mas rápido que la

versión no optimizada.

Universidad de Sonora

Arquitectura de Computadoras

7

Whetstone

Publicado en 1976 originalmente en Algol 60.
Intenta replicar el comportamiento de un típico

programa científico en la computadora KDF9.
Contiene varios módulos, cada uno contiene

instrucciones de un tipo en particular:
Aritmética entera.

Aritmética de punto flotante.

ifs.

Llamadas a funciones (coseno, seno, etc.)

Universidad de Sonora

Arquitectura de Computadoras

8

Whetstone

Un buen número de las instrucciones son de punto

flotante.

Se usa para medir el rendimiento de instrucciones

de punto flotante.

Reporta resultados:

KWIPS o MWIPS (kilo/mega instrucciones Whetstone

por segundo)

Comparación con una VAX 11/780 de 1977.
MFLOPS (millones de operaciones de punto flotante
por segundo) o MOPS (millones de operaciones por
segundo) para cada módulo.

Universidad de Sonora

Arquitectura de Computadoras

9

Dhrystone

Publicado en 1984 originalmente en Ada.
Intenta replicar el comportamiento de un programa

no científico.

No tiene instrucciones de punto flotante.
Menos ciclos y mas ifs y llamadas a procedimiento.
Mide el rendimiento de instrucciones enteras.

Universidad de Sonora

Arquitectura de Computadoras

10

Dhrystone

Reporta resultados en DPS (Dhrystone por

segundo) o en DMIPS (Dhrystone MIPS).

DMIPS = DPS / 1757.
1757 es el número de DPS obtenido en una VAX
11/780 que supuestamente era una máquina de 1
MIPS.

Universidad de Sonora

Arquitectura de Computadoras

11

Linpack

Publicado en 1976, Linpack es un conjunto

(paquete) de subrutinas de algebra lineal en Fortran.
El benchmark basado en Linpack mide cuánto tarda

una computadora en resolver un sistema denso de
N x N ecuaciones lineales.

Típicamente N = 100, pero puede ser mayor.
Hay versiones de precisión sencilla y doble.
Los resultados se reportan en MFLOPS.

Universidad de Sonora

Arquitectura de Computadoras

12

Livermore loops

Publicado en 1986 originalmente en Fortran.
Mide el rendimiento de computadoras paralelas.
Consiste en 24 ciclos (kernels).
Cada ciclo hace una función matemática distinta:

Fragmento de hidrodinámica.

Gradiente conjugado de Cholesky incompleto.

Búsqueda de Montecarlo.

Reporta MFLOPS para cada uno de los ciclos.

Universidad de Sonora

Arquitectura de Computadoras

13

Desventajas

De los benchmarks clásicos:
Es fácil hacer trampa, un compilador puede

reconocer el benchmark y generar código especial.
Reflejan el estilo de programación de 1970 y 1980.
No miden las capacidades de las CPUs actuales.
No hay control del código fuente.
Nadie certifica los resultados.
No hay reglas standard.

Universidad de Sonora

Arquitectura de Computadoras

14

Desventajas

Hacen énfasis en medir MIPS (o MFLOPS).
MIPS no siempre son relevantes, p.e., en servidores

de web, de correo o de archivos.

El número de instrucciones por segundo no dice

nada de la complejidad de las instrucciones.

No es lo mismo ejecutar instrucciones simples que

instrucciones complejas.

Universidad de Sonora

Arquitectura de Computadoras

15

Desventajas

Para calcular MIPS:

Sustituyendo el tiempo de ejecución:

Un programa puede tener distinto CPI (por culpa del

compilador) y no tener un solo MIPS.

Universidad de Sonora

Arquitectura de Computadoras

16

Ejemplo

¿Qué computadora tiene un MIPS mayor?
¿Qué computadora es más rápida?

Universidad de Sonora

Arquitectura de Computadoras

17

Ejemplo

MIPS = (Velocidad reloj / CPI x 106)
Computadora A

MIPS = 4 x 109 / (1.0 x 106) = 4 x 103

Computadora B

MIPS = 4 x 109 / (1.1 x 106) = 3.6 x 103

Conclusión: A tiene MIPS mayor.

Universidad de Sonora

Arquitectura de Computadoras

18

Tiempo de ejecución

T = I x CPI / V
Computadora A

T = 10 x 109 x 1.0 / 4 x 109 = 2.5 segundos

Computadora B

T = 8 x 109 x 1.1 / 4 x 109 = 2.2 segundos

Conclusión: B es más rápida.

Universidad de Sonora

Arquitectura de Computadoras

19

Mejor medida

Fuente: COD, p. 52

Universidad de Sonora

Arquitectura de Computadoras

20

¿Por qué se estudian?

Todavía se mencionan.
Son gratis y fáciles de usar.
Son útiles como una primera aproximación.
En algunos sistemas (por ejemplo controladores) no

hay otra cosa.

Universidad de Sonora

Arquitectura de Computadoras

21

SPEC

Standard Performance Evaluation Corporation
Organización sin fines de lucro fundada en 1988.
Miembros originales: Apollo, HP, MIPS y Sun.
Objetivo: producir benchmarks justos e imparciales.
Los resultados se conocen como SPECmarks.

Universidad de Sonora

Arquitectura de Computadoras

22

Benchmarks de SPEC

1. Desktop (computadoras de escritorio)

Mide el rendimiento de:
CPU. SPEC CPU 2006.

La máquina virtual de Java. SPECjvm2008.

Sistemas de gráficas:

SPECviewperf para OpenGL 3D.

SPECapc para aplicaciones en 3D como Maya, 3ds Max,

SolidWorks, etc.

Universidad de Sonora

Arquitectura de Computadoras

23

Benchmarks de SPEC

2. Server (servidores)

Mide el rendimiento en:
Servidores de correo. SPECmail2008.

Servidores de archivos. SPECsfs2008.

Servidores de Web. SPECweb2005.

Servidores basados en JMS (Java Message

Service). SPECjms2007.

Servidores de aplicaciones en Java.

SPECjAppServer2004.

Universidad de Sonora

Arquitectura de Computadoras

24

SPEC CPU 2006

12 programas para evaluar instrucciones enteras.

9 escritos en C.

3 escritos en C++.

17 programas para evaluar instrucciones de punto

flotante.
6 escritos en FORTRAN.

4 en C y FORTRAN.

4 en C++.

3 en C.

Universidad de Sonora

Arquitectura de Computadoras

25

SPEC CPU 2006

http://www.spec.org/cpu2006/publications/CPU2006benchmarks.pdf

Universidad de Sonora

Arquitectura de Computadoras

26

SPEC CPU 2006

1. Cada benchmark i se corre en la CPU a evaluar.
2. Se mide el tiempo de CPU de cada benchmark i.
3. Para cada benchmark i se obtiene el SPECmark.

Tiempo de ejecución de i en A / Tiempo de ejecución de i en R

Donde R es la computadora de referencia: una
estación de trabajo Sun Ultra Enterprise 2 con un
procesador UltraSPARC II de 296-MHz.

Universidad de Sonora

Arquitectura de Computadoras

27

SPEC CPU 2006

4. Escribir un reporte.

Los resultados deben ser reproducibles.

El reporte debe decir todo lo necesario para que otra

persona obtenga los mismos resultados.



Incluyendo sistema operativo y compiladores
usados, datos de entrada, etc.

5. Promediar los SPECmark de todos los

benchmarks usando la media geométrica.

Universidad de Sonora

Arquitectura de Computadoras

28

Ejemplo

Universidad de Sonora

Arquitectura de Computadoras

29

Ejemplo

Universidad de Sonora

Arquitectura de Computadoras

30

Ejemplo

Universidad de Sonora

Arquitectura de Computadoras

31

Intel Core I7 920

Fuente: COD 5, p. 47

Universidad de Sonora

Arquitectura de Computadoras

32

SPECmark

Con los SPECmarks se puede comparar dos
computadoras sin conocer los tiempos de los
benchmarks ni la computadora de referencia.

Universidad de Sonora

Arquitectura de Computadoras

33

SPECfp 2000

Universidad de Sonora

Arquitectura de Computadoras

34

Media geométrica

La media geométrica es:

En el reporte de SPEC,
  • Links de descarga
http://lwp-l.com/pdf13812  

Comentarios de: Medición del rendimiento de la CPU (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

Revisar política de publicidad