1 Introducción.-
Cuando se dice que una computadora es más rápida que otra, ¿qué se
quiere decir? El usuario de una computadora individual puede decir que ésta es
más rápida cuando ejecuta un programa en menos tiempo, mientras que el director
de un centro de cálculo puede decir que una computadora es más rápida cuando
completa más tareas en una hora.
En esta publicación explicaremos de una forma sencilla los términos
anteriormente mencionados
2 Rendimiento.-
El rendimiento es la capacidad de realizar un determinado trabajo en un
determinado tiempo, tiene una relación inversa al tiempo de ejecución, es decir
a menor tiempo de ejecución mayor rendimiento y viceversa.
Relación tiempo de ejecución y rendimiento
Como rendimiento y tiempo de ejecución
son están íntimamente relacionados, modificar uno implica modificar el segundo.
El rendimiento nos permite la comparación entre dos computadoras.
3 Métricas para medir el rendimiento.-
3.1 tiempo de ejecución.-
El tiempo es la medida del rendimiento de la computadora.
El tiempo de ejecución de un programa se mide en segundos por programa.
El tiempo se puede definir de formas distintas:
*Tiempo de reloj (wall-clock time), tiempo de respuesta (response
time), o tiempo transcurrido (elapsed time).- Esta es la latencia para completar una tarea,
incluyendo accesos a disco, accesos a memoria, actividades de entrada/salida,
gastos del sistema operativo - todo.
Actualmente las computadoras trabajan a tiempo compartido, que
significa que un procesador puede trabajar sobre diferentes programas. En ese
caso, los sistemas intentan mejorar la productividad en lugar de intentar
disminuir el tiempo transcurrido para un programa individual. Por lo que es
conveniente distinguir entre el tiempo transcurrido y el tiempo en que el
procesador está trabajando al servicio de un programa.
*Tiempo de CPU.- Se debe medir el tiempo que el CPU está computando una
tarea sin incluir el tiempo de espera para las E/S o para ejecutar otros
programas. El tiempo de CPU puede dividirse en: el tiempo empleado por el CPU
en el programa “tiempo de CPU del usuario”, y el tiempo empleado por el sistema
operativo realizando tareas requeridas por el programa “tiempo de CPU del
sistema”.
Estas distinciones las refleja el comando «time» de UNIX, que devuelve
lo siguiente:
90,7u 12,9s 2:39 65%
El tiempo de CPU del usuario es de 90,7 segundos, el tiempo de CPU del
sistema es de 12,9 segundos, el tiempo transcurrido es de 2 minutos y 39
segundos (159 segundos), y el porcentaje de tiempo transcurrido que es el
tiempo de CPU
En este ejemplo, más de un tercio del tiempo transcurrido se gastó
esperando las E/S o ejecutando otros programas, o ambas cosas.
3.2 Rendimiento
CPU.-
La mayoría de las computadoras se construyen utilizando un reloj que
funciona a una frecuencia constante. Estos eventos discretos de tiempo se
denominan pulsos, pulsos de reloj, períodos de reloj, relojes, ciclos o ciclos
de reloj.
Los diseñadores de computadoras referencian el tiempo de un período de
reloj por su duración (por ejemplo, 10 ns) o por su frecuencia (por ejemplo,
100 MHz). El tiempo de CPU para un programa puede expresarse entonces de dos
formas:
Tiempo de CPU = Ciclos de reloj de CPU para un programa x Duración del
ciclo de reloj
O
3.3 ciclos por instrucción.-
Además del número de ciclos de reloj para ejecutar un programa, también
se puede contar el número de instrucciones ejecutadas - el recuento de
instrucciones (IC, instruction count). Si se conoce el número de ciclos de
reloj y el recuento de instrucciones, es posible calcular el número medio de
ciclos de reloj por instrucción (CPI):
Esto permite utilizar al CPI en la fórmula del tiempo de ejecución:
Tiempo de CPU = IC x CPI x Duración del ciclo
de reloj
O
Como demuestra esta fórmula, el rendimiento del CPU depende de tres
características: ciclo de reloj (o frecuencia), ciclos de reloj por instrucción
(CPI), y recuento de instrucciones (IC).
3.4 MIPS.-
En esta sección se analizan otras alternativas al tiempo, propuestas
como métricas para los programas reales.
Una de estas alternativas son los MIPS, o millones de instrucciones por
segundo. Para un programa dado, los MIPS son sencillamente
La relación de los MIPS
con el tiempo es:
Existen problemas,
cuando se utilizan los MIPS como medida para hacer comparaciones:
· Los MIPS varían entre programas en la misma
computadora.
· Los MIPS pueden variar inversamente al
rendimiento.
3.5 MFLOPS.-
Otra alternativa al tiempo de ejecución son los millones de operaciones
en punto flotante por segundo, abreviadamente megaFLOPS o MFLOPS, pero siempre
pronunciado «megaflops». La fórmula de los MFLOPS es:
Una estimación en MFLOPS depende de la máquina y del programa. Como los
MFLOPS se pensaron para medir el rendimiento en punto flotante, no son
aplicables fuera de ese rango.
El término MFLOPS está basado en las operaciones en lugar de las
instrucciones, y se pensó para que fuera una comparación buena entre diferentes
máquinas.
4. REFERENCIA BIBLIOGRÁFICA.-
Conceptos basicos de metricas, Universidad de las Americas Puebla UDLAP, recuperado el 2 de septiembre de 2012
No hay comentarios:
Publicar un comentario