Arquitecturas Paralelas: Redes de interconexión y...

24
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.

Transcript of Arquitecturas Paralelas: Redes de interconexión y...

Page 1: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Arquitecturas Paralelas:Redes de interconexión yMedición de performance

Versión 2014

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

Page 2: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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).

Page 3: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Redes de interconexión

Topologías para memoria compartida

a) Memoria multiport (no escala)

b) Bus (económica, bloqueante)

c) Red conmutada (balance)

Page 4: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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

Redes de interconexión

Topologías para memoria compartidaCROSSBAR

Page 5: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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 compartidaOMEGA

Page 6: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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 memoria compartida

Page 7: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

I) Estáticas (pizarrón) II) Dinámicas

4

Redes de interconexión

Topologías para pasaje de mensajes

Page 8: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Redes de interconexión

Topologías estáticas para pasaje de mensajes4-cube 7-cube

Page 9: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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.

Page 10: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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.

Page 11: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Redes de interconexión

Ejemplo 8 nodos

Page 12: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Análisis de performance enArquitecturas 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

Page 13: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

ξ=1

ξ=Sn

S=t s

tm

Equal duration model

Fractional communication overhead

Definición de mejora y eficiencia

Page 14: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Serial section model

Page 15: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional
Page 16: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Serial section model

with communication overhead

Page 17: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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)

SS

1

n

1f

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

f+(1− f )

n×n

lim SS( n)n →∞=∞

S

SS

S (n )=n

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

Page 18: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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"

Page 19: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

S=t1

tn

=t s +t p

t s+t p

n+tc

DISCUSIÓN: Expresión general de la mejora

Donde tanto ts como tc dependen de n

Page 20: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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=

1S−

1n

1−1n

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

Page 21: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

Escalabilidad

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

S=m

mn

+2 log2 n

Mejora (hacia 4): escalable

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

Page 22: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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');

S=m

mn

+2 log2 n

Page 23: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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

mn

+2 log 2 n

Page 24: Arquitecturas Paralelas: Redes de interconexión y …electro.fisica.unlp.edu.ar/arq/transparencias/ARQII_07-Paralelo... · Topologías estáticas para pasaje de mensajes Three-dimensional

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.

NUEVO: La isoeficiencia es la capacidad del sistema de mantener la eficiencia constante cuando aumenta el número de procesadores.

e=incremento del tamaño del problema

incremento de n para rendimiento constante