Upload
leticia-menchaca
View
3
Download
0
Embed Size (px)
Citation preview
Arquitecturas Avanzadas Curso 10/11
1 INTRODUCCIÓN
2 CONECTIVIDAD
3 MÁQUINAS MIMD
4 MÁQUINAS SIMD
5 AUMENTO DE PRESTACIONES
Horas
4..
5
7
3
4
arqAvaTemario Introducción-2
1 INTRODUCCIÓN
1 Necesidades, evolución/revolución de la tecnología
2 Conceptos
1 Cantidad de paralelismo (Medidas)2 Tipos/Fuentes del paralelismo3 Acoplamiento (Dependencia)4 Escalabilidad (Crecimiento lineal)
3 Clasificación de Flynn (ampliada)
4 Perspectiva histórica, tendencias, implantación
arqAvaNecesidades, ......... Introducción-3
• ¿Se necesita más potencia que la de un superPC?
• Modelización predictiva y Simulaciones
• Diseño y automatización (Proyectos de ingeniería)
• Exploración de recursos energéticos
• Investigación médica y militar
• Investigación básica
• Dibujos animados y efectos especiales
• Realidad virtual
• eCommerce y Web serving• ¿De qué orden de magnitud estamos hablando “Flops”?
arqAvaNecesidades, ......... Introducción-4
• SDK-85 de 1977 a 250$• Intel 8085A• 3MHz y 256..512 B RAM• Usado en EUI en 1980/81
• MZ 80B de 1981 a 1100£• Zilog Z-80A• 4MHz y 32..64 KB RAM• Usado en TFC en 1983
¿Qué tenemos hoy?
arqAva Necesidades, ......... Introducción-5
Simulación peligro
caro
inviable
Teoría Experimentos
arqAva Necesidades, ......... Introducción-6
• Predicción del tiempo (CESGA: METEO 1998 www.cesga.es )250 Km
250 Km
35niveles
¿ Tiempo para 24 horas ? Fujitsu VPP300E => 6h30m
(T, P, H, VV, DV, …)
87.500 celdas y paso de 10 seg
• Predicción a 3..10 días (ECMWF: www.ecmwf.int)
8.300.760 celdas y paso de 20 minutosPredicción a 10 días: Fujitsu VPP700 => 1h35min
2003
Nuevo supercomputador y modelo: 4025Km; 6091 niveles; 1512’; Op*4
2006
¿Con un PC,4..5 días?
arqAvaNecesidades, … Introducción-7
• Predicción a 10 días (ECMWF: www.ecmwf.int)
• Fortran90+MPI+OpenMP• Típico:
32..128 tareas MPI2 o 4 threads OpenMP
• 288 núcleos “predecir”
POWER5+ 2006 ..
2011 POWER7
arqAva Necesidades, ......... Introducción-8
Centro de Supercomputación de Pittsburgh
512 procesadores (x8) Intel Xeon (Nehalem)
“Projects in Scientific Computing (141)” www.psc.edu/science
• Plegamiento de proteínas
• Predicción de tormentas
• Estudios de turbulencias
• Modelos sísmicos
• Investigación: SIDA, CANCER
• Modelización del fluido cardiaco
• Fenómenos oceánicos
• Dinámica de fluidos y electromagnetismo
12.000 átomosSimular 1seg
256 procesadores¡¡ 3 meses !!
folding.stanford.edu
¡¡ Tifón !!
arqAva Necesidades comParalelos-9
Centro de Supercomputación de Pittsburgh + CAPS + NOAA + …
4Mayo2007 Tornado EF5 Greensburg
• Emergencia 30´ antes• Suenan sirenas 20´ antes• “Sólo 10 víctimas”
• 95% del pueblo arrasado
• ¿Será posible predecir antes?
1989: Escepticismo: caóticos eimpredecibles
2007: Investigadores+Supercomp.viable predecir a 24 horas
www.psc.edu/science/2007/storms.html
arqAva Necesidades, ......... Introducción-10
• Dibujos animados y efectos especiales
¡ Muy costosa la renderización !
1995
• 1ª totalmente digital
• 117 SUN’s
• 10.000 millones Pts.
2000
www.dygrafilms.es
• 1ª Europea en 3D
• > 20 CPU’s CESGA
• 550 millones Pts.
2002
• 1er superhéroe digital
• 100 SGI Octane2
• 27.000 millones Pts.
2008
arqAva Necesidades, ......... Introducción-11
El sueño de una nochede San Juan (2005)45’ x fotograma [381.828]Un nodo => + 32 años165 Pentium III y 4
Pixar How We Do It
6h x fotograma,algunos 90h
arqAvaNecesidades, … Introducción-12
2006: Hellenic Cosmos www.fhw.gr/cosmos/
SGI Octane III – IDF 2009 hasta 80 núcleos con 1 TB
desde 8.000$ Personal Supercomputer
• 2004: El Museo Británico abre un centro de realidad virtual que permite explorar virtualmente una momia de hace 3000
añosSGI Onix 350 12 procesadores
arqAva Necesidades, ......... Introducción-13
• Requisitos identificados por el HPCC Program (1992)Capacidad de Memoria
1980100 Mflops
19881 Gflops
1995....1 Tflops
1993100 Gflops
199110 Gflops
10 MB
Velocidad del Sistema
Genoma HumanoTurbulencia fluidosDinámica de vehículosCirculación océanosVisión, ................
Tiempo en48 horas
Tiempo en72 horas
Identificarvehículos
Modelos Plasma 3D
Diseño farmacéutico
Dinámica de la Química
Biología estructural
100 MB
1000 GB
100 GB
10 GB
1 GB
¿2010?
224.162µP Jaguar AMD SixCore 2,66GHz 2331 TFlop
4µP Core i7 920 2,66GHz 60 GFlop
4/12/96
¿1 Pflops?
¿2010?
5 Tflops y
8 Tbytes
98Tbytes
arqAva Necesidades, ......... Introducción-14
• Introduction to Terascale Code Development (Sep/2004)www.psc.edu/training/TCD_Sep04/index.html
arqAva Necesidades, Evolución/Revolución Introducción-15
– Según Moore x2 cada 2 años. Según Hennessy:
Rendimiento anual
70 9080Mainframes y Minis µP CISC µP RISC
20-30%
50%
35%
• ¿Necesidades alcanzables con modelo Von Neumann?
– Las mejoras han sido contínuas:
• Mayor velocidad de conmutación
• Mayor grado de integración
• Memorias caché y multipuerto
• Paralelismo interno (Pipeline y Superescalar)
• Racionalización de diseños (RISC)
¿Sostenible?
Consumo 2002
20%
• Procesadores con varios núcleos
2/3 Tecnología
µArq
arqAva Necesidades, Evolución/Revolución Introducción-16
• Mayor velocidad de conmutación
• Silicio 2MHz .. 2GHz]
• Arseniuro de Galio *10 Silicio
• Grafeno 100GHz?
• Mayor grado de integración
80..100 micras 10-6
0,18 0,15 0,13 0,09 0,0652000 2008
90nm 65 45 32 22 16 112011
20132015
arqAva Necesidades, Evolución/Revolución Introducción-17
• Gordon Moore (Cofundador de Intel)
19/04/1965
www.intel.com/museum/archives/history_docs/moore.htm
Dual core Intel® Itanium® 2 (24MB cache) 2006 1.700.000.000
Intel Core i78MB cache L3731.000.000
arqAva Necesidades, Evolución/Revolución Introducción-18
• Problemática del cosumo: Energía dinámica + estática
Capacitancia * Actividad * V2 * f
Longitud cables
4 núcleos mejor
Cachés pequeñas¿multibanco?
0 1
UF
Reloj
Activar
¡ Clock gating !
5V
1V
0,4V 2016
Baja
Sube
DynamicVoltageFrequencyScaling
arqAva Necesidades, Evolución/Revolución Introducción-19
• Problemática del cosumo: Energía dinámica + estática
V (ke )-qVth/(akaT)
¿ Entre 10 y 100 veces mejor ?
high-k +metal gate
www.psc.edu/training/TCD_Sep04/index.html
¿Hasta cuándo?
arqAva Necesidades, Evolución/Revolución Introducción-20
HPCA’03
arqAva Necesidades, Evolución/Revolución Introducción-21
• ¿Necesidades alcanzables con modelo Von Neumann?– 1989-Decegama µP secuenciales al límite “Velocidad luz”– 1999-Prensa La tecnología actual se agotará en 1/2 décadas– 2006-UCM Hasta 2018, 8 nanómetros, 256.000.000.000 T
• En busca de “El Dorado” o el síndrome Von Neumann
EVOLUCIÓN
Invisible
µProgramaciónSegmentaciónCachéMIMD tiempo compartido
Memoria virtualInstrucciones vectoriales
REVOLUCIÓN
Visible
Mayor grado de paralelismo
RISC, Superescalares
SIMD masivoMIMDPropósito específico
¿Ciencia Ficción?
• Silicon Laser• Moleculares• Cuánticos
Intel TeraFlopResearch Chip
arqAva Necesidades, Evolución/Revolución Introducción-22
• Febrero 2007: Intel anuncia el Teraflops Research Chip
http://www.legitreviews.com/article/460/1/
500 + 500 kW 62W
80núcleos
arqAva Necesidades, Evolución/Revolución Introducción-23
1 Tbps
• Julio 2007: Intel rompe la barrera de los 40Gbps en Silicon Laser
arqAva Necesidades, Evolución/Revolución Introducción-24
• Algunos ¿avances? en computación molecular
A 16-bit parallel processing in amolecular assembly – PNAS 2008
www.pnas.org/content/105/10/3668/F4.expansion.htmlnews.nationalgeographic.com/news/2008/10
Un grano de arena : 1000 µPConexiones : nanotubos
arqAva Necesidades, Evolución/Revolución Introducción-25
• ¿Existe? la computación cuántica
EUI 2 Junio 2006: Ignacio Cirac Instituto Max Planck1995 => Artefactos de 1 ión2005 => Artefactos de 8 ionesFactorizar números de 200 cifras => 100.000 iones
13 Feb 2007: D-Wave 16 qubit adiabatic quantum computer
¡ Marketing !
arqAva Conceptos Introducción-26
• CANTIDAD DE PARALELISMO Y MEDIDAS
– GRADO – GRANO
– ACELERACIÓN – EFICIENCIA
• TIPO / FUENTES DEL PARALELISMO
– CONTROL – DATOS – FLUJO
• ACOPLAMIENTO (Dependencia)
– FUERTE – DÉBIL
• ESCALABILIDAD (Crecimiento lineal)
– SI – NO
arqAva Cantidad de paralelismo Introducción-27
• GRADO: Número de Unidades de Proceso para las que se tiene trabajo durante un intervalo de tiempo
1
3
2
4
6
5
Grado
T0 T1 T9T2 T8T7T6T5T4T3Tiempo
Grado = 26 / 9 = 2,89
¿Cómo varía?Poco 3-5Mucho 32Muchísimo 256-65536
arqAva Cantidad de paralelismo Introducción-28
• GRANO: Tamaño medio de las acciones ejecutadas en paralelo por Unidad de Proceso (Distribución de Carga)
#Instr.
FINO 1 Instrucción 20
FINO 2 Bucle 500
MEDIO 3 Subrutina 2000
MEDIO/ 4 Subprograma MilesGRUESO
GRUESO 5 Programa Miles....
Hw +
Compilador
Programador
S.O.
Grado de paralelismo
Sobrecarga Comunica.
arqAva Cantidad de paralelismo Introducción-29
• ACELERACIÓN: “Speedup” Cuántas veces más rápido al contar con “n” U.P. en vez de una. (Absoluta)
Sn = Tsecuencial / Tparalelo = T1 / Tn
SI CON UNA U.P. SE ORDENA EN 1 MINUTO,
¿CON 4 U.P. SE ORDENA EN? ===> 15”, 20”, .....???
1 <= Sn <= n n = Máximo teórico
• EFICIENCIA: Lo mismo, pero teniendo en cuenta “n”. (Relativa)
En = Sn / n = T1 / nTn
1/n <= En <= 1 1 = Máximo teórico
arqAva Cantidad de paralelismo Introducción-30
16 32 64 128
10
20
30
40
50
60
70
versión 8/94
versión 9/94
versión 12/94
Aceleración en tres versiones de un programa paralelo
Pfeiffer et al. 1995 (AMBER en Intel Paragon 128 P)
arqAva Cantidad de paralelismo Introducción-31
• Sn y En resolviendo Sistemas Lineales de 1000 variables (Jack Dongarra, 2004)
ORDENADOR #UP T1 (S) TN (S) SN EN
Hitachi S-3800/480 4 0,10 0,032 3,21 0,80
NEC SX-3*4R 4 0,13 0,044 2,91 0,73
Cray C90 16 0,74 0,062 11,95 0,75
IBM ES/9000 8 1,58 0,293 5,34 0,67
Convex C4/ 2 0,95 0,501 1,89 0,95
Meiko CS2 32 6,89 1,030 6,69 0,21
Fujitsu AP1000 512 160,0 1,100 147,0 0,29
Intel Delta 64 22,00 1,900 11,50 0,18
Intel iPSC/860 128 22,00 2,800 7,68 0,06
Sun Sparc2000 8 26,71 3,370 7,92 0,99
arqAva Cantidad de paralelismo Introducción-32
• Sn y En resolviendo Sistemas Lineales de 1000 variables (Jack Dongarra, 2004)
ORDENADOR #UP T1 (S) TN (S) SN EN
Intel Delta 512 22,0 1,5 14,70 0,03
Intel Delta 256 22,0 1,6 13,80 0,05
Intel Delta 128 22,0 1,7 12,90 0,10
Intel Delta 64 22,0 1,9 11,50 0,18
Intel Delta 32 22,0 2,2 10,00 0,31
Intel Delta 16 22,0 2,9 7,59 0,47
Intel Delta 8 22,0 4,1 5,37 0,67
Intel Delta 4 22,0 6,7 3,28 0,82
Intel Delta 2 22,0 11,6 1,90 0,95
arqAva Tipo / Fuentes (Control, Datos, Flujo)Introducción-33
• PARALELISMO DE CONTROL (Prog. Concurrente)
– Descomposición en subtareas simultáneas (Una x U.P.)
R := [A(X) + B(Y)] * C(Z) ¿Qué puede hacerse en paralelo?
A(X) B(Y) C(Z)
+
*
Tiempos de cada operación
3 3 4
1
2
¿Grado?
MUY COMÚN, pero .... ¡Poco relevante! (Grado 3)
= 13 / 6 = 2,2
1
3
2
arqAva Tipo / Fuentes (Control, Datos, Flujo)Introducción-34
• PARALELISMO DE DATOS (Espacial)
– Operaciones sobre datos regulares (vectores) aplicando la misma operación sobre cada elemento
MENOS COMÚN, pero .... ¡Más relevante! (Grado 104..106)
2 1 3 1 4 5 7 8
3 4 6 1 0 2 1 1
5 5 9 2 4 7 8 9
+ + + + + + + +
A
C
B
Suma de Vectores, etc.
¡LIMITACIONES!
Más datos que U.P.
Operaciones escalares
arqAva Tipo / Fuentes (Control, Datos, Flujo)Introducción-35
• PARALELISMO DE FLUJO (Temporal)
– Idea intuitiva => Cadena de montaje de cochesSecuencia de datos homogéneos de entrada
Proceso divisible en subtareas secuenciales (filtros)
Peluquería Personas Despeinadas (Di)
Lavar => Cortar => Marcar
LCM
1Hora
3 Mill.
10:00
(1)
10:15
(1)
D2
10:30
(1)
D3,D2
10:45
(1)
D4,D3,D2
11:00
(2)
D5,D4,D3 P1 L C M
20’ 20’ 20’
1,5 M 1,5M 1,5M
10:00
(1)
10:15
(1)D2
10:20
(2) (1)
10:30
(2) (1)D3
10:40
(3) (2) (1)
10:45
(3) (2) (1)D4
11:00
(4) (3) (2)D5 P1
Secuencial => 1P x Hora Vs Pipeline => 1P x 20’
arqAva Tipo / Fuentes (Control, Datos, Flujo)Introducción-36
• PARALELISMO DE FLUJO (II)
LCM
1Hora
3 Mill.
11:00
(2)
D5,D4,D3 P1 L C M
20’ 20’ 20’
1,5 M 1,5M 1,5M
11:00
(4) (3) (2)D5 P1
¡Ojo! Mejora no siempre de N (3)
¿Y si C ==> 30’?
Otros ejemplos:CPU SegmentadaVoz, CD
ALGO COMÚN, pero .... ¡No muy relevante! (Grado 30)
Control Flujo Datos
330
106Grado
arqAva Acoplamiento Introducción-37
• Grado de dependencia entre las partes (Hw/Sw)
Datos ComunesCantidad relativa de interacciones
Sincronismo
FUERTEPi Pj
DC
DÉBILPi Pj
Poca localidadCuellos de botella
Mucha localidadBuena característica
GranoFino Grueso
arqAva Escalabilidad Introducción-38
• Aumento de prestaciones con coste lineal o nlogn
NO ESCALABLE
2
3
4
5
1
3
6
10
0,5
1,0
1,5
2,0
6 15 2,5
ESCALABLE
4
9
16
25
4
12
24
40
1
1,3
1,5
1,6
arqAva Clasificación de Flynn (1972)Introducción-39
• Combina Flujo de Datos y Flujo de Instrucciones con (Single) Único y Múltiple, dando 4 combinaciones:
Flujo de Datos
Múltiple
Único
Múltiple
Único
Flujo de
Intrucc.
SISD
MISD MIMD
SIMD
SISD Una Instrucción un Dato Von Neumann
SIMD Una Instrucción muchos Datos Vectoriales / Sistólicos
MISD Muchas Instrucciones un Dato Pipeline?
MIMD Muchas Instrucciones muchos Datos Multiprocesadores /Multicomputadores
arqAva Modelos SISD y MISD Introducción-40
• SISD: Una Instrucción un Dato (Von Neumann)
I
UC UP MPI D
• MISD: Muchas Instrucciones un Dato (Pipeline?)
MP
Programa
Datos
UC1 UC2 UCN
UP1 UP2 UPN
I1In I2
I1 I2 InD
D
DD
arqAva Modelo SIMD Introducción-41
• SIMD: Una Instrucción muchos Datos (Vectoriales, ....)
I
UC
UP1
MPUPi
UPn
Memoria Común
R
E
D
Host Host
D1
Dn
Di
I
I
I
I
I
I
I
D1
Dn
Di
UC
UP1
UPi
UPn
ML1
MLn
MLi
Memoria Distribuida
Cuello de botella
Acoplamiento fuerte Acoplamiento débil
No escalable
SíncronasLockStep
arqAva Modelo MIMD Introducción-42
• MIMD: Muchas Instrucciones muchos Datos
M. Común (Multiprocesador)
UC1 UP1
M.P.
UPi
UPn
BUS
│
RED
D1
Dn
Di
I1
UCi
UCn
In
Ii
M. Distribuida (Multicomputador)
M P M P M P
M P M P
M P M P M P
Red
Acoplamiento Fuerte Acoplamiento Débil
Memoria común vs Paso de mensajes
a
t1
t2 aa
a t1
t2
arqAva Clasificación de Flynn Ampliada Introducción-43
Arquitecturas Paralelas
SISD SIMD MISD MIMD
Multi-procesadores
Multi-computadores
MPP COW NOW
Von Neumann
ProcesadoresVectoriales
Array de Procesadores
Sistólicos
UMA NUMACOMA
Distintas formas de organizar la memoria común
??
Beowulf
Symetric
Multi
Processor
Distributed Shared Memory
GRID Computing?
CLOUD Computing?
arqAva Perspectiva histórica Introducción-44
SIMDSe inicia en 1965, se vende en 1972 y funciona en
1975Fiasco ILLIAC IV Presupuesto $6 Mill y costó $31 Mill 1/4 de máquina
Se esperaban 1000 MF y se obtuvieron 15MF
¿Dormidas para propósito general?, pero tienen su nicho:
Procesamiento de Imagen, Señal, Genética, BúsquedasMIMD
HWANG (1993) IDENTIFICA TRES GENERACIONES:
1983-1987 Hipercubo con Encaminamiento Sw
1988-1992 Malla con Encaminamiento Hw (Sw de grano medio)
1993-1997 µP y comunicaciones en el mismo chip (grano fino)
¿2010? Multiprocessor systems-on-chips (MPSoCs) NiagaraHoy 4..8 núcleos .. 64 en 2010 .. ¿Se llegará a 1.000?
arqAva Perspectiva histórica Introducción-45
http://ed-thelen.org/comp-hist/vs-illiac-iv.html
arqAva Tendencias Introducción-46
MÁQUINAS BASADAS EN µP COMERCIALES
¿MUCHOS µP SENCILLOS O POCOS Y POTENTES?
¿QUÉ TIPO DE MÁQUINA PARALELA?
MÁQUINAS MÁS POTENTES: ¿CUÁLES Y PARA QUÉ?
¿QUÉ SISTEMA OPERATIVO?
IBM
HP
Cray
SGI
SUNIntel
arqAva Las máquinas más potentes (Junio/2010) Introducción-47www.top500.org ¿Qué micros se utilizan?
Intel 81,2%
AMD 9,8%
IBM POWER 8,4%
Micros convencionales de gama alta
99%
Dell
arqAva Las máquinas más potentes (Junio/2010) Introducción-48www.top500.org ¿Cientos o miles de micros?
Total
Max
Med
Min
Total Total
294.912
10.263
1.792
5.131.461
arqAva Las máquinas más potentes (Junio/2010) Introducción-49www.top500.org ¿Qué arquitecturas dominan?
MPP
SMP
Cluster
ConstelaciónSIMDMono
Bull NovaScale C-DAC PARAM Padma Cray Inc. XT3 Cray Inc. XT4 Cray Inc. XT5 Cray Inc. XMT Fujitsu/Siemens M9000 Fujitsu/Siemens PRIMEQUEST Hitachi BladeSymphony Hitachi SR11000 HP Integrity SuperDome IBM eServer p575 IBM BlueGene/L&P IBM System Cluster 1350 Liquid Computing LiquidIQ NEC Express5800/1000 NEC SX-9 SGI Altix 4000 SiCortex SC series Sun M9000
arqAva Implantación en el mercado (Julio/2008) Introducción-50
“Overview of Recent Supercomputers” http://www.euroben.nl/reports/web08/overview.html
Memoria
Común Distri.Total
1 1SIMD 2
7 11MIMD 18
arqAva Las máquinas más potentes (Junio/2010) Introducción-51www.top500.org ¿Cuáles?
N Ordenador TFlops Ubicación #UP
1 Jaguar Cray XT5 1759,00 Oak Ridge National Laboratory (USA) 224162
2 Nebulae Intel + Nvidia 1271,00 National Supercomputing Center Shenzhen (China) 120640
3 Roadrunner Cell+AMD 1042,00 DOE / NNSA / LLAL (USA) 122400
4 Kraken Cray XT5 831,70 Universidad de Tennessee (USA) 98928
5 JUGENE BlueGene/P 825,50 Forschungszentrum Juelich (Alemania) 294912
87 MareNostrum IBM PPC 63,83 Barcelona Supercomputer Center (España) 10240
Centros: 5, 3, 2, 2, 0, 2, 3, 3, 1, 7, 6, 7, 5, 3
Puesto: 233, 314, 456, 427, , 267, 424, 5, 11, 5, 9, 26, 60, 87
arqAva Las máquinas más potentes (Junio/2010) Introducción-52www.top500.org ¿En qué se utilizan?
¿ Cada vez más en la industria ?
arqAva Las máquinas más potentes (Junio/2010) Introducción-53www.top500.org ¿Qué S.O. usan?
Windows 5 => 1%
arqAva ¿Quién se come a quién? Introducción-54
now.cs.berkeley.edu/ FIN