ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación...

14
ARQUITECTURAS PARALELAS ACTUALES

Transcript of ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación...

Page 1: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

ARQUITECTURAS PARALELAS

ACTUALES

Page 2: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Arquitectura Paralela : AYERHistóricamente, la computación paralela ha consistido en una serie de modelos rivales y arquitecturas divergentes, sin una línea de desa-rrollo predecible

Arquitectura

Software de

Aplicaciones

Software del Sistema

ArraysSistólicos

Flujo de Datos Memoria Compartida

Pase deMensajes

SIMD

La incertidumbre arquitectural ha paralizado el desarrollo del software paralelo

Page 3: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Arquitectura Paralela : HOY

Extensión de la noción clásica de la arquitectura de computadores(ISA), para soportar comunicación y cooperación

Arquitectura de Comunicaciones =Abstracción de la Comunicación + Implementación

Abstracción:• Primitivas de comunicación HW/SW visibles al programador (ISA)

• Ej.: memoria compartida, pase de mensajes, …

• Se asume que las primitivas se implementan eficientemente

Implementación: • Integración del controlador de comunicaciones• Estructura de la red de interconexión

Page 4: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Arquitectura de Comunicaciones

Medio de Comunicación Físico

Hardware deComunicación

Soporte del Sistema Operativo

Abstracción de la Comunicación

Compilación Librería

Nivel Usuario

NivelSistema Frontera

Hardware/Software

Modelo de Programación

Paralelismo de datos

Pase deMensajes

MemoriaCompartida

Multi-Programación

Objetivos:• Amplia aplicabilidad• Facilidad de programación• Escalable• Bajo coste

Page 5: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Arquitecturas de Memoria Compartida

Propiedad Clave:

Todos los procesadores pueden acceder de forma directa a todaslas posiciones de memoria en el sistema (mecanismo convenien-te y rápido (?) para la comunicación)

Abstracción de la Comunicación:

Espacio de Direccionamiento Virtual Compartido

Múltiples procesos pueden tener una región de memoria com-partida proyectada sobre su espacio de direcciones virtual, demodo que las escrituras de variables residentes en esta regiónson visibles para el resto de los procesos.

Page 6: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Espacio de Direcciones Compartido

Espacio deDireccionesPrivado

Espacio deDireccionesCompartido

DireccionesFísicasComunes

DireccionesFísicasDiferentes

STORE

LOAD

P0P1

P2

Pn

La comunicación, compartición y sincronización se hace mediante operaciones Load/Store de variables compartidas

Modelo de programación agradable (uniprocesador + sincronización)

Una desventaja potencial es la escalabilidad

Page 7: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Arquitecturas de Pase de Mensajes

Propiedad Clave:

La comunicación (cooperación entre procesadores está integrada alnivel de I/O, y no en el sistema de memoria (ahora los bloques dediseño son computadores completos)

Abstracción de la Comunicación:

Espacio de Direccionamiento Local

Los procesadores solo pueden acceder a su memoria local, establecién-dose la comunicación/sincronización mediante llamadas explícitas alS.O. (mensajes send/receive)

Page 8: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Abstracción del Pase de Mensajes

sendX,Q,t

recvY,P,t

Dirección Y

Dirección X Espacio deDirecciones Local

Espacio deDireccionesLocal

Proceso P Proceso Q

La combinación send-recv establece una copia memoria a memoria y una sincronización entre los procesos involucrados

Enviar un mensaje consume mucho tiempo:

- Construir la cabecera del mensaje; copiar los datos en el buffer de la red; enviar el mensaje; copiar los datos en el buffer receptor; copiar los datos del espacio S.O. al espacio usuario

Page 9: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Organización de Paralelismo de DatosProcesadorde Control

P-M

P-M

P-M P-M

P-M P-M

P-M P-M P-M

• Matriz de muchos procesadores simples y con poca memoria• La matriz se conecta a un procesador de control de propósito general• Comunicación eficiente general y especializada• Sincronización global rápida

Page 10: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Arquitecturas de Paralelismo de Datos

• Modelo de Programación:

Las operaciones se ejecutan paso a paso y en paralelo sobre cadaElemento de una gran estructura de datos regular (típicamente un array)

Las operaciones suelen ser aritméticas y transferencias globales de datos

• Cada procesador tiene asociado un elemento de la estructura de datos

Page 11: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Evolución y Convergencia

• Origen a mediados de los 60 :El coste hardware/temporal de leer una instrucción era muy superior al de su ejecución.

Muchas aplicaciones científicas operan sobre datos estructurados matricialmente y con depen-dencias locales.

• Resurgimiento a mediados de los 80 :

La tecnología VLSI permite construir máquinas con miles de procesadores elementales, conprocesamiento a nivel de bit y palabras multi-bit

• Aplicabilidad restringida:Máquinas restringidas a cálculos científicos regulares

• Utilidad controvertida :Las aplicaciones regulares suelen exhibir una fuerte localidad espacial y temporal, haciéndolasAptas para su paralelización eficiente en multiprocesadores

El modelo de programación paralelismo de datos ha evolucionado en el modelo SPMD (SingleProgram Multiple Data)

Page 12: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

M

Hardware Organizations : Scalability

Network

M M M

$

P

$

P

$

P

Network

$

P

$

P

$

P

M M

NUMA

(Non-Uniform Memory Access)

Dance-Hall or UMA

(Uniform Memory Access)

- High-BW network- High-latency memory access

- Medium/low-BW network- Medium/low-latency memory access

• Complex memory controller !• Cache coherency problem

Page 13: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.

Arquitectura Paralela Genérica

Network

$

P

CM

Colección de computadores esencialmente completos, incluyendo uno o varios procesadores y Memoria, conectados a través de una red de comunicaciones escalable

Cada nodo incluye un controlador de comunicaciones, que determina las características clave dela arquitectura: denominación, compartición, protección, sincronización, ...

Page 14: ARQUITECTURAS PARALELAS ACTUALES. Arquitectura Paralela : AYER Históricamente, la computación paralela ha consistido en una serie de modelos rivales y.