UTEM
Oscar Magna V.
Civil Engineering on Computer Science & MBA Dr (c) in Business Management and Administration Technological Metropolitan University Santiago of Chile omagna@utem.cl, osemav@gmail.com http://omagna.tripod.com (56-2) 787.7211 C H I L E.
UTEM
COMPUTACIN PARALELA
INF - 5141
2012-II
OMV - INF 5141 COMPUTACION PARALELA -2-
Slide-2.2
29/08/2012
UTEM
PLATAFORMAS PARALELAS
TOPOLOGAS Y ARQUITECTURAS
COMPUTACION PARALELA
-3-
Hardware: Mltiples procesadores Mltiples memorias Redes de interconexin Software: Sistemas Operativos paralelos Programas orientados a concurrencia Objetivo: Utilizar estos elementos para Mejorar el Speed-up: Tp = Ts / p Abordar problemas con alta demanda de memoria
COMPUTACION PARALELA
-4-
29/08/2012
Organizacin lgica: Visin que tiene el usuario de la mquina, desde el punto de vista del software del sistema. Organizacin fsica: La arquitectura hardware real. La Arquitectura fsica es, hasta cierto punto, independiente de la arquitectura lgica.
COMPUTACION PARALELA
-5-
COMPUTACION PARALELA
-6-
29/08/2012
Dos alternativas diferenciadas: Plataformas de paso de mensajes. Plataformas con espacio de memoria compartida.
COMPUTACION PARALELA
-7-
Paso de mensajes: Cada procesador tiene un espacio de memoria propio e independiente. La comunicacin se produce a travs de mensajes entre el procesador emisor y el receptor. Operaciones bsicas: send y receive. Estndares: MPI, PVM. Ejemplos: IBM SP, SGI Origin 2000, clusters de estaciones de trabajo.
COMPUTACION PARALELA
-8-
29/08/2012
Espacio de memoria compartida UMA: Acceso a memoria uniforme. NUMA: Acceso a memoria no uniforme. ccNUMA: Acceso a memoria no uniforme con coherencia de cache.
COMPUTACION PARALELA
-9-
Problema de coherencia de cache en los sistemas de memoria compartida: Se debe mantener la coherencia en mltiples copias de los mismos datos. Imprescindible para mantener la semntica de los programas. Protocolos para respetar la coherencia de cache: Invalidacin Actualizacin.
COMPUTACION PARALELA
- 10 -
29/08/2012
COMPUTACION PARALELA
- 11 -
El protocolo ptimo depende de las caractersticas de cada aplicacin: Frecuencia de operaciones de lectura / escritura. Problemas con comparticin falsa: Lneas de cache comunes actualizadas en palabras distintas. Equilibrio entre costes de comunicacin (actualizacin) y ciclos de espera (invalidacin). Los esquemas actuales se basan en el protocolo de invalidacin.
COMPUTACION PARALELA
- 12 -
29/08/2012
Compartido: Dato que est presente en la memoria cache de ms de un procesador, pero que an no ha sido modificado. No-vlido: Dato en la memoria cache de un procesador, que ha sido modificado por otro. Sucio: Dato en la memoria cache de un procesador que lo ha modificado. Toda referencia a este dato ser servida por este procesador, y no por la memoria principal.
COMPUTACION PARALELA
- 13 -
Orientado al uso de bus comn. Cada procesador mantiene la informacin de datos compartidos / no-vlidos / sucios. Se realiza una escucha activa del bus, y cuando se detecta una escritura sobre un dato compartido, se actualiza su estado. Problema: Genera mucho trfico en el bus, ya que cada escritura hay que declararla.
COMPUTACION PARALELA
- 14 -
29/08/2012
La memoria global es la que mantiene actualizada la informacin de datos compartidos / no-vlidos / sucios. Mantiene una lista de todos los procesadores que comparten un cierto dato. Cuando un procesador modifica un dato, lo comunica a la memoria principal, y esta a los procesadores que lo comparten. Problema: La memoria principal se convierte en cuello de botella.
COMPUTACION PARALELA
- 15 -
Arquitectura paralela ideal: PRAM (Parallel Random Access Machine). Modelos de PRAM: EREW/ERCW/CREW/CRCW (Exclusivo/Concurrente Lectura/Escritura) Resolucin de escritura concurrente: Comn, Arbitrario, Prioridad y Suma.
COMPUTACION PARALELA
- 16 -
29/08/2012
Redes de interconexin (RICs): Proporcionar conexin entre los distintos procesadores y memorias del sistemas. Tipo de redes Esttica: Enlaces punto a punto Histricamente usada para conectar procesadores (memoria distribuida) Dinmica: Formada por elementos de conmutacin Histricamente usada para conectar procesadores con memorias (memoria compartida)
COMPUTACION PARALELA
- 17 -
Esttica
OMV - INF 5141 COMPUTACION PARALELA
Dinmica
- 18 -
29/08/2012
Dimetro: Distancia mxima entre cualquier par de nodos (Cuanto ms pequeo mejor). Conectividad: Mnimo nmero de arcos que hay que eliminar para convertir la red en dos subredes desconectadas (Cuanto ms grande mejor). Ancho de Biseccin: Mnimo nmero de arcos que hay que eliminar para dividir la red en dos mitades
iguales (Cuanto ms grande mejor).
Ancho de Banda de Biseccin: Mnimo volumen de comunicacin permitido entre dos mitades cualesquiera de la red (Cuanto ms grande mejor). Costo: Nmero de enlaces en la red (Cuanto ms pequeo
mejor).
10
29/08/2012
Medio compartido. La informacin es difundida. Dimetro: O(1). Conectividad: O(1). Ancho de biseccin: O(1). Coste: O(p).
11
29/08/2012
Basada en conmutacin. Soporta conexiones simultneas. Dimetro: O(1). Conectividad: O(1)? Ancho de biseccin: O(p)? Costo: O(p2).
OMV - INF 5141
Caso particular: Red Omega ( ) p procesadores log p etapas p/2 conmutadores por etapa
OMV - INF 5141
12
29/08/2012
13
29/08/2012
1D - hipercubo
0D - hipercubo
2D - hipercubo 3D - hipercubo
14
29/08/2012
Slo hay un camino entre cada par de nodos. Casos particulares: Array lineal Estrella
15
29/08/2012
Paso de mensajes. El costo de comunicacin de una operacin de transferencia depende de: Tiempo de inicio ts: tiempo de preparacin del mensaje por parte de la fuente y del destino (Aadir cabecera, correccin de
errores, ejecucin del algoritmo de enrutamiento, conexin entre fuente y destino).
Tiempo de salto th: Tiempo de desplazamiento entre dos nodos conectados directamente (tiempo de enrutamiento o switching, latencia del router o switch). Tiempo de transferencia de palabra tw: Inverso del ancho del canal de comunicacin (o ancho de banda).
OMV - INF 5141
Normalmente th es muy pequeo (del orden de los nano-segs) . As, tcomm = ts + mLtw Tmsg(L; m /m=1) = ts + tw L ts =tiempo de inicializacin de mensaje. tw =tiempo de transferencia por palabra. th: tiempo de salto.
OMV - INF 5141
16
29/08/2012
Mensaje no Dividido
Dividido en 2 partes
Tiempo de inicio ts. Tiempo de salto th. Tiempo de transferencia por palabra tw. m: is the message length (size) in words L: is the number of links traversed
Dividido en 4 partes
3 0 1 2
17
29/08/2012
tcomm= ts + twm
ts es mucho ms grande que th, y en la mayora de los casos, twm es ms grande que thL.
Enrutamiento: Algoritmo para determinar el camino que un mensaje tomar desde la fuente hasta el destino. Varias clasificaciones: Mnimo vs. No-mnimo. Determinista vs. Adaptativo.
18
29/08/2012
Orden predefinido de las dimensiones. Los mensajes se encaminan por cada dimensin, en el orden establecido, hasta que no es posible continuar: X-Y para mallas E-cubo para hipercubos
19
29/08/2012
Los nodos del anillo se mapean al hipercubo siguiendo el cdigo Gray reflejado. La dilatacin y congestin es 1.
OMV - INF 5141
20
29/08/2012
21