PDF de programación - Arquitecturas Paralelas: Redes de interconexión y Medición de performance

Imágen de pdf Arquitecturas Paralelas: Redes de interconexión y Medición de performance

Arquitecturas Paralelas: Redes de interconexión y Medición de performancegráfica de visualizaciones

Publicado el 12 de Julio del 2018
507 visualizaciones desde el 12 de Julio del 2018
767,7 KB
24 paginas
Creado hace 9a (24/10/2014)
Arquitecturas Paralelas:
Redes de interconexión y
Medición de performance

Versión 2014

Hesham El-Rewini & Mostafa Abd-El-Barr, Advanced
Computer Architecture and Parallel Processing. Willey.



Redes de interconexión para
arquitecturas paralelas

Pueden clasificarse según diferentes criterios:
Modo de operación: sincrónico vs. asincrónico.
 Estrategia de control: centralizado vs. descentralizado.
 Técnica de conmutación: circuitos vs. conmutación de paquetes.
 Topología: cómo se conectan procesadores y memorias entre sí.
Cada enlace presenta un balance entre performance (ancho de
banda) y costo.

Diferencia evidente entre redes para memoria compartida y
memoria distribuida. En este último caso no necesita estar
completamente conectada (ruteo de mensajes).



Redes de interconexión
Topologías para memoria compartida

a) Memoria multiport (no escala)
b) Bus (económica, bloqueante)
c) Red conmutada (balance)



Redes de interconexión
Topologías para memoria compartida
CROSSBAR

El routing dinámico se consigue utilizando redes de conmutación
compuestas por ´crossbar switches´ o ´2x2 switches´. Las redes
(permiten varias conexiones
crossbar
simultáneas) pero necesitan gran cantidad de switches (N2 para N
nodos).


son no bloqueantes



Redes de interconexión
Topologías para memoria compartida
OMEGA

Las redes de interconexión multietapa son las más avanzadas entre
las redes actuales de conmutación. En el caso de la red omega, para
conectar N nodos se necesitan log2N etapas con N/2 switches 2x2
cada una.



Redes de interconexión
Topologías para memoria compartida

Ventajas y desventajas de las diferentes topologías:
 Las redes tipo bus son económicas pero pueden transformarse en
el cuello de botella del sistema.
 Los buses paralelos mejoran la performance, pero son costosos.
 Las redes crossbar son no bloqueantes, pero requieren un gran
número de switches.
 Las redes omega son bloqueantes en menor grado. Presentan
mejor performance que los buses y son más económicas que las
crossbar.



Redes de interconexión
Topologías para pasaje de mensajes
I) Estáticas (pizarrón)

II) Dinámicas



4



Redes de interconexión
Topologías estáticas para pasaje de
mensajes
4-cube

7-cube



Redes de interconexión
Topologías estáticas para pasaje de
mensajes

Three-dimensional (3D)
torus network in which the
nodes are connected to
their six nearest-neighbor
nodes in a 3D mesh.



Redes de interconexión
Topologías estáticas para pasaje de
mensajes

Para n nodos, C es el número de conexiones y D el camino más largo
(diámetro de la red)

Completamente conectado: caro, crece rápido. Permite varias conexiones
simultáneas. D=1, C=n(n-1)/2

Anillo: muy económico: C=n. Pero D=n.

Toroide/grilla: más económico, buen equilibrio. D=2(sqrt(n)-1), C=2n
[toroide] y C=2n-sqrt(n) [grid]. C=2n (1D), C=4n (2D) y C=6n (3D)

Hipercubo de m dimensiones: cada nodo conectado a m vecinos. n=2m,
C=n.m/2, D=m.



Redes de interconexión
Ejemplo 8 nodos



Análisis de performance en
Arquitecturas Paralelas
Hesham El-Rewini & Mostafa Abd-El-Barr,
Advanced Computer Architecture and Parallel Processing. Willey.
Capítulo 3 completo.

 Peak rate (no muy útil, marketing)
 Mejora y Eficiencia [S=Ts/Tp, ξ=S/n]

Equal duration model: caso ideal [S=n, ξ=1]
Serial section model: ley de Amdahl [S<n,  <ξ 1]

 Amdahl vs. Gustafson-Barsis
 Efecto del tiempo de comunicación
 Escalabilidad



Definición de mejora y eficiencia

S=

t s
t m

ξ= S
n

Equal duration model

ξ=1



Fractional communication overhead

Serial section model







Serial section model
with communication overhead



Amdhal vs. Gustafson-Barsis

Algunos problemas no se comportan en forma
tan pesimista como predice Amdhal.

A veces el tamaño del problema aumenta con el
número de procesadores. SS(f) es una recta y no
presenta el límite en 1/f.

En este caso f va disminuyendo, en proporción,
al aumentar el orden del problema (en la práctica
sucede en algunos problemas)

S (n)=

n

1+f (n−1)



SS
n

SS

S

1

f

1

SS (n )= f+(1−f )×n
×n

(1−f )

f+

n

lim SS( n)n →∞=∞

SS (n) =n−f (n−1)

S vs. f

gnuplot> plot [x=0:1] [0:10] 5/(x*4+1) title "Amdahl n=5", 10/(x*9+1) title "Amdahl
n=10", 100/(x*99+1) title "Amdahl n=100",1/x title "Amdahl n=oo", 5-(x*4) title

"Gustafson n=5", 10-(x*9) title "Gustafson n=10", 100-(x*99) title "Gustafson n=100"



DISCUSIÓN: Expresión general de la mejora


S=

t1
t n

=

t s+t p
t p
n

+tc

t s+

Donde tanto ts como tc dependen de n



Métrica de Karp-Flatt

Despejando de Amdhal la sección serie (f) y
midiendo experimentalmente la mejora (S) que
se obtiene para un dado problema (utilizando n
procesadores), resulta que f es una medida de
cuán paralelizable es el problema. Puede
utilizarse para predecir cómo se comportará el
sistema al variar el número de procesadores.

f=

− 1
1
S
n
1− 1
n

Esta lógica aplica también si el modelo no es el de Amdhal



Escalabilidad
Ejemplo: Hipercubo de D dimensiones (n=2D, dist max
D=log2(n)), utilizado para realizar la suma de m números.
Mejora (hacia 4): escalable

m

+2 log2 n

S=

m
n



Es escalable si habiendo agregado nodos la
eficiencia se mantiene constante al aumentar m

for m=1:8,
    for n=1:8,
        N=2^n;
        M=2^(m+5);
        S(m,n)=M/(M/N+log2(N));       
        E(m,n)=S(m,n)/N;
    end
end
surf(S);    % ver que en la diagonal se vaya duplicando
ylabel('m: orden 2^(m+5)');
xlabel('n: nodos 2^n');
zlabel('Mejora');



m

+2 log2 n

S=

m
n

for m=1:8,
    for n=1:8,
        N=2^n;
        M=2^(m+5);
        S(m,n)=M/(M/N+log2(N));       
        E(m,n)=S(m,n)/N;
    end
end
surf(E);    % ver que la diagonal se mantenga constante
ylabel('m: orden 2^(m+5)');
xlabel('n: nodos 2^n');
zlabel('Eficiencia');



E=

m/n
+2 log 2n

m
n

Grado de escalabilidad / Isoeficiencia
El grado de escalabilidad de un sistema paralelo se determina por la relación
en que el problema debe incrementarse respecto del número de procesadores
(n), para mantener una eficiencia constante cuando el número de procesadores
aumenta.
Por ejemplo, en un sistema paralelo altamente escalable el tamaño del
problema deberá crecer linealmente con respecto de n a fin de mantener la
eficiencia constante.
En un sistema poco escalable el tamaño del problema necesitará crecer
exponencialmente con respecto de n para mantener la eficiencia constante.

e=

incremento del tamaño del problema

incremento de n para rendimiento constante

NUEVO: La isoeficiencia es la capacidad del sistema de mantener la eficiencia
constante cuando aumenta el número de procesadores.
  • Links de descarga
http://lwp-l.com/pdf12482

Comentarios de: Arquitecturas Paralelas: Redes de interconexión y Medición de performance (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad