Tema 3: Paralelismo en Multiprocesadores (I) Perspectiva histórica: Diversas clasificaciones de las arquitecturas paralelas. Enfoque global actual: Arquitecturas paralelas actuales Aspectos fundamentales de diseño Bibliografía: “Parallel Computer Architecture”, Draft version, Por J. Dongarra Aportaciones: E.L. Zapata, J. Plata y M. Valero
Perspectiva histórica : Diversas clasificaciones de las arquitecturas paralelas.
Clasificación de Flynn Basado en las nociones de flujo de instrucciones (control) y flujo de datos Clasificación de las Organizaciones Paralelas SISD : Single Instruction - Single Data MISD: Multiple Instruction - Single Data SIMD: Single Instruction - Multiple Data MIMD: Multiple Instruction - Multiple Data
Máquinas SIMD P Control M Ventajas : Simplicidad del control, coste, facilidad en la depuración de programas Desventajas : Modelo poco flexible, ineficiencia si pocos procesadores están Activados Ejemplos : Illiac-IV, CM-1, Maspar MP-1
Máquinas MISD Control Control Control Memoria Ejec. Ejec. Ejec. Ventajas : Diseño simple, relación coste-rendimiento bajo para aplicaciones específicas (procesamiento de señales, …) Desventajas : Aplicabilidad limitada, programación compleja Ejemplos : Procesadores sistólicos, como el CMU Warp
Máquinas MIMD Ventajas : Aplicabilidad general Red Interconexión P M P M M M M Red Interconexión Ventajas : Aplicabilidad general Desventajas : Difíciles de diseñar, costes de sincronización medios/altos, progra- mación compleja. Ejemplos : SGI Challenge, Cray T3D, NCube, CM-5
Clasificación (2) Schwartz Basada en el número de procesadores (granularidad) y el tipo de su conectividad Grano grueso Hasta 10 procesadores Grano medio Decenas a miles de procesadores Grano fino Miles a …. de procesadores El concepto de granularidad puede también aplicarse a la forma en que un algoritmo paralelo genera tareas concurrentes.
Clasificación (3) Acceso a memoria Basado en la forma en que los procesadores comparten los datos SM Memoria compartida o memoria global Todos los procesadores acceden a los mismos módulos de memoria DM Memoria distribuida o memoria local Cada procesador tiene su propia memoria. El acceso a los datos en la memoria de otro procesador es mediante el pase de mensajes ( o en algunos casos mediante radiación)
Topologías (1) Los computadores paralelos pueden clasificarse por la interconexión (comunicación) entre procesadores. Los procesadores pueden comunicarse mediante: Memoria compartida Buses compartidos Red de interconexión dinámica (reconfigurable): etapa simple o múltiple, barras cruzadas, … estática: malla, árbol, toro, totalmente conectada, hypercubo, anillos, ciclos conectados en cubo, intercambio y barajamiento, … Métodos de interconectividad más usuales SM-MIMD Bus, conexión directa, red de conmutación multietapa DM-MIMD Malla, toro, hipercubo, anillo, configurable.
SHARED MEMORY M M M NETWORK P P P
DISTRIBUTED MEMORY NETWORK P P P M M M
Bell’s Taxonomy Gordon Bell, Scalable, Parallel Computers: Alternatives, Issues, and Challenges, Int. J. Paral. Progr., 22(1), 94, 9. 3-46
Bell’s Evolution Gordon Bell, Scalable, Parallel Computers: Alternatives, Issues, and Challenges, Int. J. Paral. Progr., 22(1), 94, 9. 3-46