You are on page 1of 13

ARQUITECTURA DE

COMPUTADORES

Semestre A-2009
Clase 03

La mayor parte del contenido de estas lminas, ha sido extrado del libro
Computer Organization and Design (The hardware / software interface), 4ta
Edicin, de David A. Patterson y John L. Hennessy. Editorial Morgan Kaufmann
AGENDA
Frmulas de Rendimiento
Rendimiento
Calcular el rendimiento de un computador es
una tarea complicada
Por cierto; Qu significa que la mquina A
tiene mejor rendimiento que la mquina B?
Qu significa que A es ms rpida que B?
Qu velocidad o velocidades nos interesan?
Es ms rpida la computadora que:
ejecuta cierta tarea ms rapido?
(Tiempo de respuesta)
ejecuta mayor cantidad de tareas por unidad de
tiempo?
(Ancho de banda)
Definiciones
Tiempo de respuesta (Tiempo de ejecucin):
Tiempo total requerido para ejecutar una tarea.
Incluye los tiempos de disco, memoria, I/O, SO,
CPU, etc. (Computadores personales e incrustados)
Ancho de banda (productividad): Nmero de
tareas ejecutadas por unidad de tiempo
(Servidores)
Qu mejoramos si:
Reemplazamos en una mquina un procesador por
otro que ejecuta las mismas instrucciones en menor
tiempo?
Aumentamos la cantidad de procesadores del
computador?
Frmula de rendimiento
1
RendimientoA =
Tiempo de ejecucinA

RendimientoA > RendimientoB?

1 1
> => teB > teA
teA teB

A es n veces ms rpido que B?

RendimientoA teB
RendimientoA = n * RendimientoB => =
RendimientoB teA
Ejercicio
Si la computadora A ejecuta un programa
en 6 segundos y la computadora B
ejecuta el mismo programa en 9
segundos, Cuntas veces mejor es el
rendimiento de A con respecto al
rendimiento de B?

Respuesta: La computadora A es 1.5 veces mejor que la computadora B


Ambientes multitarea
Tiempo de ejecucin de CPU (Tiempo de CPU):
Cantidad de tiempo que la CPU tarda en ejecutar una
tarea
Tiempo de CPU de usuario: Tiempo utilizado slo en
cierto programa
Tiempo de CPU del sistema: Tiempo que utiliza el CPU
en ejecutar otras tareas, como soporte o por la ejecucin
de otros programas

Por simplicidad, supondremos al hablar de rendimiento y


tiempo de ejecucin, que la CPU est ejecutando
nicamente una tarea: La que estamos considerando en
ese momento.
Ciclos de reloj
Casi todas las computadoras son construidas
usando un reloj (Oscilador de cristal), que es
utilizado para sincronizar los eventos u
operaciones: determinando cundo ocurren (el
paso) en el hardware.
Estos intervalos de tiempo, se denominan
ciclos de reloj
Los ciclos de reloj (Ej: 400 picosegundos (ps))
se suelen transformar o usar como frecuencia
de reloj (2.5 gigahertz (GHz))
Para un programa dado:
Tiempo de ejecucin de CPU = Ciclos de reloj x Tiempo del ciclo de reloj

Tiempo de ejecucin de CPU = Ciclos de reloj / Frecuencia de reloj


Ejercicio
El programa X tarda 6 segundos en ejecutarse
en la computadora A, que tiene una frecuencia
de reloj de 2 GHz. Queremos disear una
computadora B, que ejecute el mismo programa,
pero en slo 5 seg.
Por otro lado, sabemos que podemos aumentar
la frecuencia de reloj; pero si la aumentamos,
tenemos que modificar el diseo, provocando
que el programa consuma 10% ms ciclos de
reloj en el programa.
Qu frecuencia de reloj deberamos usar para
lograr el objetivo?
Instrucciones
Ciclos de reloj Por Instruccin (CPI):
Nmero promedio de ciclos de reloj por
instruccin, para un programa dado. Es un
promedio para todas las instrucciones
ejecutadas en el programa.

Ciclos de reloj de CPU = # Instrucciones x CPI


Ejercicio
La computadora A tiene un ciclo de reloj
de 300 ps. de duracin, y un CPI de 2,
para cierto programa X. El computador B
tiene un ciclo de reloj de 500 ps., y un CPI
de 1.3, para el mismo programa. Cul de
las dos computadoras ejecuta el programa
ms rpido?
(Suponer que las dos computadoras usan
el mismo conjunto de instrucciones)
Respuesta: La computadora A
Ecuacin clsica de rendimiento
Tiempo por
Tiempo de CPU = Conteo de Instrucciones x CPI x ciclo de reloj

Conteo de Instrucciones x CPI


Tiempo de CPU =
Frecuencia de reloj

Estas frmulas resultan tiles porque separan los


tres factores que afectan el rendimiento
Rendimiento de un programa

Componente Qu afecta? Cmo?

Conteo de Instrucciones CPI: Al usar instrucciones


Algoritmo ms lentas o ms rpidas
y CPI
CPI: Ej.: El lenguaje puede
Lenguaje de Conteo de Instrucciones usar abstraccin de datos y
programacin y CPI requerir llamadas indirectas
(ms lentas)

Conteo de Instrucciones
Compilador
y CPI

Arquitectura del
Conteo de Instrucciones,
Conjunto de frecuencia de reloj y CPI
Instrucciones

You might also like