Sistemas Paralelos
2011
Aspectos de Hardware
Clasificación de Flynn (1966)
Según el flujo de datos y de Instrucciones
SISD:
Único flujo de instrucciones aplicado a un
único flujo de datos
SIMD:
Único flujo de instrucciones aplicado a
múltiples flujos de datos
MIMD:
SISD
9
Todas las computadoras con un único
procesador, desde computadoras personales
hasta grandes mainframe
Módulo de memoria (MM) Unidad de control (CU) Unidad de proceso (PU)
Flujo de instrucciones decodificadas (IS) Flujo de datos (DS)
9 Los procesadores pipeline, se denominan SISD confluentes.
CU PU MM
IS DS
SIMD
9
Un único procesador central (funcionalidad
completa) y múltiples procesadores elementales
(fetch de datos, ejecución, enmascaramiento)
CU PU2 IS PU1 PUn . . . . IS . . . .
DS1 MM1
MMn MM2 DS2
DSn
SIMD
Característica principal:
SINCRONISMO
N-258 NAS
Parallel Processors, Thinking Machine CM-5 (1993)
Thinking Machine CM-1 .. 5
MIMD
Característica principal:
ASINCRONISMO
CUn PU2 . . . . IS1 PU1 PUn . . . . CU2 CU1 IS2 ISn IS2 IS1 DS1 DS2
DSn IS
CUn PU2 . . . . IS1 ... PU1 PUn DS DS . . . . ISn CU2 CU1 IS2 ISn MM1 MMn MM2
...
IS2 IS1 SM
MISD
MIMD
MIMD
C. Distribuidas y Paralelas
Multiprocesador Multicomputador
Memoria Compartida Memoria Distribuida
Memoria Privada Memoria
Sistemas de Multiprocesadores de
Memoria Compartida
Múltiples procesadores conectados a múltiples
módulos de memoria
Espacio de direcciones de memoria único
Red de interconexión
Procesadores
Multiprocesador de Memoria
Distribuida
(Pasaje de Mensajes)
9 Múltiples procesadores conectados por una red de interconexión
9 Espacio de direcciones de memoria no compartido
Red de Interconexión
Computadora Computadora Procesadores
Memorias
Arquitecturas Paralelas
Memoria Compartida
SMP
Memoria Distribuida
Cluster MPP
Beowulfs NOW
9
Symmetric Multi-Processing (SMP)
9
Máquinas Masivamente Paralelas (MPP)
9
Computación Distribuida
9
Redes de Workstations (NOW)
9
Clusters de Computadoras
9
Multiclusters
9
Grids
Symmetric Multi-Processing
9 El usuario no advierte la naturaleza paralela de la máquina.
9 Es el sistema operativo quien administra la
asignación del tiempo de CPU a los programas. En este caso dispone de
más de un procesador para realizar el
Massively Parallel Processing
9 Varios procesadores
conectados con una red de interconexión rápida y soporte de hardware adicional.
9 La memoria de una MPP es completamente
distribuida, cada procesador posee su propia cache y chips de memoria.
9 Generalmente muchos procesadores
conectados a través de una red dedicada.
Cluster
Características
9
MIMD- Memoria Distribuida
9
Múltiples computadoras – Red de alta velocidad
9
Cluster Homogéneo – Semi-homogéneo –
Heterogéneo.
CLUSTER (40 PC)
SGI Origin 2000
Características
9 MIMD Memoria Distribuida-Compartida.
9 Non UMA
Topologías de Interconexión
MIMD
C. Distribuidas y Paralelas
Multiprocesador
BUS Switched
Multicomputador
BUS Switched
Topologías- M. Compartida
Arquitecturas basadas en bus
9 Existe saturación del bus
9 Performance limitada al bandwidth del bus
9 Coherencia Cache
9 Snoopy cache
Topologías- M. Compartida
Arquitecturas basadas en switch
9 Puede ser visualizada como un grilla de cables, con switches en las intersecciones y Procesadores y Memorias en los terminales
9 La única restricción para establecer comunicación es que los elementos que se quieren comunicar estén disponibles
9 Muy Cara
P
P
P
M M M P
Topologías-M. Distribuida
9 Redes basadas en Bus
9 Muy sencilla
9 No escalable
9 Redes de Interconexión Dinámica
9 Redes de Switching Multistages
Topologías de Interconexión
Estáticas
Única línea
Topologías de interconexión
Estáticas
Torus Grilla
Topologías de Interconexión
Estáticas
3-dimensional
2-dimensional
1-dimensional
Topologías de Interconexión
Estáticas
3-dimensional
2-dimensional
1-dimensional
4-dimensional
0000 0001 1000 0010
Computador paralelo
–
Conjunto de procesadores capaces de
trabajar cooperativamente en la resolución
de problemas computacionales.
–
La definición incluye un amplio espectro:
supercomputadoras, procesadores
masivamente paralelos (MPP).
–
Característica fundamental: disponibilidad de
HPC (Computación de alta
performance)
–
Ha dejado de ser “exótica”.
–
Posibilitada por avances en diferentes
tecnologías:
–
Poder de procesamiento
(microprocesadores).
–
Redes (comunicación de datos).
Evolución tecnológica (últimos
años)
•
Junio de 2008:
–
Petaflop supercomputer (Peta = 10
15=
1000000000000000).
–
Roadrunner (LANL), 1.026 petaflop/s.
•
BladeCenter QS22 Cluster.
•
PowerXCell 8i 3.2 Ghz / Opteron DC 1.8 GHz.
•
Híbrido: 6,562 dual-core AMD Opteron® y 12,240 Cell
chips.
•
98 terabytes de memoria.
•
278 IBM BladeCenter® racks (560 m2).
Evolución tecnológica (últimos
años) Junio 2010
–
Jaguar (Oak Ridge National Laboratory, USA), 1.75
petaflop/s.
• Pico teórico: 2.7 petaflop/s.
• Cray XT5-HE Cluster.
• 37.376 AMD x86, 64 bits, Opteron Six Core 2.6 GHz.
• 299 terabytes de memoria.
• 224.162 núcleos.
• 10.000 TB de disco, red de 240 Gb/s.
–
Nebulae (National Supercomputing Centre, China),
1.27 petaflop/s.
•
Pico teórico: 2.98 petaflop/s.• Híbrido: cuad-core Intel X5650 y 4.640 NVidia Tesla C2050 GPU