Upload
fredy-vega-flores
View
213
Download
0
Embed Size (px)
DESCRIPTION
arquitectura semana9
Citation preview
SISTEMAS
DE COMUNICACIN
EN COMPUTADORAS
PARALELAS
Integrantes
Campos Arana Bryan Vsquez Puelles Cesar Espritu Valera Frank Callan Aranda Rider
Ing. Sistemas e Informtica
Sistemas de Comunicacin en
Computadores Paralelos:
Estructura y Funcionamiento
Los sistemas o redes de comunicacin para computadores
se han clasificado atendiendo a diversos criterios
Los sistemas de comunicacin diseados o implementados
a medida para computadores paralelos concretos, conectan
nodos en diferentes niveles del sistema.
Las implementaciones utilizadas en sistemas como
Convex Exampler, Fire 15k de sun, red de barras cruzadas
de 640 x 640 que conecta a 640 nodos[Sato] en el
supercomputador Earth Simulator.
REDES LAN (Local Area Network):
Conectan cientos de nodos situados a distancias de
kilmetros, actualmente decenas de kilmetros. Surgieron
dentro del grupo de investigacin que desarrollo las
estaciones de trabajo.
REDES WAN (Wide Area Network):
Conectan redes de computadores entre s, lo que supone
miles de nodos situados a miles de kilmetros de distancia.
Se han desarrollado tradicionalmente dentro de la
comunidad de telecomunicaciones.
REDES SAN (System Area Network):
El tipo de trfico en una SAN es muy similar al de los discos
duros como ATA, SATA y SCSI.
Pueden conectar decenas, cientos o miles de nodos situados a decenas o a
unos pocos metros. Son sistemas de comunicacin de altas prestaciones, se
puede decir que estn entre los sistemas de comunicacin hechos a medida
y las redes LAN.
Interconexin de Sistemas
Paralelos
La red se compone de:
Nodos: es cualquier elemento que se encuentre conectado ycomunicado en una red.
Conmutadores o Switch: Los conmutadores controlan elflujo del trfico de red basndose en la informacin de ladireccin de cada paquete. Un conmutador averigua qudispositivos estn conectados a sus puertos, y enva lospaquetes al puerto adecuado solamente.
Conectores: los conectores son aditamentos con los que loscables se conectan a las tarjetas de red ubicadas en los nodos.Cada medio de transmisin tiene sus conectorescorrespondientes.
La red se caracteriza por su:
Topologa:Estructura de la interconexin fsica. La topologa de una red es el arreglo fsico o lgico en el cual los dispositivos o nodos de una red se interconectan entre s sobre un medio de comunicacin.
Enrutador: Un router es un dispositivo para la interconexin de redes informticas que permite asegurar el enrutamiento de paquetes entre redes o determinar la ruta que debe tomar el paquete de datos.
Estrategia de conmutacin:
La conmutacin de paquetes: Un paquete es un grupo de
informacin que consta de dos partes: los datos propiamente
dichos y la informacin de control, que indica la ruta a seguir a
lo largo de la red hasta el destino del paquete.
Estrategia de conmutacin:
La conmutacin de circuitos: es un tipo de conexin que realizan los
diferentes nodos de una red para lograr un camino apropiado para
conectar dos usuarios de una red de telecomunicaciones. Se reservan
recursos de transmisin y de conmutacin de la red para su uso
exclusivo en el circuito durante la conexin.
Comunicacin
en la red
Comunicacin de
una aplicacin
PATRONE DE COMUNICACION
Asignacin fsica
de procesos a
procesadores
Al esquema de comunicacin que hay que ejecutar
en la red se le conoce como patrn de comunicacin.
Necesidades de
comunicacin de la aplicacin Nivel de
paralelismo
Reparto de
procesos
TemporalEspacial
PATRON DE COMUNICACION
PATRON DE
COMUNICACION
A donde van Cuando se
transmiten
ALEATORIO
Uno de los patrones que ms se utiliza para analizar el
comportamiento de las redes
Cuando la comunicacin es aleatoria?
Si la probabilidad de enviar un paquete del nodo i al j, es la
misma para cualquier par de nodos de la red.
Utiliza los recursos de la red
de manera homognea
ESFERAS DE LOCALIDAD
Los procesos se comunican entre s formando
grupos; dentro del grupo, la comunicacin es
muy habitual, y fuera de l muy escasa.
De cara a reducir la latencia de la comunicacin,
puede ser interesante asignar esos grupos a
procesadores cercanos, con lo que la
comunicacin se limitar dentro de una esfera.
BROADCAST / MULTICAST / REPORTING
Broadcast
Desde el procesador i se enva un mensaje a
todos los procesadores, a la vez. Ejm:Sincronizar
Procesos
Multicast
El mensaje no se enva a todos los nodos, sino
solamente a un subconjunto de ellos.
Reporting
Todos los procesadores envan un mensaje al
mismo nodo destino, ms o menos a la vez
Broadcast Multicast
Conmutacin de circuitos
Conmutacin de paquetes
Construccin del
camino
CONMUTACIN DE CIRCUITOS
La conmutacin de circuitos es un tipo de
comunicacin que establece un canal(o
circuito) durante la duracin de una sesin.
Despus de que es terminada la
sesin(Una llamada telefnica) se libera el
canal y este podr ser usado por otro par de
usuarios.
Etapas:
Establecimiento, transferencia de datos y
liberacin de conexin.
CONMUTACIN DE CIRCUITOS
CONMUTACIN DE PAQUETES
En los sistemas basados en conmutacin de
paquetes, la informacin/datos a ser
transmitida previamente es ensamblada en
paquetes.
Cada paquete es entonces transmitido
individualmente y este puede seguir
diferentes rutas hacia su destino.
Una vez que los paquetes llegan a asu
destino, los paquetes son otra ves re-
ensamblados.
CONMUTACIN DE PAQUETES
El registro de encaminamiento
Eleccin del camino: esttico o adaptativo
Cul es el camino para llegar al destino?
Encaminamiento
de los mensajes
EL REGISTRO DE ENCAMINAMIENTO
El proceso de hacer avanzar un paquete el la red se conoce
como encaminamiento.
Para llegar desde el nodo origen al destino hay que utilizar la
informacin que lleva el propio paquete.
Por dnde avanzar en la red?
Utilizar una tabla que indique los puertos de salida adecuados
para cada direccin de destino.
Efectuar una operacin sencilla con la direccin que d
como resultado el puerto de salida.
REGISTRO DE ENCAMINAMIENTO
En la cabecera del paquete se incluye la direccin de destino. As en cada encaminador de mensaje intermedio
se decidir por donde debe avanzar el paquete en funcin
de dicha direccin.
La cabecera del paquete indica el numero de pasos que debe dar el paquete en cada dimensin para llegar al
destino.
ELECCIN DEL CAMINO
ESTTICO
Los paquetes avanzan hacia el destino recorriendo primero todo el
camino en una dimensin, luego en la siguiente, etc. Por tanto, en el
encaminamiento esttico slo se utiliza uno de todos los caminos
posibles para ir del nodo i al nodo j.
Dado que se utiliza un slo camino, se pierde la tolerancia a fallos de
bajo nivel; si no se puede avanzar, porque hay una avera, habr que
utilizar algoritmos de otro nivel para que la comunicacin se pueda
efectuar.
ELECCIN DEL CAMINO
DINAMICO
El encaminamiento es dinmico si los paquetes que
van de i a j no siguen siempre el mismo camino, sino
que escogen el camino ms adecuado en funcin de
la situacin concreta de la red. El encaminamiento
dinmico es ms flexible, y permite utilizar caminos en
los que la densidad de trfico sea menor para evitar
zonas de la red que estn temporalmente saturadas.
ELECCIN DEL CAMINO
ENCAMINAMIENTO NO MNIMO
Aunque el camino recorrido por los paquetes debiera ser de
longitud mnima, en algunos casos puede ser necesario o til
utilizar caminos ms largos para llegar a destino, para, por
ejemplo, rodear una zona de trfico denso, o, sobre todo,
para evitar zonas con fallos en la red.
I. Control de Flujo de Informacin
Los paquetes avanzan en la red de
encaminador a encaminador hasta
llegar a su destino. Pero, cmo se
efecta el avance? Qu hay que
hacer si los recursos que necesita
un paquete para seguir adelante
estn ocupados? Este tipo de
cuestiones se conocen como
control del flujo de los paquetes.
II. Avance de los paquetes: SF,
WH, CT
Cmo se transmite un paquete de encaminadora encaminador? Supongamos que los enlaces dela red son de un byte, con lo que en un ciclo detransmisin se pasar un byte entre dosencaminadores. Los paquetes que hay quetransmitir van a ser bastante ms largos, por loque necesitaremos varios ciclos de transmisinpara pasar todo el paquete de un encaminador alsiguiente. Mientras tanto, qu hay que hacercon un paquete que se est recibiendo?
1234
234 1
34 12
4 123
1234
234 1
34 12
4 123
1234
234 1
34 12
4 123
1234
Encaminadores intermed.
t
Se transmite el
paquete completo
entre encaminadores
contiguos.
Durante la transmisin
se almacena en un
bfer interno.
Store-and-forward (SF)
1234
234 1
4 23 1
1234
Encaminadores intermed.
Tras procesar el primer flit de
la cabecera de un paquete, se
transmite al siguiente
encaminador, sin esperar a la
llegada del resto.
124 3
4 123
34 12
La transmision del paquete se
segmenta.
Wormhole (WH) / Cut-
through (CT)
1234
4 23 1
Diferencia: qu hacer si el byte de cabecera de un paquete no puede continuar?
124 3
4 123
Todos los bytes del
paquete se paran
donde estn.
34 12
234 1
1234
34 12
34 12
No hay que utilizar
bferes.
Wormhole
1234
4 123
El primer byte se para,
pero el resto contina
y los bytes se
almacenan en los
encaminadores, en
bferes.
4 123
1234
1234
Diferencia: qu hacer si el byte de cabecera de un paquete no puede continuar?
234 1
1234
34 12
4 3 12
Cut-through
III. Conflictos en el uso de
recursos: Los Bferes
Los paquetes recorren la red utilizando los enlaces dela misma y los encaminadores de mensajes. La red espor tanto un recurso compartido, que va a ser utilizadosimultneamente por muchos paquetes. Cmo hayque afrontar los conflictos que, inevitablemente, sevan a producir al usar esos recursos? Ya hemoscomentado en qu difieren CT y WH al tratar losconflictos: el paquete que no puede seguir adelante sealmacena temporalmente en el encaminadorintermedio, o se deja bloqueado a lo largo de toda lared.
En el caso de CT se necesita de un poco dememoria para almacenar transitoriamente los
paquetes (o algunos bytes de un paquete) en
los encaminadores, hasta que la salida
correspondiente est libre. Normalmente, los
encaminadores no disponen de gran cantidad
de memoria para almacenar mensajes, sino que
tienen la posibilidad de almacenar unos cuantos
bytes o unos cuantos paquetes.
Estructura de los bferes:
compartidos o separados
El espacio de memoria de los encaminadores puede ser
compartido, para paquetes que lleguen por cualquier
entrada, o puede repartirse a cada entrada, slo para
paquetes que lleguen por cada entrada.
Si el espacio de memoria es compartido, lacapacidad de almacenamiento disponible seutiliza de manera ms eficaz, ya que siempre haysitio para un paquete hasta que se agota toda lamemoria del encaminador; sin embargo, si lorepartimos entre los diferentes puertos de entradadel encaminador, puede que se llene una de lascolas de entrada y no se pueda admitir mspaquetes en esa entrada aunque pudiera quedarsitio libre en otras colas.
Bferes en las entradas o en
las salidas Los bferes de espera pueden asociarse tanto a los puertos de
entrada como a los de salida. Si se colocan en la entrada, los
paquetes pasan directamente al bfer de espera si su salida no est
disponible o si hay paquetes esperando en los bferes de esa
entrada. En cambio, si se colocan en la salida, primeramente se
efecta la operacin de asignacin de puerto de salida
(encaminamiento) y luego se pasa, en su caso, al bfer de espera.
IV. Eficiencia de la
comunicacin: latencia y
throughput
La red de comunicacin, y junto con ella todo el sistema de paso demensajes, no es sino un intermediario necesario para poder llevar acabo la comunicacin entre procesos. Dado que la comunicacin esuna parte ms del proceso de ejecucin en paralelo, el subsistemade comunicacin de una mquina MPP debe ser muy eficiente.
Dos son los parmetros ms habituales para medir la calidad delsistema de comunicacin de un computador paralelo: la latencia delos paquetes y el nmero de paquetes que puede gestionar(throughput).
Algunos parmetros que conforman el tiempo de comunicacin:
Anchura de los enlaces: nmero de bits que puede transmitir
simultneamente el enlace.
Ciclo de transmisin: tiempo necesario para transmitir un byte.
Ancho de banda de los enlaces: cantidad de informacin que se
puede transmitir en un segundo.
Ancho de banda til: la informacin a transmitir se estructura en
paquetes, y eso significa cierta sobrecarga, ya que adems de los
datos hay que transmitir informacin de control (cabecera).
Tiempo de encaminamiento: tiempo necesario en cada
encaminador para procesar la cabecera del paquete y decidir por
dnde debe ir.
PROBLEMAS DE LA COMUNICACIN
El proceso de comunicacin es distribuido, y se ejecuta
en paralelo en varios encaminadores de mensajes. Por
lo tanto, puede aparecer un problema que ya hemos
analizado: el bloqueo (deadlock) (livelock,
starvation...).
Bloqueos: un conjunto de paquetes agota los recursos
para seguir adelante (en modo CT, los bferes; en modo
WH, los enlaces...), y se queda parado para siempre.
PROBLEMAS DE LA COMUNICACIN
Deadlock (interbloqueos)
Ejemplo: Conmutacin de paquetes (wormhole el
peor caso)
m2: 1,33,1
(0,0) (0,3)
(3,0) (3,3)
m1: 0,12,3
m3: 3,21,1
m4: 2,10,2
PROBLEMAS DE LA COMUNICACIN
Problemas de livelock y starvation
Ciclos infinitos (livelock)
Los paquetes van adelante y atrs, pero no consiguen llegar
al destino. Pueden aparecer problemas si se desvan
paquetes de los caminos mnimos para no perder tiempo.La causa puede estar relacionada con las prioridades.
Espera indefinida (starvation)
Algunos procesadores no consiguen inyectar sus paquetes en
la red porque hay mucho trfico alrededor.
Mala planificacin
PROTOCOLOS DE COMUNICACIN
En el proceso de comunicacin toman partemuchos elementos.
El proceso ms lento de la comunicacinacotar la velocidad de comunicacin delsistema.
red + encaminadores
interfaz + procesador (+SO?)
P1 P2
PROTOCOLOS DE COMUNICACIN
La interfaz procesador/red es tambin muy importante: cmo se inyectan los paquetes en la red?
cmo salen?
Hay varios protocolos de comunicacin para regular
esos procesos:
- El ms simple, TCP/IP
- Ms eficientes: protocolos de 0 copias
estandares: VIA, Infiniband...
propietario: gm (myrinet)...
PROTOCOLOS DE COMUNICACIN
TCP / IP (reliable / connection oriented) Protocolo de los primeros clusters (y los de bajo rendimiento).
memoria usuario
memoria usuario
Implementacin habitual:
c. mem. sistema
c. mem. sistema
Int. SO Int SO
PROTOCOLOS DE COMUNICACIN
VIA (Virtual Interface Architecture)
Estndar de comunicacin de los principales fabricantes.
No se hacen copias en la memoria del sistema operativo; se
trabaja directamente con los encaminadores:
Antes de enviar un mensaje se reserva sitio en la memoria
fsica, en el emisor y en el receptor.
Las operaciones send/receive envan un descriptor a una cola
para procesar paquetes.
Podemos esperar a la confirmacin, o seguir trabajando.
PROTOCOLOS DE COMUNICACIN
InfiniBand
Objetivo: infraestructura de comunicaciones de altasprestaciones, basada en conmutadores (intra) yencaminadores (inter), para componer redes SAN(reemplazar el bus compartido).
Se utilizan adaptadores especiales para conectar nodos: HCA (nodos de computacin) o TCA (nodos auxiliares).
Para conectar nodos de redes locales se utilizan conmutadores y para conectar redes locales entre ellas se utilizan encaminadores.
Los enlaces son de 2,5 Gb/s de un solo sentido, punto a punto.
PROTOCOLOS DE COMUNICACIN
Myrinet
Infraestructura de comunicacin de alto rendimiento
(caro).
Enlaces de 10 Gbit/s (full duplex), fibra ptica.
Conmutadores en un crossbar (red Clos). Cut-through.
Software propio para gestin de mensajes (GM).
Implementaciones de Gbit ethernet / Via / Infiniband.
Latencias de paquetes pequeos: 1,2 s (Gigabit, 50
s)
Throughput mximo 9,6 Gbit/s
APLICACIONES
Industriales
Qumica y bioingeniera.
Estudio de estructuras
moleculares, simulacin
de reacciones,
espectroscopa.
Mecnica Industrial
Diseo asistido. Modelos
de elementos finitos.
Medicina
Estudio del genoma,
medicina farmacutica,
radioterapia.
Comerciales
Telecomunicaciones Anlisis de trfico, desempeo y
calidad de servicio
Redes de control inteligentes
Servicios web. Buscadores paralelos
(metabuscadores).
Sistemas de tiempo real.
Bases de datos paralelas.
Anlisis de datos. Data mining. Anlisis de mercado, series
temporales, etc
Tendencia en las redes de
comunicacin
La arquitectura de los sistemas paralelos msrpidos ha sufrido importantes cambios en losltimos aos. De los 500 computadores msrpidos
81% son de tipo cluster
19% restante son MPP
Las redes ms utilizadas son:
Infiniband (42%)
Gigabit/10G Ethernet (41%)
3,2% redes de diseo especfico (proprietary)
9% de tipo custom.
Tianhe-2
Una vista de la supercomputadora china Tianhe-2,
la ms rpida del mundo segn el ranking Top 500 Gentileza top500.org
Caractersticas
Tiene un rendimiento de 33,86 petaFLOPS
(33.860.000.000.000.000 operaciones de coma flotante
por segundo), con un pico terico de 54,9 petaFLOPS
que la convierte en la supercomputadora ms rpida del
mundo.
Est equipada con 16.000 nodos, cada uno con dos
procesadores Intel Xeon IvyBridge E5-2692 (12 ncleos,
2,2 GHz) y tres procesadores Intel Xeon Phi 31S1P (57
ncleos, 1,1 GHz), cuya combinacin da un total de
3.120.000 ncleos de computacin. Es capaz de
almacenar 12,4 PB, tiene una memoria del sistema de
1.375 TiB (1,34 PiB) y utiliza el sistema
operativo Kylin Linux. Se calcula que ha costado entre
200 y 300 millones de dlares.