• No se han encontrado resultados

RENDIMIENTO Y MEJORA DE LA CPU

N/A
N/A
Protected

Academic year: 2021

Share "RENDIMIENTO Y MEJORA DE LA CPU"

Copied!
24
0
0

Texto completo

(1)

UPCO ICAI Departamento de Electrónica y Automática 1 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

RENDIMIENTO Y MEJORA DE LA CPU

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

¿Por qué hablar de rendimiento de un ordenador?

RAE 92: “Proporción entre el producto o el resultado

obtenido y los medios utilizados”.

Elegir el ordenador con mejor rendimiento (EL MEJOR)

Diseñar, montar o elegir un ordenador que sea apto para la

aplicación en la que va ser utilizado:

– Rápido

– Capacidad de almacenamiento adecuada – Capacidad de comunicaciones adecuada

– Sistema gráfico adecuado (Servidor WWW vs. Cliente WWW) – Múltiples usuarios

– Mantenimiento – Escalabilidad

De los que cumplen: el más barato

(2)

UPCO ICAI Departamento de Electrónica y Automática 3 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

¿Cómo medir el rendimiento?

Fórmula para una máquina

¿Cuántas veces es mejor la máquina A que la B?

¿Cómo medir las prestaciones?

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

¿Coste?

– Difícil de evaluar: sometido a las leyes del mercado

– En la mayoría de los casos al comparar rendimientos se supone que los costes son iguales (Tabla de comparación de Intel)

Coste

es

Prestacion

o

Rendimient

=

r_B o_Ordenado Rendimient r_A o_Ordenado Rendimient n= or_B es_Ordenad Prestacion or_A es_Ordenad Prestacion r_B o_Ordenado Rendimient r_A o_Ordenado Rendimient n= = Arquitectura de Ordenadores Rendimiento y mejora de la CPU

(3)

UPCO ICAI Departamento de Electrónica y Automática 5 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

¿Qué mide? ¿Mi AMD será más rápido?

¿Mi aplicación correrá más rápida en un AMD que en un

Pentium?

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Medir las prestaciones

Fundamental: Tiempo de ejecución de los programas

– ¿Cómo medir?

• A mano: cronómetro en mano

– NO FALLA: el más rápido en ejecutar un programa siempre es el mejor a igualdad de coste.

– ¿Cómo saber esto a priori? • Mediante una fórmula

– Tiempo = Programa * Factor

– ¿Cómo se comparan o miden programas? – ¿Cómo se calcula ese factor?

– Problema de parada de la máquina de Turing: “No existe un algoritmo general que permita calcular el número de operaciones de cualquier tipo de algoritmo (programa)”

– ¿Cómo mejorar a partir de las medidas la arquitectura?

Más prestaciones: almacenamiento, conexión...

(4)

UPCO ICAI Departamento de Electrónica y Automática 7 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

¿Qué números? Métricas básicas

Periodo o frecuencia de reloj de la CPU (MHz, GHz)

Tiempo de ejecución de un programa (latencia - Latency)

– Tiempo de respuesta

– El ordenador más rápido es el que tarda menos en ejecutar un programa

– Mejorar el rendimiento = Mejorar el tiempo de ejecución = Decrementar el tiempo de ejecución

– ¿Cómo saber esto a priori?

• ¿Qué mejorar de la máquina? ¿Futuras aplicaciones?

Productividad (Throughput)

– Cuánto trabajo (operaciones) puede realizar por unidad de tiempo

CPI

– Ciclos por instrucción

MIPS

– Millones de instrucciones por segundo

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Tiempo de ejecución de un programa (latencia)

El tiempo de ejecución es la medida básica del rendimiento

del ordenador

Es el tiempo total para completar una tarea

– Desde que se arranca hasta que se termina – Dos componentes:

• Tiempo de CPU: tiempo de la CPU empleado en ejecutar nuestro programa incluido la parte correspondiente de SO.

• Resto: tiempo de espera de la E/S o de ejecución de otros programas

Tiempo de CPU

– Tiempo de Usuario: Tiempo de la CPU gastado en modo usuario – Tiempo de Sistema Operativo: Tiempo de la CPU gastado por el

sistema operativo ¿Cómo se reparte entre usuarios? ¿Diferentes OS?

Ejemplo en UNIX (comando time): 90.7u 12.9s 2:39 65%

– Usuario: 90.7s; SO: 12.9s

(5)

UPCO ICAI Departamento de Electrónica y Automática 9 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Rendimiento y tiempo de ejecución

Si se mide el rendimiento como tiempo de ejecución

– Rendimiento de todo el ordenador

– Si sólo se tiene en cuenta el tiempo de CPU es una medida del conjunto CPU más Sistema Operativo

¿Cuántas veces es mejor la CPU_A que la CPU_B?

Ordenador completo

Depende del programa utilizado: caso medio, casos extremos

– Benchmark (Eje: SPEC’s): Simular diferentes tipos de aplicación.

grama_A cución_Pro Tiempo_Eje grama_B cución_Pro Tiempo_Eje B r o_Ordenado Rendimient r_A o_Ordenado Rendimient n= = _ grama cución_Pro Tiempo_Eje 1 o Rendimient = Programa _A Tiempo_CPU Programa _B Tiempo_CPU B o_CPU Rendimient o_CPU_A Rendimient n _ _ _ = = Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Throughput

Mide la cantidad de trabajo realizado por unidad de tiempo

– Número de programas ejecutados por hora – Número de instrucciones ejecutadas por segundo – Número de consultas WWW despachadas por segundo – Medir la productividad: Director CPD (¿A cuántos doy servicio?)

Frente a tiempo de ejecución (latencia)

– Tiempo que tarda en ejecutarse un programa – Tiempo que tarda en ejecutarse una instrucción

– Tiempo en despachar una consulta en un servidor WWW – Medida muy cercana al usuario final (¿Cuánto tarda?)

Ejemplo

– Un ordenador tarda 8 s. en ejecutar dos programas de igual carga:

• Tiempo de ejecución: 4 s (uno tras otro / multitarea: 8s aprox.) • Throughput: 2 programas/8 segundos=0.25

(6)

UPCO ICAI Departamento de Electrónica y Automática 11 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Reloj

Frecuencia de reloj

– Todo procesador tiene un reloj interno que funciona a frecuencia constante (¿Ordenadores portátiles?).

– Todo en el procesador ocurre a ritmo de ese reloj – Gasto energético es proporcional a la frecuencia del reloj

• Muy importante para el rendimiento en sistemas móviles

– Mayor frecuencia no significa mayor rendimiento (Intel y AMD). – Ejemplo:

• 500 MHz: 500.000.000 ciclos por segundo (1GHz = 109ciclos/s.)

Duración del ciclo de reloj (periodo): inverso de la frecuencia

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

– Dato más del diseñador (¿Me he comprado un ordenador de 1 ns?) – Ejemplo: 500 MHz -> 2 ns (1 nanosegundo=10-9 s; f: 1GHz)

• 1 ms (milisegundos) = 10-3s (f: 1KHz); 1 µs (microsegundo): 10-6s (f: 1MHz); 1 ps (picosegundo) = 10 -12s (f: 1THz).

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Relación entre tiempo de CPU y reloj

Recuerde que tiempo de CPU es el tiempo de CPU

necesario para ejecutar un trozo de código

Ejemplo:

– CPU 500MHz, Programa que ocupa 100000 ciclos

• Tiempo CPU: 1*105 / 500*106 = 2 * 10-4= 20 ms (Utilizar siempre prefijo adecuado)

A igualdad de arquitectura: mayor frecuencia = menor

tiempo de ejecución = mayor rendimiento

¿Cuántos ciclos de reloj necesita un programa para

ejecutarse?

– Volvemos al “Problema de parada de la máquina de Turing” – ¿Cómo pasar de número de instrucciones a número de ciclos?

_Reloj

ma*Periodo

los_Progra

Número_Cic

Tiempo_CPU

=

_Reloj Frecuencia ma los_Progra Número_Cic Tiempo_CPU =

(7)

UPCO ICAI Departamento de Electrónica y Automática 13 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Otra métrica: Ciclos por instrucción (CPI)

Número medio de ciclos de reloj (ciclos máquina) por

instrucción

A igualdad de arquitectura y reloj si disminuye el CPI

aumenta el rendimiento

Teóricamente es una medida estricta del rendimiento de la

CPU

– No aparece ni Sistema Operativo ni los tiempos de espera de la Entrada/Salida – ¿Cómo se mide? _Programa trucciones Número_Ins ma los_Progra Número_Cic CPI= CPI_CPU_A CPI_CPU_B B o_CPU Rendimient o_CPU_A Rendimient n= = _ Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Ejemplo de rendimiento con CPI

Se tiene dos implantaciones (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 (¿Qué frecuencia?) cambia

– B es 1.28 veces más rápido que A

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

2 . 1 1 * 2 * 2 . 1 * 2 * _ _ _ = = = = I I _A Tiempo_CPU B CPU Tiempo B o_CPU Rendimient o_CPU_A Rendimient n 28 . 1 1 1 * 2 * 2 . 1 * 3 . 1 * _ _ _ = = = = I I _A Tiempo_CPU B CPU Tiempo B o_CPU Rendimient o_CPU_A Rendimient n

(8)

UPCO ICAI Departamento de Electrónica y Automática 15 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

¿Cómo se mide el CPI de una CPU?

Depende del programa utilizado

– Los programas utilizan subconjuntos 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: Benchmark de 80 instrucciones

– 25 instrucciones son del tipo LOAD/STORE (MOVE): 8 ciclos – 50 instrucciones son del tipo ADD: 4 ciclos

– 5 instrucciones son del tipo raiz 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 cada tipo CPI = (8 + 4 + 100)/3 = 37.3 ciclos/instrucción

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Ecuación básica del rendimiento

Función del número de instrucciones, CPI y periodo

En algunos casos CPI se concreta para diferentes tipos de

instrucciones

– Tipo i de instrucción necesita CPIiciclos – Ii: número de instrucciones del tipo i

– T: Periodo

T

CPI

I

t

Periodo

CPI

_Programa*

trucciones

Número_Ins

cución

Tiempo_Eje

=

=

*

= I CPI T t ( i* i)*

Número de instrucciones CPI Periodo

Programa X

Compilador X (X)

Juego de instrucciones X X

Organización de la CPU X X

(9)

UPCO ICAI Departamento de Electrónica y Automática 17 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Ejemplo de rendimiento

Un diseñador de compiladores está intentando decidir

entre dos secuencias de código para un mismo programa.

Los diseñadores de la CPU donde correrá ese programa le

han proporcionado los siguientes 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 el rendimiento Instrucciones CPI

Tipo A 1

Tipo B 2

Tipo C 3

Tipo A Tipo B Tipo C

1 2 1 2

2 4 1 1

Secuencia de código

Total de instrucción por clase

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

MIPS

Millones de instrucciones que ejecuta el procesador por

segundo

Sólo sirve para comparar CPU’s que implantan el mismo

juego de instrucciones

Medida del rendimiento engañosa:

– CPU A (1MHz) tiene una instrucción especial para realizar la raiz cuadrada que tarda 100 ciclos en ejecutarla

– CPU B (1MHz) no tiene la instrucción especial de raiz cuadrada y hay que hacerla por software mediante instrucciones ADD, MUL, etc. donde todas tardan 1 ciclo de reloj

– MIPS(CPU A)=0.01

– MIPS(CPU B)=1 ¿Quién hace más rápido la raiz cuadrada?

6 *10 Tiempo_CPU _Programa trucciones Número_Ins MIPS=

(10)

UPCO ICAI Departamento de Electrónica y Automática 19 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Más sobre MIPS

Utilizado para comparar máquinas diferentes de forma

engañosa

– Número de instrucciones por segundo – Contenido semántico de las instrucciones – Programa con que se ha hecho la medida – Compilador utilizado

MIPS de pico

– Velocidad de ejecución de las instrucciones en el mejor de los casos

• Se toma un programa que tiene una sola instrucción que es la más rápida de ejecutar del juego de instrucciones.

MIPS y CPI son equivalentes

– MIPS es interesante para el usuario, CPI para el diseñador

6 o*10 CPI*Period _Programa* trucciones Número_Ins _Programa trucciones Número_Ins MIPS= Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Contabilizar operaciones de coma flotante en alto nivel frente

a instrucciones necesarias para ejecutarlas

– No depende de la arquitectura de la máquina (MIPS, CPI) – No depende del compilador

Problemas

– Sólo es aplicable a programas que hagan uso masivo de la coma flotante (entornos de cálculo científico)

– Depende del programa: una división tarda más que una multiplicación

Solución MFLOPS normalizados (Función semejante a CPI

i

)

6 10 * Tiempo_CPU te oma_Flotan raciones_C Número_Ope MFLOPS=

MFLOPS

Operaciones Coste normalizado

ADD, SUB, COMPARE, MULT 1

DIVIDE, SQRT 4

(11)

UPCO ICAI Departamento de Electrónica y Automática 21 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Resumen de lo visto: Medidas del rendimiento

Compilador Lenguaje de Programación Aplicación Datapath Control

Transistores Cables Pines

ISA MIPS

MFLOPS

Reloj

Respuestas diarias

Transacciones por segundo Tiempo de respuesta CPI Tiempo de respuesta Medir para saber si la CPU es adecuada para la aplicación Medir para saber si la CPU mejora (Independiente de la aplicación) Arquitectura de Ordenadores Rendimiento y mejora de la CPU

¿Qué programa elegir para medir?

Mejor medida: CARGA REAL

– Comparar con el programa que estás siempre utilizando – Problema: No se sabe a priori que programas se van a ejecutar

Alternativa: Programas de prueba (BENCHMARK)

– Predecir el rendimiento de la máquina cuando ejecute los programas reales. Simular la posible carga real.

¿Cómo construir un benchmark?

– Medida reproducible – No vulnerable

• Preparar la CPU o el compilador para ejecutar más rápidamente del código del benchmark

– Conjunto de varios programas para que sea representativo

• Programas actuales • Programas futuros: Difícil

(12)

UPCO ICAI Departamento de Electrónica y Automática 23 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Ponderación en Intel

Java

Audio, vídeo, imagen Juegos 3D

Ofimática Ofimática

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Diferentes tipos de benchmarks

Basados en aplicaciones reales

– Científicas (secuenciación genoma), ingeniería (CAD, elementos finitos), bases de datos, edición, compiladores

– Filosofía de los SPEC

Núcleos: trozos críticos de programas representativos

– Facilidad

Microbenchmark (Medir aspectos concretos del sistema)

– Operación en coma fija – Operación en coma flotante – Entrada/salida

– Memoria

– Sistema Operativo

Otros: juegos, algoritmos muy concretos (Ordenación)

El mejor: tu aplicación

(13)

UPCO ICAI Departamento de Electrónica y Automática 25 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Comparación entre benchmarks

CARGA REAL BENCHMARK BASADOS EN APLICACIONES REALES NÚCLEOS MICROBENCHMARK Pros Contras • Representativo • Muy específico • No portable

• Difícil de correr o medir • Difícil para identificar

causas de bajo rendim.

• Portable • Ampliamente usados • Mide mejoras sobre la realidad • Fáciles de correr, incluso en etapas tempranas del diseño • Menos representativo • Vulnerables • Difícil de extrapolar a

una aplicación real USUARIO

DISEÑADOR

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

SPEC

Sistem Performance Evaluation Cooperative (SPEC)

– Fundada en 1988 por un número pequeño de fabricantes y

vendedores de estaciones de trabajo, concienciados de la necesidad desesperada de disponer de un conjunto de test para medir el rendimiento (prestaciones) de una forma realista y estandarizada – Ha crecido hasta convertirse en el estándar de facto.

Filosofía de SPEC

– Asegurar que el mercado tenga un conjunto de métricas realistas y fáciles de usar para comparar diferentes sistemas entre sí.

– La base de la metodología SPEC es utilizar benchmark basados en un conjunto de códigos extraídos de aplicaciones reales

Diferentes tipos de benchmark

– CPU: SPECint2000, SPECfp2000, SPECint95, SPECfp95 – WWW: SPEC JBB2000, SPEC JVM98, SPEC WEB99 – OS: SPEC SFS97 (medidas de throughput)

(14)

UPCO ICAI Departamento de Electrónica y Automática 27 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Programas: SPEC CINT2000 Benchmarks

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

(15)

UPCO ICAI Departamento de Electrónica y Automática 29 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Ejemplo de SPEC (¿cómo es la situación actual?)

Modelo INT2000

Intel D850GB motherboard (2.0 GHz, Pentium IV) 640

hp workstation j6700 (PA-8700 750 MHz) 569

AlphaServer GS320 68/(Alpha 21264C 1001 MHz) 561 Gigabyte GA-7DX Motherboard (AMD Athlon 1.4GHz) 495 Sun Blade 1000 Model 1900 (UltraSPARC-III 900 MHz) 439

IBM RS/6000 Model M80 (RS64 IV 750 MHz) 409

SGI 2200 1X (R14k 500MHz) 397

CFP2000 Intel D850GB motherboard (2.0 GHz, Pentium IV) 704

hp server rx4610 (Intel Itanium 800 MHz) 701

AlphaServer ES40 6/833 (Alpha 21264B 833 MHz) 621 Sun Blade 1000 Model 1900 (UltraSPARC-III 900 MHz) 427 Gigabyte GA-7DX Motherboard (AMD Athlon 1.4GHz) 426

SGI 2200 1X (R14k 500MHz) 362

IBM RS/6000 Model M80 (750 MHz) 359

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Configuraciones de máquinas

Hewlett Packard Corporation

hp server rx4610

CPU: Intel Itanium

CPU MHz: 800

CPU(s) enabled:1

CPU(s) orderable: 2-4

Primary Cache:16KBI + 16KBD on chip

Secondary Cache:96KB(I+D) on chip

L3 Cache: 4MB(I+D) off chip

Other Cache: N/A

Memory: 8 GB (64 * 128MB DIMMs)

Disk Subsystem: 1x36 GB SCSI

Advanced Micro Devices

Gigabyte GA-7DX Motherboard

CPU: 1.4GHz AMD Athlon processor A1400AMS3C

CPU MHz: 1400

CPU(s) enabled: 1

CPU(s) orderable: 1

Primary Cache: 64KBI + 64KBD on chip

Secondary Cache: 256KB(I+D) on chip

L3 Cache: N/A

Other Cache: N/A

Memory: 2x128MB PC2100 DDR SDRAM CL2

Disk Subsystem: IBM DPTA 375020

(16)

UPCO ICAI Departamento de Electrónica y Automática 31 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

MIPS comparado con un benchmark

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Otros benchmarks (Ver web AMD e Intel)

Video Encoding

– Microsoft Windows Media Encoder – Ligos Technology GoMotion – Adobe PhotoDeluxe 3.0

Compute Intensive

– Ziff Davis Inc. 3D WinBench™ 2000, v1.0 Processor Test – SiSoft Sandra Multimedia SIMD FP

– SiSoft Sandra Multimedia SIMD Integer

– eTesting Labs Inc. WinBench® 99, v1.2 CPUmark™ 99 – eTesting Labs Inc. WinBench® 99, v1.2 FPU WinMark 99 – ¿Dónde está SPEC?

Productivity

– BAPCO™ SYSmark™ 2000 - Overall

– BAPCO™ SYSmark™ 2000 Office Productivity – BAPCO™ SYSmark™ 2000 Microsoft® Excel 2000 – BAPCO™ SYSmark™ 2000 Microsoft® PowerPoint 2000 – eTesting Labs Inc. Business Winstone™ 2001, v1.0

(17)

UPCO ICAI Departamento de Electrónica y Automática 33 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Si se mejora la ejecución de una parte del programa

(speedup de esta parte), no se mejora la ejecución de todo

el programa en la misma cantidad (speedup del conjunto).

Fórmula

– Caso anterior: SpeedupConjunto=1.1

Ley de Amdahl

10 s 90 s 100 s 91 s 1 s ) 1 ( 1 mejorada Fracción mejorada mejorado sin Conjunto Fracción Speedup Fracción Tiempo Tiempo Speedup − + = = Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Ejemplo de la ley de Amdhal

El tiempo de ejecución de un programa es 100 segundos en

un sistema monoprocesador. 50% del programa es

pararalelizable en un sistema multiprocesador. Se utiliza

un sistema con 5 procesadores. Calcular el speedup.

Corolario de la ley de Amdhal: Hacer más rápido el caso

más frecuente

El alumno suele cometer errores cuando se aplica la ley de

Amdahl para varias mejoras simultáneas.

7

.

1

5

.

0

1

.

0

1

)

5

.

0

1

(

5

5

.

0

1

=

+

=

+

=

Conjunto

Speedup

(18)

UPCO ICAI Departamento de Electrónica y Automática 35 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Caso multiprocesador

Grado de paralelización

del programa

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Precio (coste) de un ordenador

El coste y precio de un ordenador es equivalente a la de cualquier otro sistema.

Coste de fabricación – Componentes (muy sensible) – Costes directos: mano de obra,

gestión de compras, garantía, equipos defectuosos.

Coste indirecto o margen bruto

– R&D, mantenimiento, marketing, ventas, costes financieros, beneficio mínimo, impuestos.

Margen de descuento: descuento del precio final (compra por volumen, venta a distribuidores, etc) 25% al 40% Componentes Costes directos Margen bruto Margen de descuento Precio de lista Precio mínimo 34% al 39% 6% al 8% 15% al 33% Para comprar un ordenador o

sistema informático: 1. Que cumpla con los requisitos

2. Más barato (ojo con olvidarse de garantía, mantenimiento, etc)

(19)

UPCO ICAI Departamento de Electrónica y Automática 37 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Ejemplo de coste por elementos para un PC

La CPU sólo representa una pequeña fracción del coste

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

0% 20% 40% 60% 80% 100% Mini W/S PC Average Discount Gross Margin Direct Costs Component Costs 0 1 2 3 4 5 Mini W/S PC Average Discount Gross Margin Direct Costs Component Costs 4.7 3.8 1.8 3.5 2.5 1.5

Comparación de coste entre máquinas

(20)

UPCO ICAI Departamento de Electrónica y Automática 39 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Lo que me gustaría saber: rendimiento/coste

Secreto

Trabajo de consultoría muy bien pagado

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

¿Cómo se suma velocidad más capacidad más

throughtput...? Definir la función de coste y optimizarla

1/Prestaciones Coste Límite en la inversión Mínimo en las prestaciones Equipos a descartar

La curva de la verdad

(21)

UPCO ICAI Departamento de Electrónica y Automática 41 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Relación coste/rendimiento en Pentium III

100.000 78.000 55.000 45.000 42.000 3280 3100 2890 2690 2540 2420 Pentium III 700 750 800 866 933 1000 Coste 1/Rendimiento 2420 2540 2690 2890 3100 3280 Rendimiento Frecuencia 700 750 800 866 933 1000 Relación lineal: no hay cambios en la organización 750 descartado y 700 casi Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Ritmo de crecimiento del rendimiento / prestaciones

Evolución del rendimiento de los procesadores

0.1 1 10 100 1000 1965 1970 1975 1980 1985 1990 1995 2000 Rendi mien to Año Mainframes Minicomputers Microprocessors Supercomputers

(22)

UPCO ICAI Departamento de Electrónica y Automática 43 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez size Year 1000 10000 100000 1000000 10000000 100000000 1000000000 1970 1975 1980 1985 1990 1995 2000

año tamaño(Mb) Reloj

1980 0.0625 250 ns 1983 0.25 220 ns 1986 1 190 ns 1989 4 165 ns 1992 16 145 ns 1996 64 120 ns 2000 256 100 ns

Evolución memoria (un solo chip DRAM)

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Relaciones de Moore (Intel)

Si un estudiante tarda 6 años en realizar su carrera:

– Velocidad CPU

– Tamaños disco y memoria

– ¿A través de los SPEC se llega a la misma conclusión?

La distancia entre velocidad de CPU y memoria sigue

creciendo.

Capacidad

Velocidad (latencia)

Lógica

x2 en 3 años

x2 en 3 años

SPEC x2 en 1.5 años

DRAM

x4 en 3 años

x2 en 10 años

Disco

x4 en 3 años

x2 en 10 años

X 16

(23)

UPCO ICAI Departamento de Electrónica y Automática 45 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

Brecha entre procesador y DRAM (gap latency)

µProc

60%/año

DRAM

7%/año

1

10

100

1000

1980 1981 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 DRAM CPU 1982

Procesador-Memoria

rendimiento brecha:

(crece 50% / año)

Re

ndimi

ent

o

Año

“Ley de Moore”

D.A. Patterson “ New directions in Computer Architecture” Berkeley, June 1998

Arquitectura de Ordenadores Rendimiento y mejora de la CPU

Pow er Dissipatio n 0 20 40 60 80 100 120 21064 21164 21264 21364 Pow e r ( W ) 0 0.5 1 1.5 2 2.5 3 3.5 Vo lt a g e ( V ) Supply Current 0 10 20 30 40 50 60 70 80 21064 21164 21264 21364 C u rre n t ( A ) 0 0.5 1 1.5 2 2.5 3 3.5 V o lt ag e ( V )

Joel Emer, Compaq, HPCA00

Rendimiento y potencia consumida

La potencia consumida se está incrementando

La corriente de la fuente de alimentación está aumentando

más rápidamente

(24)

UPCO ICAI Departamento de Electrónica y Automática 47 José A. Rodríguez Mondéjar

Cesáreo Fernández Martínez

) 1 ( 1 mejorada Fracción mejorada mejorado sin Conjunto Fracción Speedup Fracción Tiempo Tiempo Speedup − + = =

Periodo

CPI

_Programa*

trucciones

Número_Ins

cución

Tiempo_Eje

=

*

Resumen de rendimiento (I)

Fórmula fundamental del tiempo de ejecución (CPI)

– Todos los factores influyen

Ley de Amdahl:

– La mejora tiene un límite: importancia del elemento

Mejores benchmarks: tiempo de ejecución y throughput

– ¿CPU, disco duro, sistema operativo o máquina completa?

Relaciones o leyes de Moore

– La velocidad de la CPU crece más rápidamente que la memoria

La política de precios de ordenadores, compras de

ordenadores es equivalente a la de cual otro sistema

Referencias

Documento similar

Fuente de emisión secundaria que afecta a la estación: Combustión en sector residencial y comercial Distancia a la primera vía de tráfico: 3 metros (15 m de ancho)..

Los directivos más exitosos en las escuelas heterogéneas mantienen su atención prioritaria en mejorar la enseñanza, las prácticas de aula y ayudar a los docentes a

If certification of devices under the MDR has not been finalised before expiry of the Directive’s certificate, and where the device does not present an unacceptable risk to health

In addition to the requirements set out in Chapter VII MDR, also other MDR requirements should apply to ‘legacy devices’, provided that those requirements

The notified body that issued the AIMDD or MDD certificate may confirm in writing (after having reviewed manufacturer’s description of the (proposed) change) that the

diabetes, chronic respiratory disease and cancer) targeted in the Global Action Plan on NCDs as well as other noncommunicable conditions of particular concern in the European

 Tejidos de origen humano o sus derivados que sean inviables o hayan sido transformados en inviables con una función accesoria..  Células de origen humano o sus derivados que

d) que haya «identidad de órgano» (con identidad de Sala y Sección); e) que haya alteridad, es decir, que las sentencias aportadas sean de persona distinta a la recurrente, e) que