Anda di halaman 1dari 32

Clase 03

Rendimiento del
Computador
ING. JOSE R. SANDOVAL JIMENEZ
EPIS-FICSA-2016-II
Rendimiento
Avin Capacidad Autonoma Velocidad Productividad
pasajeros (Km) crucero
(Km/h) (pasajeros*Km/h)

Boeing 777 375 7450 980 367500

Boeing 747 470 6675 980 460600

Concorde 132 6435 2175 287100

DC-8 146 14030 875 127750


Rendimiento de un sistema
Sistema Trabajo en un determinado tiempo
1
=

Rendimiento de una computadora


ejecuta instrucciones
Tiempo que tarda en ejecutar los programas
Parmetros de rendimiento del
procesador
El rendimiento de un procesador
1
=

1 1
prog= = =

Ejercicio
Dada las caractersticas de un programa. Calcular el tiempo
que demora en ejecutar el programa y su rendimiento. La cpu
trabaja a 1Ghz. El programa se compone de 19 instrucciones
de 3 tipos: A, B y C y cada tipo de instrucciones tiene un n de
microinstrucciones diferentes.

Tipo de instrucc Instrucc/Prog CPIi


A 5 2
B 6 3
C 8 1
Ejercicio
Se dispone de un computador basado en un PIV a 2 GHz. Se
ejecuta un programa de 1000 instrucciones. Segn la tabla,
calcular el rendimiento

Tipo de instrucc Instrucc/Prog CPIi


Lgico-aritmtica 20% 4
Salto indondicional 10% 3
Salto condicional 10%/10% 7/5
Carga (Reg-M) 30% 3
Almacenamiento (M-R) 20% 4
Comparacin del Rendimiento
El rendimiento
- Medida cuantitativa
- Hacer comparaciones
Comparar dos mquinas ACELERACION

1. ACELERACION DEL RENDIMIENTO


A=

2. ACELERACION DEL TIEMPO


AT=

Ejercicio
Tenemos un PIV de 2GHz y ejecuta un
programa de 1000 instrucciones segn la
siguiente tabla calcular el rendimiento. Para
aumentar el rendimiento se aade
posteriormente una cach que ahorra 1 ciclo
en accesos si el dato est en la cach y si no
est dura lo mismo. El porcentaje de aciertos
es del 90%. Calcular el rendimiento y la
aceleracin del rendimiento con respecto del
anterior sin cach.
Tipo de instruccin Instrucc/Prog CPIi
Lgica-aritmtica 300 5
Llamada a subrutina 100 9
Salto incondicional 100 6
Salto condicional 50/50 9/3
Carga (R-M) 100 2
Almacenamiento (M-R) 100 4
Mov (R-R) 200 2
UNIDADES DE MEDIDA DE
RENDIMIENTO GLOBAL
MIPS
= =
106
Millones de
Instrucciones

=

106 106
por segundo

Se escoge una mquina representativa


VAX 11/780 equivalente (80286)
MIPS VAX 11/780
=
106
MEGAFLOPS NATIVOS Y RELATIVOS


MFLOPSNATIVOS
106


=1
MFLOPSRELATIVOS
106
Instrucciones Peso

ADD,SUB,MUL 1 operacin de punto flotante

4 operacin de punto flotante


DIV,SQRT

8 operacin de punto flotante


EXP,SIN
Ejercicio
Hallar MFLOPS nativos y relativos que se obtiene al utilizar un
computador que ejecuta un programa en 66 segundos y
consta de las siguientes instrucciones
OPERACION MILLONES DE PESO
INSTRUCCIONES
ADD 20 1
SUB 10 1
MUL 10 1
DIV 12 4
EXP 2 8
SIN 99 8
SQRT 1 4
Benchmark
Simular el comportamiento de aplicaciones del
mundo real
Rutinas repetitivas de los programas ms usados
DHRYSTONE BENCHMARK (MIPS)
1. Miden eficiencia del procesador y compilador en un
entorno de desarrollo LAN
Benchmark Dhrystone MIPS
WHESTONE BENCHMARK
Sinttico Ejecucin de programas cientficos y de ingeniera
FORTRAN enteros y punto flotante
KWIPS (Miles de instrucciones Whestone * seg)

2. 10 y 100 lneas de cdigo


Towers
Benchmark Perm
Criba de Eratostenes
Reducido o Puzzle

de juguete Quicksort
Pequeas piezas claves de programas reales
3. Kernel No evalan prestaciones grficas
Livermore Loops 21 fragmentos de bucles
Benchmark pequeos
Linpack subrutinas de lgebra lineal

Programas hechos con partes de programas reales


4.Programas (procesadores de texto, compiladores, CAD, etc
Complejos de usar
Reales S.O incompatibles
No son estndar ni de libre distribucin
iCOMP
iCOMP es un benchmark desarrollado por Intel para poder medir el
rendimiento de sus procesadores, cuando cambios arquitectnicos
impedan una comparacin nicamente por la frecuencia de reloj.
iCOMP es un acrnimo de Intel COmparative Microprocessor
Performance. Sin embargo, este benchmark no ha tenido la
repercusin que Intel esperaba.

El tipo de computadoras que intenta medir son las computadoras


personales y servidores de red basados en microprocesadores Intel.

Hubo tres revisiones del ndice iCOMP.


La versin 1.0 indicaba el rendimiento con respecto al 486SX 25
La versin 2.0 indicaba el rendimiento con respecto al Pentium 120, y
La versin 3.0 indicaba el rendimiento con respecto al Pentium II
350Mhz.
Resultados
Su resultado expresa el rendimiento relativo de los procesadores Intel respecto a algn procesador Intel
que se considera base.
Para esto calcula la media geomtrica ponderada de los distintos benchmarks que lo componen.
En la versin 1.0 el procesador Intel 486SX 25MHz tena el puntaje de 100, y los benchmaks que lo
componen son:
ZD(Ziff-Davis) Bench - 68%
16-bit Whetstone - 2%
SPECint92 - 25%
SPECfp92 - 5%
En la versin 2.0 el procesador de referencia pas a ser el Pentium de 120 MHz, y los benchmarks que lo
componen estn preparados para medir la performance de procesadores de 32 bits. Estos son:
CPUmark32
Norton Utilities SI32
CINT95 y CFP95 de SPEC
Intel Media Benchmark.
Estas medidas fueron escogidas entre una serie de benchmarks pblicamente disponibles. Entre las razones
esgrimidas para su eleccin tenemos que cada uno mide una caracterstica especial de la arquitectura Intel;
adems utilizan una mezcla de aplicaciones que se encuentran hoy en da en la mayora de los sistemas. Al
otorgarle distintos pesos a cada uno Intel tambin establece cules son de esas caractersticas las ms
importantes para las aplicaciones del momento.
Posteriormente sali al pblico la versin 3.0, que tom como base al Pentium II de 350 MHz y
nuevamente cambi la mezcla que conforma el benchmark general.
Obviamente, al ser un benchmark definido por el mismo Intel responde a sus propios intereses,
particularmente se nota que la relacin entre puntajes del iCOMP siempre supera al del reloj. Adems, a
medida que fue cambiando su arquitectura fue cambiando este benchmark para que d mejores resultados
segn las nuevas caractersticas que iba incorporando.
SPEC
Standard Performance Evaluation Corporation
(SPEC), es un consorcio sin fines de lucro que
incluye a
vendedores de computadoras.
integradores de sistemas
Universidades
grupos de investigacin, publicadores y consultores de
todo el mundo.
Tiene dos objetivos:
crear un benchmark estndar para medir el
rendimiento de computadoras y
controlar y publicar los resultados de estos tests.
Open Systems Group (OSG), grupo de sistemas abiertos: realizan benchmarks
de nivel de componentes y sistemas en ambientes Unix/NT/VMS.
Adems del conocido
SPEC CPU2000 suite, el grupo ha desarrollado
benchmarks para Java (SPECjAppServer2002 -en el cual experimentan con una nueva mtrica
de costo/rendimiento-, SPECjAppServer2001, SPEC JBB2000 y SPEC JVM98),
de servidores web (SPECweb99_SSL, SPECweb99 y SPECweb96),
un benchmark para servidor de correos (el SPEC MAIL2001) y
uno de sistemas de red (el SPEC SFS97_R1). Por otra parte, tiene una serie de benchmarks ms
actualmente en desarrollo; entre ellos podemos contar un nuevo benchmark de servidor de
correos que incluye el protocolo iMAP.
High Performance Group(HPG), grupo de alto rendimiento: benchmarking en
un ambiente de computacin numrico, con nfasis en computacin numrica
de alto rendimiento. El nicho que intenta cubrir este benchmark incluye
sistemas con multiprocesadores simtricos, clusters de estaciones de trabajo,
sistemas paralelos con memoria distribuida y las tradicionales
supercomputadoras vectoriales y vectoriales paralelas.
Graphics Performance Characterization (GPC), caracterizacin del rendimiento
de grficos: benchmarks para subsistemas grficos, OpenGL y Xwindows.
SPEC CPU 2000
SPEC CPU2000 es un Benchmark producido por la SPEC.
Fue creado con el fin de proveer una medida de
rendimiento que pueda ser usado para comparar cargas de
trabajo intensivas en cmputo en distintos sistemas de
computadora.
Contiene dos benchmark suites:
CINT2000 para medir y comparar el rendimiento de
computacin intensiva de enteros, y
CFP2000 para medir y compara el rendimiento de computacin
intensiva en flotantes.
El CINT2000 y el CFP2000 no fuerzan la entrada/salida
(unidades de disco), trabajo en red o grficos.
CINT2000 contiene 11 aplicaciones escritas en C y una en C++ (252.eon)
que son usadas como benchmarks.
Nombre Breve descripcin
164.gzip Utilidad de compresin de datos.
175.vpr Direccionamiento y ubicacin de circuitos FPGA.
176.gcc Compilador C.
181.mcf Resolutor de costo mnimo de flujo de red.
186.crafty Programa de ajedrez.
197.parser Procesamiento de lenguaje natural.
252.eon Efectos producidos por distintas fuentes de luz.
253.perl bmk Perl.
254.gap Teora de grupo computational.
255.vortex Base de datos orientada a objetos.
256.bzip2 Utilidad de compresin de datos.
300.twolf Simulador de ubicacin y ruteo.
CFP2000 contiene 14 aplicaciones (seis en Fortran77, cuatro en FORTRAN90 y
cuatro en C) que son usadas como benchmarks:

Nombre Breve Descripcin


168.wupwise Cromodinmica de cuantos.
171.swim Modelado de aguas poco profundas.
172.mgrid Resolutor de multi-grilla en campos potenciales 3D.
173.applu Ecuaciones diferenciales parciales parablicas/elpticas.
177.mesa Biblioteca de grficos 3D.
178.galgel Dinmica de fluidos: anlisis de inestabilidad oscilatoria.
179.art Simulacin de red neuronal: teora de la resonancia adaptativa.
183.equake Simulacin de elementos finitos: modelado de terremotos.
187.facerec Reconocimientos de imgenes: reconocimiento de rostros.
188.ammp Qumica computacional.
189.lucas Teora de los nmeros: prueba de primalidad.
191.fma3d Simulacin de elementos finitos en choque.
200.sixtrack Modelo de acelerador de partculas.
301.apsi Resolutor de problemas de temperatura, viento y distribucin
de contaminantes.
LEYES DE AMDAHL
Evalan las modificaciones en el rendimiento de
un computador cuando se introducen mejoras o
ms recursos.
El criterio lo que hay que mejorar o modificar
siempre es lo que ms se usa frecuentemente.

=


=

Primera Ley de Amdahl
El aumento del rendimiento debido a la
inclusin de una mejora con un nuevo recurso
en el sistema est limitado por el tiempo que
se utiliza dicha mejora en la ejecucin de la
tarea.

= + sin

Segunda Ley de Amdahl
Cuando se introduce una mejora a un
computador previamente mejorado, el
incremento del rendimiento es menor que si
se introduce la mejora sobre el sistema sin
mejorar.
Ejercicios resueltos
Se cambia la ALU de un procesador dedicado a
una tarea la cual el 50% del tiempo lo hace la
ALU. La nueva ALU es el doble de rpido que la
anterior. Calcular la aceleracin de
rendimiento.
Sustituimos la ALU por una nueva un 30%
mayor. Si inicialmente una computadora
tardaba 2seg en hacer un programa cunto
tarda ahora sabiendo que la ALU para este
programa est funcionando el 50% del
tiempo?
Evaluar la aceleracin del rendimiento del
sistema computador cuando se cambio la ALU
del procesador por otra 9 veces ms rpida,
sabiendo que la ALU participa durante el 40%
del tiempo que dura la tarea.
Un programa se ejecuta en 10seg trabajando
la cpu a 400 MHz. Se desea disear una
implementacin para que dicho cdigo se
ejecute en 6seg. Se sabe que un aumento de
la frecuencia del reloj aumenta el CPI en 1,2
veces el que tena cul debe ser la nueva
frecuencia de funcionamiento?
Para un programa X, un compilador gener la siguiente
distribucin de instrucciones
Tipo de instrucc Frec de una CPI
Instrucc
Operaciones ALU 43% 1
Cargas 21% 2
Almacenamiento 12% 2
Saltos 24% 2
El compilador se optimiza de manera que para el
mismo programa descarta el 50% de las instrucciones
de la ALU aunque no pueda reducir cargas,
almacenamientos, saltos.
Ignorando las prestaciones del sistema y suprimiendo
una duracin de ciclo de 2ns (f de reloj=500MHz)
Cul es la frecuencia en MIPS para el cdigo
optimizado frente al cdigo sin optimizar?
Estn los resultados en MIPS de acuerdo con los del
tiempo de ejecucin?

Anda mungkin juga menyukai