Sie sind auf Seite 1von 47

ARQUITECTURA e INGENIERA de COMPUTADORES

Bloque 1: Introduccin a la Arquitectura e


Ingeniera de los Computadores
Leccin 1: Concepto de Arquitectura
Por qu es posible comprar hoy un PC con ms
prestaciones que un Cray 1?Qu hace
diferentes dos arquitecturas?
2
Bibliografa
1. J. L. HENNESSY and D. A. PATTERSON.
Computer Architecture. A Quantitative Approach,
Morgan Kaufmann, 3
rd
edition, 2003.
2. D. SIMA and T. FOUNTAIN, and P. KACSUK.
Advanced Computer Architectures: A Design Space Approach,
Addison Wesley, 1997.
3. J. ORTEGA, M. ANGUITA y A. PRIETO.
Arquitectura de Computadores,
Thomson, 2005.
3
1. Estrategias para mejorar las prestaciones de los
computadores
1. Interaccin entre tecnologa, aplicaciones y arquitectura
2. Paralelismo y localidad
2. Clasificacin de las arquitecturas
Contenidos
4
Arquitectura Tecnologa
Mercado
Aplicaciones
Posibilidades
Restricciones
Econmicas
Seleccin
Demanda
Nuevas
Restricciones
Posibilidades
Posibilidades
Capacidades
Prestaciones
Promueve
Generacin
Fundamental
Fuerte
Visible
Adaptado de Vajapeyam/Valero (Computer, Abril 2001)
Evolucin de los Computadores
5
60 70 80 90 00
PCs y
Estaciones de
Trabajo
Servidores
Microprocesadores
Mainframes
Grandes
computadores para
aplicaciones de
negocios y cientficas
de gran volumen.
Minicomputadores
Aplicaciones cientficas
en laboratorios y
pequeas
organizaciones
Redes
WWW
Computadores
Embebidos
Rpido crecimiento (tecnologa y herramientas de diseo):
electrnica digital de altas prestaciones, videojuegos,
telfonos mviles, tarjetas inteligentes, conmutadores,.
Computadores, Aplicaciones y Mercados (I)
6
Aspecto Sobremesa Servidores Empotrados
Precio ($) 1000 10.000 10.000 10M 10 100.000
Precio por mdulo
microprocesador ($)
100 - 1000
200 2000
(por procesador)
0.20 200
(por procesador)
Microprocesadores
vendidos/ao (2000)
150M 4M
300M
( 32 y 64 bits slo)
Objetivos de diseo
Precio-prestaciones
Prestaciones de grficos
(integrar capacidades en
los procesadores) e I/O.
Integrar
microprocesadores en
arquitecturas
multiprocesador, I/O de
altas prestaciones
Fiabilidad, rendimiento,
escalabilidad
Incorporar tcnicas de
microprocesadores de
altas prestaciones con las
restricciones de precio,
consumo. Altas
prestaciones especficas
para la aplicacin
Computadores, Aplicaciones y Mercados (II)
7
Tiempo
48-horas
Modelado
Plasma 3D
Tiempo
72 horas
Biologa
Estructural
Diseo
Farmacutico
Dinmica
qumica
Memoria
(Gbytes)
0.1 1 10 100 1000 10000 100000 1000000
0.01
0.1
1
10
100
1000
Genoma Humano
Cambio Climtico
Dinmica de Fluidos Viscosos
Modelado de Semiconductores
Modelado de Superconductores
Cromodinmica cuntica
Circulacin de Ocanos
1980 1988 1991 1993 1995
10000
100000
1
2
3
TOP500 (Nov2001)
Tiempo
48-horas
Modelado
Plasma 3D
Tiempo
72 horas
Biologa
Estructural
Diseo
Farmacutico
Dinmica
qumica
Memoria
(Gbytes)
0.1 1 10 100 1000 10000 100000 1000000
0.01
0.1
1
10
100
1000
Genoma Humano
Cambio Climtico
Dinmica de Fluidos Viscosos
Modelado de Semiconductores
Modelado de Superconductores
Cromodinmica cuntica
Circulacin de Ocanos
1980 1988 1991 1993 1995
10000
100000
1
2
3
TOP500 (Nov2001)
Gigaflops
Aplicaciones y Mercados: Clculo Cientfico (I)
8
Aplicaciones y Mercados: Clculo Cientfico (II)
Ejemplos fuera de las posibilidades actuales:
1. La resolucin de las ecuaciones para un flujo turbulento en un ala
(ecuaciones no-lineales de Navier-Stokes) con nmero de Reynolds de 10
6

necesita 200 horas en un computador de 1 petaFLOPS con memoria de
mayor del Terabyte.
2. En el diseo de un avin se necesitan determinados clculos relacionados con
la aerodinmica del avin y que se realizan a partir de simulaciones del flujo
en torno al avin. Dado que hay que realizar repetidos clculos, si los
tiempos de ejecucin se limitan a 15 minutos, se requerira un computador
capaz de alcanzar 1 exaFLOPS con una memoria mayor de 1 Gbyte.
3. El sistema visual humano consta de unos 10
8
receptores que convergen, a
travs de varias capas de neuronas, a las 10
6
clulas ganglionares cuyos
axones van desde el ojo al cerebro, donde se puede estimar que existen del
orden de 2x10
9
neuronas. Para simular el sistema visual humano en tiempo
real se necesita una velocidad de 6x10
14
(600 teraFLOPS).
9
Aplicaciones de Clculo Cientfico: Prediccin del Tiempo
Resolver las ecuaciones del modelo de
circulacin general de la atmsfera en
coordenadas esfricas, utilizando una
retcula tridimensional que, en cada punto
tiene asociada una ecuacin diferencial
Si se considera una retcula con puntos
separados 400 Kms., y se dispone de una
mquina de 100 MFLOPS (Cray 1), predecir
el tiempo de 24 horas necesita 100 minutos.
Si se reduce la retcula a unos 40 Kms entre
puntos, la prediccin de 24 horas necesitara
aproximadamente 24 horas en el mismo
ordenador.
A ms capacidad de clculo es posible
clculos con ms precisin en un tiempo
determinado, y mejora la prediccin a largo
plazo (dado el carcter catico de la
atmsfera).
10
Aplicaciones y Mercados: Multimedia (I)
Muchas de las nuevas aplicaciones distribuidas utilizan procesamiento
conjunto de vdeo y audio continuos. Esto tiene una serie de implicaciones
en la arquitectura:
Almacenamiento y recuperacin de la informacin en tiempo real:
Las imgenes de vdeo slo tienen sentido si se suministran a una velocidad adecuada
a la cmara, la captura de imgenes debe hacerse a una velocidad determinada y el
almacenamiento debe realizarse de forma que los datos no se sobre escriban. Las
seales utilizadas (vdeo, audio,..) deben estar sincronizadas
Gran capacidad de almacenamiento y velocidades de transferencia
elevadas
La arquitectura debe proporcionar formas rpidas y eficaces de almacenar, recuperar y
procesar la informacin (Audio MPEG: 384 Kb/s; Audio calidad CD: 1.4 Mb/s; Vdeo
MPEG2: 0.42 MB/s; Vdeo HDTV: 81 MB/s)
Las caches no son lo suficientemente grandes para manejar eficazmente los volmenes
de datos utilizados (localidad baja)
11
Aplicaciones y Mercados: Multimedia (II)
Mucha localidad de acceso a instrucciones:
Las aplicaciones de procesado de imgenes y seal consumen la mayor parte del
tiempo en la ejecucin de pequeos bucles.
La optimizacin de estos bucles de puede tener un efecto importante en la ganancia
de velocidad que se consigue en estos programas (incluso puede aconsejar el uso del
ensamblador).
Paralelismo de datos y tamao de los tipos de datos
Existe mucho paralelismo de datos en las aplicaciones y normalmente no se necesitan
precisiones de ms de 16 bits (diferencias inapreciables en imgenes y sonidos).
Alternativas
Instrucciones SIMD en arquitecturas de procesador de propsito general
(MMX y SSE en Intel, VIS en Sparc, MVI en Alpha, MAX2 en PA-RISC)
Procesadores de procesamiento digital de seales (DSPs)
Procesadores VLIW
12
Aplicaciones y Mercados: Internet
Si el ancho de banda de comunicacin es elevado y barato, la ubicacin
de la potencia de cmputo es irrelevante
El comercio electrnico, la enseanza a distancia, la TV digital, la
publicidad dirigida, etc. demandan servidores potentes.
Prestaciones que se requieren en las arquitecturas:
Velocidad
Disponibilidad
Escalabilidad
Mantenimiento fcil
Seguridad
13
Aplicacin de Internet: GOOGLE (I)
El nmero de pginas indexadas en la Web ha crecido en un factor de 1000 entre
1994 y 1997 y de 10 entre 1997 y el 2000.
Sin embargo, se sigue manteniendo en torno a 10 (los 10 primeros) el nmero de
resultados de una bsqueda que se consideran tiles por el usuario.
El principal requisito es de la disponibilidad: el servicio debe proporcionarse en
cualquier momento.
El ancho de banda es vital dada la cantidad de accesos que se producen al
servicio: en el 2000 se sirvieron 1000 peticiones por segundo buscando e
indexando ms de 1000 millones de pginas.
Puesto que se interacta con personas, el tiempo de latencia no debe ser
elevado: en Google se fija en torno a 0.5 segundos (incluyendo los retardos de
red).
Se debe explorar la red peridicamente para tener actualizada la informacin de
bsqueda: cada pgina web del mundo se visita una vez al mes.
Se guarda una copia local del texto de la mayora de las pginas.
14
Aplicacin de Internet: GOOGLE (II)
Google utilizaba (Diciembre de 2000) ms de 6000 procesadores y 12000 discos
(de aproximadamente 1 Petabyte)
Organizado en tres sitios (dos en el Silicon Valley y uno en Virginia), cada uno
conectado a Internet con un enlace OC48 (2488 Mbit/s). En los tres sitios estn
replicados el ndice de bsqueda (unos pocos terabytes) y una copia de pginas
en cache (del mismo orden).
Cada servidor es un cluster: 40 racks (80 PCs cada uno) y cada rack est
conectado mediante 4 enlaces Gigabit Ethernet a 2 conmutadores de 128x128
redundantes. Cada conmutador est conectado a travs de un lnea OC48 (2.4
Gbit/s) a internet (a travs de un conmutador Cisco 12000) y a travs de una
lnea OC12 (622 Mbit/s) a otro de los sitios redundantes. Hay un rack prximo a
cada conmutador con UPS y PCs para monitorizacin, equilibrado de carga, etc.
Los PCs (en el 2000) eran bastante estndar: ATA/IDE drives (40-80 Gbytes), 256
Mbytes de SDRAM, procesadores Celeron 533 MHz Pentium III 800 MHz.
Sistema Operativo Linux.
Cada rack de 80 PCs consume 4500 W (55 W/PC) en 1 m2 y unos 60 A.
El sitio de 40 racks descrito tiene un coste de entre !4.5 millones y !6 millones.
15
Explorar la Web (se hace semanalmente) para actualizar la informacin disponible de los
sitios necesita ms ancho de banda:
) / ( 26
) ( 60 60 24
) / ( 8 ) / ( 4000 ) / ( 000 . 000 . 70
s Mbit
segundos x x
Byte bits x consulta Bytes x dia consultas
!
) / ( 53
) ( 7 ) / ( 60 60 24
) / ( 8 ) / ( 4000 ) ( 000 . 000 . 000 . 1
s Mbit
dias x dia segundos x x
Byte bits x consulta Bytes x pginas
!
2x
5.000.000.000(Bytes)x8(bits / Byte)
24x60x60(segundos / dia)x7(dias)
!132(Mbit / s)
Aplicacin de Internet: GOOGLE (III)
Una respuesta tpica a una consulta es de unos 4000 bytes
Aproximadamente se producen unos 70 millones de consultas diarias
Demanda media de ancho de banda: (1% del ancho de banda del enlace)
La informacin se recoge en uno de los sitios, pero el ndice final y la cache de pginas
(unos 5 TBytes) deben replicarse en los otros dos sitios:
El crecimiento de Google es de un 20% al mes y el nmero de pginas indexadas se dobla
cada ao desde 1997.
16
Aplicaciones y Mercados: Computadores Empotrados
Los computadores embebidos sustituyen la electrnica analgica en
muchos aparatos y dispositivos y en mviles, DVDs, video-juegos, etc.
En estos sistemas se exige:
Consumo de potencia reducido
Prestaciones elevadas especficas para la aplicacin (aplicaciones que
requieren procesadores de 8 o 16 bits de menos de un euro hasta
procesadores de altas prestaciones que ejecutan giga instrucciones por
segundo y cuesta cientos de euros en video juegos y conmutadores de red,
tiempo real, etc.)
Coste reducido
Memoria reducida (ajustada a la capacidad de un chip): reducir cdigo y
datos (uso de optimizaciones en ensamblador)
Arquitecturas: VLIW, DSPs
17
Ejemplo: Computador de Bolsillo Itsy (Compaq)
Permite ejecutar aplicaciones como el
reconocimiento continuo del habla y
decodificacin MPEG-1 en tiempo real
Peso: 130 g.
Dimensiones: 118x65x16 (mm)
Procesador: StrongARM (191MHz)
DRAM: 32 MBytes (EDO 50 ns)
Flash: 32 MBytes (90 ns)
Consumo: 2.2 Wxhora (3.3 V / 1.5 o
1.23 V el procesador)
Ejemplo: Cuadricpteros (Parrot)
Robots voladores de cuatro hlices
La combinacin actividad-inactividad de los motores permiten control en
vuelo de los 4 grados de libertad (yaw, roll, pitch & altitude)

18
Ejemplo: Cuadricpteros
Ejemplo cuadriocptero: Parrot AR.Drone
Procesador Parrot 6 ARM9 468 MHz ARM926EJ Risc CPU
Prestaciones y caractersticas
Raffaello DAndrea: The astounding athletic power of quadricopters
Vijay Kumar: Robots that fly and cooperate

19
20
Compromiso
Mejora de Prestaciones
Avances en la Tecnologa
Limites: conforme se disminuye el tamao de los transistores aumenta su
velocidad, pero tambin aumenta la resistencia de las lneas de conexin
entre ellos, y por tanto el retardo de las comunicaciones dentro del chip


Innovacin en Arquitectura de Computadores
Paralelismo: Paralelismo entre instrucciones (ILP) y paralelismo entre
transferencias, hebras, tareas, procesos


Localidad: Acceso rpido a los datos e instrucciones necesarios (jerarqua de
memoria).
21
Influencia de la Tecnologa
Eniac Eniac-on-chip Variacin
Tubos de vaco 18,000 -
Transistores - 250,000
Resistencias 170,000 -
Capacidades 10,000 -
Dimensiones 24,4x0,91 m
2
8x8 mm
2
3x10
-6

Reloj 100 kHz 20 MHz* 200
Potencia 174 kW 0.5 W* 1/348000
* = estimado
22
Reduccin de tamao
de dispositivos (a)
Aumento de tamao
de los CI (b)
Cambio de tecnologa
(Ej. CMOS a AsGa)
Influencia de la Tecnologa (I)
Aumento de la velocidad
de los dispositivos
Aumento de la
Capacidad de
Procesamiento
(?)
Aumento del nmero de
dispositivos: O(b2)
Aumento de la
Capacidad de
Procesamiento
O(b2)
Aumento de velocidad de
los dispositivos: O(a)
Aumento del nmero de
dispositivos: O(a2)
Aumento de la
Capacidad de
Procesamiento
O(a3)
23
Influencia de la Tecnologa (II)
A qu ritmo mejora la tecnologa?
El aumento de la densidad de
dispositivos, su velocidad, y el tamao
de los CI permitiran hasta un
72%-88% de mejora anual de la
capacidad de procesamiento del CI.
Ley de Moore (1979): El nmero de
Transistores por Circuito Integrado se dobla
cada 18-24 meses (asumiendo precio
constante del CI):
Entre un 40% y un 57% de mejora anual
Densidad de Transistores: 35% anual
(DRAMs: 40%-60% anual)
Velocidad de Transistores: 16% anual
(DRAMs: latencia un 33% y ancho de
banda por chip un 66% en 10 aos)
Tamao del dado: 10%-20% anual
Nmero de Transistores/Chip: 55%
anual
24




Primera

Segunda

Tercera

Cuarta

Aos

1946-54

1955-63

1964-70

1971-

Tecnologa
(dispositivos
y perodo de
reloj)

Tubos de vaco
Memorias de
lneas de
retardo
ms

Transistores.
Memorias de ncleos
de ferritas
s

C.I. (SSI y MSI)
Memorias de C.I.

ns

C.I. (LSI y VLSI)
Memorias DRAM

ns

Arquitectura
y
Estructura

Aritmtica de
punto fijo

Aritmtica exponencial
Registros ndices
Procesadores de E/S

Microprogramacin
Memorias cachs
Memoria Virtual

Microprocesadores.
Arquitecturas RISC y
paralelas

S. Operativos

sin S.O.

Monitores "batch"

Multiprogramacin
Multiprocesamiento

S.O. en red
S.O. distribuidos

Computado-
res represen-
tativos

ENIAC,
UNIVAC I
IBM 702,650

IBM 1401, 1620, 7094
UNIVAC 1004
CDC 1604

IBM 360, 370
DEC PDP mini-
comp. UNIVAC
1100

DEC VAX, Alpha
DG Eclipse, Aviion
Cray-1, IBM-PC
HP 9000/750 WS

C.I.: Circuito Integrado; L: Lenguaje; WS: estaciones de trabajo; PC: computadores personales
Tecnologa + Arquitectura Tecnologa
70s: 25% -
30% en
mainframes y
minicomputadores

Final de los 70:
35%
Microprocesador
Influencia de la Tecnologa (III)
Generaciones de Computadores
25
Mejora relativa de
Prestaciones en
Microprocesadores
Tecnologa
Tecnologa +
Arquitectura
Influencia de la Tecnologa (IV)
26
El impacto de la tecnologa se produce en muchos casos de forma discontinua:
- Cuando los CI MOS pasaron a integrar entre 25k y 50k transistores, se pudo integrar un
micro de 32 bits
- A finales de los 80 se pudo integrar caches de primer nivel en los chips
Influencia de la Tecnologa (V)
Tecnologa DRAM.
Densidad de integracin: 40%-60% anual (cuadruplica en 3-4 aos)
Ciclo de reloj: se reduce un tercio cada 10 aos
Ancho de banda: crece dos veces ms rpido que la latencia se reduce
Tecnologa de Disco.
Densidad de integracin: recientemente ms del 100% anual (cuadruplica en
2 aos), antes de 1990 creca un 30% anual (se dobla en tres aos).
Tiempo de acceso: se reduce un tercio cada 10 aos
Tecnologa de Red.
Ancho de banda: 10 Mb/s a 100 Mb/s en 10 aos, 100 Mb/s a 1 Gb/s en 5
aos
27
256M-256G
64M-64G
Tecnologia (micras)
0
0,05
0,1
0,15
0,2
0,25
0,3
1995 2000 2005 2010 2015
DRAM
uP
Tecnologia (micras)
0
0,05
0,1
0,15
0,2
0,25
0,3
1995 2000 2005 2010 2015
DRAM
uP
Capacidad DRAM (Mbits)
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1,E+05
1,E+06
1995 2000 2005 2010 2015
Maxima
Prod.
Transistores/Chip (Millones)
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1995 2000 2005 2010 2015
Trans/CI
Frecuencia Mxima (MHz)
0,E+00
5,E+02
1,E+03
2,E+03
2,E+03
3,E+03
3,E+03
4,E+03
1995 2000 2005 2010 2015
Frec(Max)
0.25-0.05
0.20-0.03
11M-1,4B
750M-3G
256M-256G
64M - 64G
256M-256G
64M-64G
Tecnologia (micras)
0
0,05
0,1
0,15
0,2
0,25
0,3
1995 2000 2005 2010 2015
DRAM
uP
Tecnologia (micras)
0
0,05
0,1
0,15
0,2
0,25
0,3
1995 2000 2005 2010 2015
DRAM
uP
Capacidad DRAM (Mbits)
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1,E+05
1,E+06
1995 2000 2005 2010 2015
Maxima
Prod.
Transistores/Chip (Millones)
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1995 2000 2005 2010 2015
Trans/CI
Frecuencia Mxima (MHz)
0,E+00
5,E+02
1,E+03
2,E+03
2,E+03
3,E+03
3,E+03
4,E+03
1995 2000 2005 2010 2015
Frec(Max)
Tecnologia (micras)
0
0,05
0,1
0,15
0,2
0,25
0,3
1995 2000 2005 2010 2015
DRAM
uP
Capacidad DRAM (Mbits)
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1,E+05
1,E+06
1995 2000 2005 2010 2015
Maxima
Prod.
Transistores/Chip (Millones)
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1995 2000 2005 2010 2015
Trans/CI
Frecuencia Mxima (MHz)
0,E+00
5,E+02
1,E+03
2,E+03
2,E+03
3,E+03
3,E+03
4,E+03
1995 2000 2005 2010 2015
Frec(Max)
0.25-0.05
0.20-0.03
11M-1,4B
750M-3G
256M-256G
64M - 64G
Influencia de la Tecnologa (VI)
Algunas predicciones sobre la evolucin tecnolgica [SIA99]
Arquitectura de Computadores I. Tema 1. Leccin 2
28
Influencia de la Tecnologa (VII)
Reduccin del tamao caracterstico de la Tecnologa ! Los retardos de
comunicacin se hacen mayores que los tiempos de conmutacin de los transistores:
Las lneas se hacen ms lentas (mayor resistividad) y los transistores ms rpidos.
Transistores
ms lentos
En un ciclo de reloj se puede acceder a
menos rea del CI
Arquitecturas sencillas y/o
con comunicaciones
locales: VLIW, CMPs
(Multiprocesadores en un
chip)
Consecuencias en la reduccin del
tiempo de ciclo y en el IPC:
De crecimientos del 50% se puede
pasar al 12%-17%
Arquitectura de Computadores I. Tema 1. Leccin 2
29
Aumento de la densidad de transistores y el funcionamiento a
frecuencias mayores ! Aumento de la Potencia disipada por los CI
El consumo es esencial
en:
Plataformas
porttiles y mviles
Servidores de altas
prestaciones a base
de computadores
interconectados
(clusters):
8000 computadores y 2300
m
2
de Intel consume unos 2
Megawatios (25% del costo
de mantenimiento).
TIC: 8% de consumo en
USA
10
15
20
25
30
21064 21164 21264 21364
W/cm
2
1.5 350 1000 100 21364
2.0 302 667 72 21264
3.3 299 300 50 21164
3.3 234 200 30 21064
V mm2 MHz W (pico) Micro
1.5 350 1000 100 21364
2.0 302 667 72 21264
3.3 299 300 50 21164
3.3 234 200 30 21064
V mm
2
MHz W (pico) Micro
Ejemplo:
En el Alpha, la potencia
consumida casi ha
llegado a 30 W/cm
2
:
Tres veces la usual en
un plato caliente
Influencia de la Tecnologa (VIII)
30
Potencia = ACV
2
f+ tAVI
short
+ VI
leak
Consumo dinmico al
cargar y descargar la
capacidad a la salida de
una puerta Si se reduce
V se reduce el consumo
de potencia pero
disminuye la frecuencia
a la que funciona
Debida a la
corriente I
short
que
fluye durante un
instante t al
conmutar una
puerta
Debida a la corriente
I
leakeage
que es
independiente del
estado de la puerta
y aumenta al
reducirse la tensin
umbral en los
transistores
f
max
= B (V V
thres
)
2
/V I
leak
= H exp(-qV
thres
/KT)
Al reducir V hay que reducir V
thres
y aumenta la importancia de I
leak
Potencia = ACV
2
f+ tAVI
short
+ VI
leak
Consumo dinmico al
cargar y descargar la
capacidad a la salida de
una puerta Si se reduce
V se reduce el consumo
de potencia pero
disminuye la frecuencia
a la que funciona
Debida a la
corriente I
short
que
fluye durante un
instante t al
conmutar una
puerta
Debida a la corriente
I
leakeage
que es
independiente del
estado de la puerta
y aumenta al
reducirse la tensin
umbral en los
transistores
f
max
= B (V V
thres
)
2
/V I
leak
= H exp(-qV
thres
/KT)
Al reducir V hay que reducir V
thres
y aumenta la importancia de I
leak
La mejora de
prestaciones no
puede continuar
mucho
incrementando la
potencia consumida:

Mejoras a nivel del
proceso de
fabricacin
Mejoras a nivel de los
circuitos

Mejoras a nivel de
la arquitectura

Ajuste de la frecuencia de funcionamiento por parte
del S.O., paralelismo, optimizacin del uso de la
memoria y los buses, etc.
Influencia de la Tecnologa (IX)
31
Paralelismo
Segmentacin de los cauces (pipeline)
Cada elemento se divide en una serie de etapas por las que van pasando los operandos,
instrucciones, al ser procesados. El funcionamiento independiente de de cada etapa permite que
se puedan ejecutar distintas operaciones, instrucciones,.. concurrentemente.
Diseo de procesadores (paralelismo entre instrucciones o ILP): procesadores segmentados
(procesadores superescalares y VLIW, procesadores vectoriales)
Diseo de unidades funcionales: sumadores segmentados, multiplicadores segmentados,.
Repeticin de elementos
Utilizar varias unidades funcionales, procesadores, mdulos de memoria, etc. para distribuir el trabajo.
Nivel de sistema: multiprocesadores, controladores de DMA, procesadores de I/O..
Nivel de procesador: varias unidades funcionales (procesadores superescalares, VLIW,
Vectoriales)
Localidad
Acercar datos e instrucciones al lugar donde se necesitan para que el acceso a los mismos sea lo ms
rpido posible (jerarqua de memoria)
Mejoras en la Arquitectura
32
1 2 3
1 1 1 1
2 2 2 2
3 3 3 3
A C D B
El diseo de la unidad
se realiza de forma que
cada una de las fases
A, B, C, y D de la
misma se puedan
ejecutar
independientemente
Tiempo sin segmentacin de tres operaciones
Tiempo con segmentacin
de las tres operaciones
Una vez acaba la primera
operacin (tiempo de
latencia de inicio) cada
intervalo de tiempo igual al
tiempo de etapa se termina
otra operacin
Unidad no
segmentada
Segmentacin de Cauce
33
Cray 1: Mltiples Unidades Funcionales (ejecucin paralela de operaciones distintas)
Tarjeta SMP SHV de Intel
Varios Procesadores (mejora
capacidad de cmputo)
Varias ranuras PCI (mejorar I/O)

Canales/Procesadores I/O permiten
concurrencia entre operaciones de
E/S y cmputo
Repeticin de Elementos
34
Jerarqua de Memoria: reducir el tiempo de acceso a coste razonable
Alpha 21164
Caches On-chip
Registros internos
Localidad
35

1. Estrategias para mejorar las prestaciones de los computadores

2. Clasificacin de las arquitecturas
1. Segn los flujos de instrucciones y datos (Flynn)
2. Segn el tipo y el nivel de paralelismo (Sima)

Contenidos
36
Como toda clasificacin, una clasificacin (o taxonoma) de arquitecturas
persigue dividir el conjunto de los computadores en una serie de clases de
forma que, si se sabe la clase a la que pertenece un computador,
automticamente se conocen una serie de caractersticas interesantes del
mismo.
Flujos de
Instrucciones
Flujos de Datos
Uno
(Single)
Varios
(Multiple)
Uno
(Single)
SISD MISD
Varios
(Multiple)
SIMD MIMD
Taxonoma de Flynn (66)
Clasificaciones de Arquitecturas
37
CPU
UP
MM
Descripcin Estructural
Descripcin Funcional
Corresponde a los computadores uni-procesador
for i:=1 to 4 do
begin
C[i]:=A[i]+B[i];
F[i]:=D[i]-E[i];
G[i]:=K[i]*H[i];
end;
FD
FI
SISD (Un flujo de instrucciones y un flujo de datos)
38
Descripcin
Estructural
Descripcin
Funcional
for all EPi(i:=1 to 4) do
begin
C[i]:=A[i]+B[i];
F[i]:=D[i]-E[i];
G[i]:=K[i]*H[i];
end;
ADDV C,A,B
SUBV F,D,E
MULV G,K,H
Procesadores
Vectoriales
Procesadores
Matriciales
Aprovechan paralelismo de datos
CPU
Descripcin
Estructural
SIMD (Un flujo de instrucciones y varios flujos de datos)
39
C[1]=A[1]+B[1]
F[1]=D[1]-E[1]
G[1]=K[1]*H[1]
C[2]=A[2]+B[2]
F[2]=D[2]-E[2]
G[2]=K[2]*H[2]
C[3]=A[3]+B[3]
F[3]=D[3]-E[3]
G[3]=K[3]*H[3]
C[4]=A[4]+B[4]
F[4]=D[4]-E[4]
G[4]=K[4]*H[4]
EP1 EP2 EP3 EP4
C = A+B
F = D E
G = K*H
UC
Procesador Matricial
Procesador Vectorial
ADDV
SUBV
MULTV
A[i]
B[i]
C[i]
D[i]
E[i]
F[i]
K[i]
H[i]
G[i]
Sumador
Restador
Multiplicador
Flujo de Instrucciones
Flujos de Datos
Flujo de Instrucciones
Flujos de
Datos
Ejemplo de Ejecucin SIMD
40
Data
CPUs
Descripcin
Funcional
Descripcin Estructural
Corresponde a los Multiprocesadores: Puede aprovechar paralelismo funcional
for i:=1 to 4 do
begin
C[i]:=A[i]+B[i];
end;

Proc 1
for i:=1 to 4 do
begin
F[i]:=D[i]-E[i];
end;

Proc 2
for i:=1 to 4 do
begin
G[i]:=K[i]*H[i];
end;

Proc 3
MIMD (Varios flujos de instrucciones y de datos)
41
No existen computadores que funcionen segn este modelo
Se puede implementar un modelo MISD sobre un modelo
MIMD con las correspondientes primitivas de sincronizacin
CPUs
MISD (Varios flujos de instrucciones y uno de datos)
42
Tipos de Paralelismo
Paralelismo de Datos
La misma funcin, instruccin, etc. se ejecuta en paralelo pero en cada una de esas
ejecuciones se aplica sobre un conjunto de datos distinto

Paralelismo Funcional
Varias funciones, tareas, instrucciones, etc. (iguales o distintas) se ejecutan en
paralelo
Niveles de Paralelismo Funcional (segn el tipo de entidades funcionales que se
ejecutan en paralelo):
1. Nivel de Instruccin (ILP) (Granularidad Fina)
2. Nivel de Bucle o Hebra (Thread) (Granularidad Fina-Media)
3. Nivel de Procedimiento (Procesos) (Granularidad Media)
4. Nivel de Programa (Granularidad Gruesa)
Arquitectura
S.O. y
Usuario
43
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
Inst. 1
Inst. 2
Inst. 1
Inst. 2
Inst. 3
Inst. 4
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
Inst. 1
Inst. 2
Inst. 3
Inst. 4
5T
Procesador no segmentado
1/(5T)
Procesador Segmentado
1/(T)
Procesador Superescalar o WLIW
2/(T)
Paralelismo entre Instrucciones (ILP) (I)
44
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
Inst. 1
Inst. 2
Inst. 1
Inst. 2
Inst. 3
Inst. 4
5T
Procesador no segmentado
1/(5T)
Procesador Segmentado
1/(T)
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
Inst. 1
Inst. 2
Inst. 3
Inst. 4
Procesador Supersegmentado
1/(T/2)=2/T
Paralelismo entre Instrucciones (ILP) (II)
45
E/S IF ID OF
Datos Escalares
Datos Vectoriales
Flujo
Instr.
Control
Reg. Escalares
Cauces Esc.
Reg. Vectoriales
Cauces Vector.
Unidad Escalar
Unidad Vectorial Procesador
Vectorial
Memoria
Principal
Unidad
LOAD/STORE
E/S IF ID OF
Datos Escalares
Datos Vectoriales
Flujo
Instr.
Control
Reg. Escalares
Cauces Esc.
Reg. Vectoriales
Cauces Vector.
Unidad Escalar
Unidad Vectorial Procesador
Vectorial
Memoria
Principal
Unidad
LOAD/STORE
a2
a1
a3
a4
b2
b1
b3
b4
a1+b1
a2+b2
a3
b3
a4
b4
a5
b5
a6
b6
a7
b7
a8
b8
Registros
Vectoriales
Cauce Vectorial
Registro Vectorial
a2
a1
a3
a4
b2
b1
b3
b4
a1+b1
a2+b2
a3
b3
a4
b4
a5
b5
a6
b6
a7
b7
a8
b8
Registros
Vectoriales
Cauce Vectorial
Registro Vectorial
El procesamiento de
instrucciones est
segmentado y se
utilizan mltiples
unidades funcionales
Paralelismo de datos:
cada instruccin vectorial
codifica una operacin
sobre todos los
componentes del vector
Unidades funcionales
segmentadas
Procesadores Vectoriales: ILP y Paralelismo de Datos
46
Taxonoma de Flynn Paralelismo Funcional Paralelismo de Datos
SISD
Proc. Segmentados
Proc. Superescalares
Proc. VLIW
SIMD
Proc. Vectoriales
Proc. Matriciales
Proc. Sistlicos
MIMD
Memoria Compartida: Acceso
Uniforme (SMPs), Acceso no
Uniforme o Distribuida
(NUMA, COMA)
Paso de Mensajes (NORMA):
Multicomputadores, Clusters
Tipos de Arquitecturas segn Paralelismo y Taxonoma de Flynn
47
Para ampliar
Pginas Web:
bwrc.eecs.berkeley.edu/CIC/summary
www.geek.com/procspec/procspec.htm
www.research.digital.com/wrl/projects/Itsy/index.html
Artculos de Revistas:
Hennessy, J.: The Future of Systems Research. IEEE Computer, pp.27-33.
Agosto, 1999.
Hennessy, J.; Jouppi, P.: Computer Technology and Architecture: An
Evolving Interaction. IEEE Computer, pp.18-29. Septiembre, 1991.
Vajapeyan, S.; Valero, M.: Early 21st Century Processors. IEEE Computer,
pp. 47-50, April 2001.

Das könnte Ihnen auch gefallen