P - 5 - v2

December 30, 2022 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download P - 5 - v2...

Description

 

EL RENDIMIENTO EN LOS COMPUTADORES

 

INTRODUCCIÓN Rendimient Rendimiento o

-> medida de productividad o capacidad de trabajo en función de parámetros o características.

El

rendimiento rendimient o no es una medida única, sino una relación entre varias medidas y parámetros, y depende del objetivo al que se oriente or iente el trabajo trabajo..

 

¿Por qué medir el rendimient rendimiento o de un computador?  Elegir el

computad computador or con mejor rendimient rendimiento o

 Diseñar,

montar o elegir un computador que sea apto para la aplicación en la que va ser utilizado: utili zado:  

Rápido Capacidad de almacenamien almacenamiento to adecuada

Capacidad de comunicaciones adecuada Sistema gráfico adecuado  Múltiples usuarios  Mantenimiento  Escalabilidad  

 De los que 

cumplen: el más barato

Desembolso inicial, coste de las ampliaciones, consumo, mantenimiento, …

 

RENDIMIENTO EN LOS COMPUTADORES Rendimiento =

capacidad de un sistema para realizar un

trabajo en un determinado tiempo.  = 

1 

El

rendimiento de un computador está relacionado con

el tiempo que tarda en ejecutar los progr programas. amas. El

tiempo es la medida del rendimiento de un computador.

 

EJEMPLO - RENDIMIENTO  Cuál de los

siguientes automóviles tiene mejor rendimiento. Coche

Consumo

Velocidad

Plazas

Precio

 A

4.5

145

4

13.400

B

7.1

185

7

15.300

 El rendimiento dependerá de la finalidad a la que

se quiera destinar el vehículo y de unos parámetros, en este caso consumo, velocidad, etc.:: etc.   

Si se utiliza para transportar 2 personas diariamente costo, el rendimiento rendimien to mejor será el del vehículo A. teniendo en cuenta el Si el vehículo es requerid requerido o para recorrer 100 km y transportar 6 personas, el rendimiento rendimient o mejor ser seráá el del vehículo B. Si prima el tiempo en un determinado recorri recorrido do la elección acertada es el B.

 

Cómo medir el rendimiento  Para

una máquina

 ¿Cuántas veces es mejor

la máquina A que la B? B?  ¿Cómo medir las 

prestaciones?

Dependerá de la aplicación donde se quiera utilizar el ordenador

 ¿Costo?  

Difícil de evaluar: sometido a las leyes del mercado Generalmente Generalmen te se supone que los costos son iguales.

 

Medir las prestaciones Tiem Tiempo po

de e ejecució jecución n de los prog program ramas as

 ¿Cómo

medirlo?

✔Manualmente.

El computador más rrápido ápido en ejecutar u un n programa en igualdad de condiciones, es el de mejor rendimiento.

✔Par Paraa conocerlo a priori, se

✔Tiempo =

usan técnicas de análisis de algoritmos

Progr Programa ama * Factor El factor se determina de acuerdo con las propiedades del computador y de su diseño. Generalmente se eextrae xtrae de información proporcionada por el fabricantee (no siempre se ajusta a las condiciones reales de operación del fabricant computador.

 

Métricas básicas Periodo

y frecuencia de reloj de la CPU (MHz, GHz)

Tiempo de ejecución

de un programa (latencia ): Tiempo

de respuesta Productividad:

tiempo

CPI:

Operaciones realizado realizado por unidad de

Ciclos por instrucción

MIPS:

Millones de instrucciones por segundo

 

Tiempo de ejecución de un programa Tiempo

de ejecución = Tiempo para completar una tar tarea ea

 Dos componentes: ✔Tiempo de

CPU: tiempo de la CPU empleado en ejecutar un programa incluido la parte correspondient correspondientee de SO. ✔Rest Resto: o: tiempo de espera de la E/S o de ejecución de otros programas

Si se mide el rendimiento como tiempo de ejecución

 

Rendimiento to y tiempo de ejecución Rendimien Rendimiento  Es una

del computador

medida del conjunto CPU más Sistema Operativo Operativo

¿Cuántas

veces es mejor la CPU A que la CPU B?

Computador completo (incluye elementos del SO, virus,…)

Depende del

programa programa utilizado: caso me medio, dio, casos extremos (mejor y peor caso)  Benchmark (Eje: SPEC’ SPEC ’s): Simular diferent diferentes es tipos de

aplicación.

 

PRODUCTIVIDAD  Mide la cantidad de trabajo realizado por unidad de tiempo 

Programas ejecutados por hora, instrucciones ejecutadas por segundo, consultas WWW despachadas por segundo

 Frente a tiempo de ejecución 

Tiempo para ejecutar un programa, para ejecutar una instrucción, para despachar una consulta en un servidor WWW

RELOJ  

 Frecuencia de reloj 

Todo procesador tiene un reloj interno que funciona a frecuencia constante.

 Duración del ciclo de reloj (periodo): 

inverso inverso de la frecuencia T=

Los retardos máximos en los elementos del procesador fijan la frecuencia máxima del reloj

   

 

RENDIMIENTO DEL PROCESADOR

 

RENDIMIENTO DEL PROCESADOR  El

rendimiento del procesador depende de los siguientes

parámetros: 

1. Frecuencia de la CPU (f CPU) : Número de ciclos por segundo al que trabaja el procesador o CPU. No confundir la frecuencia de la CPU con la frecuencia del sistema, el bus del sistema trabaja a menor frecuencia que la CPU.

f CP CPU U 



n ciclos segundo

2. Periodo de la CPU (TCPU) : es el tiempo que dura un ciclo y es el inverso de la frecuencia de la CPU. 1  TCPU =

f  CPU

 

RENDIMIENTO DEL PROCESADOR 

3. Ciclos por instrucción (CPI) : las instrucciones se descomponen en

microins microinstrucciones, trucciones, que son operaciones que sede ejecutan en un ciclo de reloj. En un programa se llama CPIbásicas al promedio microinstrucciones que tienen las instrucciones del programa, es decir decir,, los ciclos de reloj promedio que tarda en ejecutar una instrucción. Cuidado, n

  N º  Instruc CPI  



i

 CPI i

i 1

 N º  InstrucTot 

CPIi son los ciclos por instrucción de cada instrucción CPI son los ciclos promedio promedio de de un programa

4. Número de instrucciones del programa : mientras más instrucciones haya en un programa, más tiempo tarda en ejecutarse, lo cual baja el rendimiento. rendimient o. El que tengamos un número reducido de instrucciones dependerá del programador y del compilador compilador..

 

RENDIMIENTO DEL PROCESADOR 

5. Multitarea : Capacidad que tiene un computador de atender

simultáneamente varias tareas. 

El rendimiento de un procesador para un programa concreto es un factor

inversamente inver samente proporcional al tiempo que tarda en ejecutar dicho programa.

η prog  



1 

T prog

El tiempo de programa depende a su vez del número de instrucciones del programa progr ama y del tiempo que se tarda en ejecutar cada instrucción.

TProg  N  instruc.    Tinstrucciones

 

RENDIMIENTO DEL PROCESADOR 

El tiempo El  tiempo que tarda en ejecutarse cada instrucción depende del número de

microinstrucciones microins trucciones ciclos en losciclos que se Cada microinstrucción taroda tarda distintos de descompone. rreloj eloj en ejecutar ejecutarse, se, por lo que se hace un promedio ponderado de ciclos de instrucción.  T

 



C  PI * T

instrucción

CPU

 Tprog    N instruccio   nes * CPI * TCP CPU U

  prog 



1

T  pro  prog  g 



1

 

 

 N  instruc * CPI * T CPU 



 f  CPU   N  instruc * CPI 

s

1

 

RENDIMIENTO DEL PROCESADOR  El

rendimiento de un pr rendimiento procesador ocesador para un determinado programa programa

se determina en función de tres factores: 

Frecuencia de la CPU  Depende de la tecnología de fabricación del procesador. Cuanto mayor sea la frecuencia de la CPU, mejor será el rendimiento.



Número de instrucciones del programa Depende del programador, del lenguaje de programación y del compilador. Cuanto mayor sea el número de instrucciones menor será el rendimiento. rendimiento.



CPI  Depende de diseño interno o arquitectur arquitecturaa del computador y del software o instrucciones que se hayan elegido. Es importante optimizar el programa con instrucciones que tengan pocos ciclos. Cuanto mayor sea el CPI, peor será el rendimiento rendimiento..

 

¿CÓMO SE MIDE EL CPI DE UNA CPU?  Depende del programa utilizado 

Los programas utilizan subconjuntos diferentes diferentes del juego de instrucciones del procesador ✔Cálculo

científico (operaciones en coma flotante) ✔Manejo de base de datos (mover datos entre posiciones de memoria)  Ejemplo: Dado un Benchmark de 80 instrucciones • • •

25 instrucciones son del tipo LOAD/STORE LOAD/STORE (MOVE): 8 ciclos 50 instrucciones son del tipo ADD: 4 ciclos 5 instrucciones son del tipo raíz cuadrada: 100 ciclos CPI = (25*8 + 50*4 + 5*100)/80 = 13.8 ciclos/instrucción



Si fuera un programa con una sola instrucción de d e cada tipo CPI = (8 + 4 + 100)/3 = 37.3 ciclos/instrucción

 

EJEMPLO 1 Ejemplo de rendimiento con CPI 

Se tiene dos implementaciones (CPU_A y CPU_B) con el mismo juego de instrucciones. La CPU_A tiene un ciclo de reloj de 1 ns y CPI de 2.0 y la CPU_B tiene un tiempo de ciclo de 2 ns y un CPI de 1.2. ¿Cuál es la máquina más rápida y cuánto?

   I  es 



el número de instrucciones del programa A es 1.2 veces más rápido que B

Si el periodo de B pasa a 1.3 ns ¿que y como? cambia



B es 1.282 veces más rápido que A

Sólo es válido para el programa utilizado para calcular el CPI 

EJEMPLO 2

 



Un diseñador de d e compiladores está intentando intentando decidir entre dos secuencias de código para un mismo pro programa. grama. Los diseñadores de la CPU donde correrá correrá ese programa programa le han proporcionado los siguient siguientes es datos

 Tiempo ejecución secuencia 1 ✔T1= (2*1+1*2+2*3)*T = 10*T = 10 ciclos (5 instrucciones); CPI1=2  Tiempo ejecución secuencia 2 ✔T2= (4*1+1*2+1*3)*T = 9*T = 9 ciclos (6 instrucciones); CPI2=1.5 

La secuencia 2 es más rápida que la secuencia 1 aunque tenga más instrucciones

Todos los factores son importantes en la medida del rendimiento

 

EJEMPLO 3 



Dadas las caracterí características sticas de un programa calcular el tiempo que tarda en ejecutarse el programa y su rendimiento. rendimiento. Se sabe que la CPU trabaja a 1GHz. El programa se compone de 19 instrucciones de tres tipos: A, B y C y cada tipo de instrucción tiene un número de microinstrucciones diferente según se indica: Instrucciones/Prog.

CPIi

 A

5

2

B

6

3

C

8

1

Tiempo de progr programa: ama: CPI 

T  pro g  

 Tipo de instrucción



   N  instruc. * CPI   

i

 N  instruc. TOTAL







5 * 2  6 * 3  8 *1 19

 N  instruc. * CPI  * T CPU  

 19 *1.89 *

  prog 



1 

T   prog 

  27777777.78 s  



36ns

 1.89

   36ns 1 6 1000 * 10

Rendimiento: 1



1



 

EJEMPLO 4 

Se dispone de un computador basado en un Pentium IV a 2GHz. Se ejecuta un programa compuesto compuesto por 1000 instrucciones. Según los datos de la siguiente

tabla, calcular el rendimiento:  Tipo de instrucción

Instrucciones/Prog.

CPIi

20% 10% 10%/10%

4 3 7/5

30% 20%

3 4

Lógico-Aritmética Salto incondicional Salto condicional Carga (Reg
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF