Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2
Contenidos
3
Evolución de los Computadores
Posibilidades
Capacidades
Promueve Prestaciones
Posibilidades Demanda
Restricciones
Nuevas Económicas
Restricciones Generación
Mercado
Fundamental
Fuerte
Visible
Adaptado de Vajapeyam/Valero (Computer, Abril 2001)
4
Computadores, Aplicaciones y Mercados (I)
60 70 80 90 00
Mainframes
Servidores
Grandes
computadores para
aplicaciones de
Minicomputadores
negocios y científicas Aplicaciones científicas
de gran volumen. en laboratorios y
pequeñas WWW
organizaciones
Redes
PCs y
Microprocesadores Estaciones de
Trabajo
Computadores
Rápido crecimiento (tecnología y herramientas de diseño): Embebidos
electrónica digital de altas prestaciones, videojuegos,
teléfonos móviles, tarjetas inteligentes, conmutadores,….
5
Aplicaciones y Mercados: Cálculo Científico (I)
Gigaflops
6
Mejora de Prestaciones
• Avances en la Tecnología
– Limites: conforme se disminuye el tamaño de los transistores aumenta su
velocidad, pero también aumenta la resistencia de las líneas de conexión
entre ellos, y por tanto el retardo de las comunicaciones dentro del chip
Compromiso
– Localidad: Acceso rápido a los datos e instrucciones necesarios (jerarquía de
memoria…).
7
Influencia de la Tecnología
8
Influencia de la Tecnología (I)
Aumento de velocidad de
los dispositivos: O(a) Aumento de la
Reducción de tamaño Capacidad de
de dispositivos (a) Procesamiento
Aumento del número de O(a3)
dispositivos: O(a2)
Aumento de la
Aumento de la
Aumento del número de Capacidad de
capacidad de los CI
dispositivos: O(b2) Procesamiento
(b)
O(b2)
Aumento de la
Cambio de tecnología Aumento de la velocidad
Capacidad de
(Ej. CMOS a AsGa) de los dispositivos
Procesamiento
9
Influencia de la Tecnología (II)
10
Influencia de la Tecnología (III)
Generaciones de Computadores
70’s: 25% -
30% en
mainframes y
minicomputadores
11
Influencia de la Tecnología (IV)
Mejora relativa de
Prestaciones en
Microprocesadores
Tecnología +
Tecnología
Arquitectura
12
Influencia de la Tecnología (V)
• Tecnología DRAM
– Densidad de integración: 40%-60% anual (cuadruplica en 3-4 años)
– Ciclo de reloj: se reduce un tercio cada 10 años
– Ancho de banda: crece dos veces más rápido que la latencia se reduce
• Tecnología de Disco
– Densidad de integración: recientemente más del 100% anual (cuadruplica en
2 años), antes de 1990 crecía un 30% anual (se dobla en tres años).
– Tiempo de acceso: se reduce un tercio cada 10 años
• Tecnología de Red
– Ancho de banda: 10 Mb/s a 100 Mb/s en 10 años, 100 Mb/s a 1 Gb/s en 5
años
13
Influencia de la Tecnología (VI)
El consumo es esencial
30
en:
Ejemplo:
25 • Plataformas
En el Alpha, la potencia
portátiles y móviles
20 W/cm2 consumida casi ha
llegado a 30 W/cm2: • Servidores de altas
15
Tres veces la usual en prestaciones a base
un plato de computadores
10
21064 21164 21264 21364 caliente interconectados
(clusters):
Micr W (pico) MH mm2
mm2 V TIC: 8% de consumo en
o21064 30 z200 234 3.3 USA
Paralelismo
Segmentación 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.
• Diseño de procesadores (paralelismo entre instrucciones o ILP): procesadores segmentados
(procesadores superescalares y VLIW, procesadores vectoriales)
• Diseño de unidades funcionales: sumadores segmentados, multiplicadores segmentados,….
Repetición de elementos
Utilizar varias unidades funcionales, procesadores, módulos 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 más
rápido posible (jerarquía de memoria)
16
Segmentación de Cauce
1 2 3
Unidad no
segmentada Tiempo sin segmentación de tres operaciones
17
Contenidos
18
Clasificaciones de Arquitecturas
Flujos de
Instrucciones Uno Varios
Flujos de Datos (Single) (Multiple)
Uno
SISD MISD
(Single)
Varios
SIMD MIMD
(Multiple)
Taxonomía de Flynn (66)
19
SISD (Un flujo de instrucciones y un flujo de datos)
MM
FI
FD
CPU
Corresponde a los computadores uni-procesador
for i:=1 to 4 do
begin UP
C[i]:=A[i]+B[i];
F[i]:=D[i]-E[i];
G[i]:=K[i]*H[i];
end;
20
SIMD (Un flujo de instrucciones y varios flujos de datos)
Descripción Descripción
Estructural Funcional
CPU
Procesadores
for all EPi(i:=1 to 4) do
begin Matriciales
C[i]:=A[i]+B[i]; ADDV C,A,B
F[i]:=D[i]-E[i]; SUBV F,D,E
G[i]:=K[i]*H[i]; Procesadores MULV G,K,H
end; Vectoriales
21
Ejemplo de Ejecución SIMD
Procesador Matricial
UC EP1 EP2 EP3 EP4
C = A+B C[1]=A[1]+B[1] C[2]=A[2]+B[2] C[3]=A[3]+B[3] C[4]=A[4]+B[4]
F=D–E F[1]=D[1]-E[1] F[2]=D[2]-E[2] F[3]=D[3]-E[3] F[4]=D[4]-E[4]
G = K*H G[1]=K[1]*H[1] G[2]=K[2]*H[2] G[3]=K[3]*H[3] G[4]=K[4]*H[4]
Procesador Vectorial
A[i] C[i]
Sumador
ADDV B[i] Flujos de
SUBV Datos
D[i] F[i]
MULTV Restador
E[i]
K[i] G[i]
Multiplicador
Flujo de Instrucciones H[i]
22
MIMD (Varios flujos de instrucciones y de datos)
Descripción
CPUs Funcional
Data
Descripción Estructural
23
MISD (Varios flujos de instrucciones y uno de datos)
CPUs
24
Tipos de Paralelismo
Paralelismo de Datos
La misma función, instrucción, 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
25
Paralelismo entre Instrucciones (ILP) (I)
Procesador no segmentado
Inst. 1 IF ID EX MEM WB 1/(5T)
Inst. 2 5T IF ID EX MEM WB
Inst. 3 IF ID EX MEM WB
Inst. 4 IF ID EX MEM WB
Inst. 3 IF ID EX MEM WB
Inst. 4 IF ID EX MEM WB
26
Paralelismo entre Instrucciones (ILP) (II)
Procesador no segmentado
Inst. 1 IF ID EX MEM WB 1/(5T)
Inst. 2 5T IF ID EX MEM WB
Inst. 3 IF ID EX MEM WB
Inst. 4 IF ID EX MEM WB
Inst. 3 IF ID EX MEM WB
Inst. 4 IF ID EX MEM WB
27
Procesadores Vectoriales: ILP y Paralelismo de Datos
El procesamiento de
instrucciones está
segmentado y se
utilizan múltiples
unidades funcionales
Paralelismo de datos:
cada instrucción vectorial
codifica una operación
sobre todos los
componentes del vector
Unidades funcionales
segmentadas
28
Tipos de Arquitecturas según Paralelismo y Taxonomía de Flynn
Proc. Segmentados
SISD Proc. Superescalares
Proc. VLIW
Proc. Vectoriales
SIMD
Proc. Matriciales
Proc. Sistólicos
29
Para ampliar …
• Páginas Web:
– bwrc.eecs.berkeley.edu/CIC/summary
– www.geek.com/procspec/procspec.htm
– www.research.digital.com/wrl/projects/Itsy/index.html
• Artículos 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.
30