Вы находитесь на странице: 1из 62

Arquitecturas Avanzadas Horas 5 5 7

Curso 10/11

1 INTRODUCCIN

2 CONECTIVIDAD
3 MQUINAS MIMD 4 MQUINAS SIMD 5 SUPERESCALARES

2
4

arqAva

Temario

Conectividad-2

2 CONECTIVIDAD 1 Introduccin

Interconnection Networks. An engineering Jos Duato y - 2003 [Captulos 1 y 2] Principles and Practices of Interconnection ... William James Dally y - 2004 [Cap: 1,2,3,22]

2 Conceptos 1 Clasificacin de las redes 2 Caracterizacin por Grafos 3 Perfiles de comunicacin 3 Redes de medio de transmisin compartido (Buses) 4 Redes directas (estticas ) 1 Encaminamiento 2 Array lineal, anillo, ..., hipercubo 5 Redes indirectas (dinmicas) 1 Crossbar, redes multietapa ()

arqAva

Introduccin

Conectividad-3

QUEREMOS MS VELOCIDAD: A menor Grano, mayor Grado TAREA P1 P2 P3

P4

P5

! AUMENTAN LAS NECESIDADES DE COMUNICACIN !

arqAva

Introduccin

Conectividad-4

Comunicacin Hw <===> Comunicacin Sw Memoria Comn (Load/Store) Comunicar Pi y Memoria P1 P2 Pi RED M1 Mj Mk Pn Paso Mensajes (Send/Receive) Comunicar Pi con Pj P1 P2 Pi Pn

RED

Es muy importante la Latencia y el Ancho de banda

arqAva

Introduccin
http://www.euroben.nl/reports/overview09.pdf

Conectividad-5

Coste * 50
Gigabit Ethernet 0,1 10..40

LA RED TIENE UNA IMPORTANCIA VITAL !

arqAva

Introduccin

Conectividad-6

Sistema Placa ChipMulticore

LAN WAN

arqAva

Introduccin

Conectividad-7

Sistema

27 nodos

www.sicortex.com SC5832 Placa Chip

36 placas

6 ncleos

arqAva

Introduccin

Conectividad-8

72 ncleos 96GB 100GF => 19.000

27/Mayo/2009: Quiebra

arqAva

Introduccin

Conectividad-9

LAN/WAN Internet Millones de nodos # Nodos dinmico Enlaces largos Red irregular Latencia alta

Multiprocesadores Cientos .. Miles Fijo Cortos Regular Baja

arqAva

Conceptos CLASIFICACIN DE LAS REDES

Conectividad-10

MEDIO DE TRANSMISIN COMPARTIDO DIRECTAS vs INDIRECTAS

TOTAL vs PARCIALMENTE CONECTADAS

CARACTERIZACIN POR GRAFOS


GRADO Y DIMETRO

PERFILES DE COMUNICACIN

1 => 1; N => N; 1 => N; N => 1

arqAva

Clasificacin de las Redes

Conectividad-11

Medio de Transmisin Compartido: Ponerse de acuerdo en su uso (maestro/esclavo, )


Redes locales Redes inalmbricas P1 Buses (Backplane) P2 Pi Pn

Ethernet

M1
Token Ring

Mj

Mk

Sncronos vs asncronos Multiplexados Arbitraje del bus

arqAva

Clasificacin de las Redes

Conectividad-12

Redes directas: Conexiones fijas entre los elementos (Pi, Pj) invariables durante la ejecucin
P1 P2 Acoplamiento dbil Amplio uso en multicomputadores

P4

P3

Los propios Nodos encaminan Los caminos del origen al destino pueden ser distintos

arqAva

Clasificacin de las Redes

Conectividad-13

Redes indirectas: Conexiones varan entre los elementos (Pi, Mj) variables durante la ejecucin
P1 P2 Pi
RED M1 Mj Mk Red Telefnica Acoplamiento fuerte Amplio uso en multiprocesadores Encamina la propia red

Pn

arqAva

Clasificacin de las Redes

Conectividad-14

Totalmente conectadas: Cada elemento tiene conexin


directa con los dems

Parcialmente conectadas:
conexas !

Latencia mnima (Lm)


Alto coste O(n2) No escalable

Mayor latencia (2Lm)


Menor coste O(n) Encaminar ms complejo

Jerarquizadas: Aislar trfico por localidades

arqAva

Caracterizacin por Grafos

Conectividad-15

Nodos => P y/o Bancos de Memoria Aristas => Enlaces de comunicacin

Grado de un nodo: Lneas incidentes (Si unidireccionales Ge + Gs)


4 2 C B D2 E3

A1

Relacionado con el nmero de puertos E/S y, por lo tanto, con el coste

Deseable constante y pequeo

Grado de la red: El del nodo con mayor grado (4) Deseable regularidad Compromiso en el Grado
Menor conectividad => Ms latencia Menor coste Ms conectividad => Menor latencia Mayor coste

arqAva

Caracterizacin por Grafos

Conectividad-16

Dimetro de la red: Camino ms distante de entre los mnimos que unen a dos nodos cualesquiera.
Mtrica => Nmero de saltos => 2

1, 2, 3, ......?

5? => 2, 5, 4, 8, 7, 6 4 => 2, 5, 4, 3, 6 ms corto

Relacin directa con la latencia


6 7 8 9

arqAva

Perfiles de Comunicacin

Conectividad-17

Enlaces de comunicacin establecidos concurrentemente.


1 => 1 Ventanilla nica N => N Varias Ventanillas

Bus Comn 1 => N T.V. News N => 1 Reduccin

Difusin, Broadcast, Multicast

Mquinas CRCW

arqAva P1
$

Redes Medio Compartido (Bus I) P2


$

Conectividad-18

Pi
$

Pn
$

Cuntos Pi podr instalar?

Pentium 4 a 3,8GHz Bus de 64 bits y 800MHz Un nico Pi satura el Bus?


$

M1

Mj

Mk

Cachs !

98% Hit
Pn

Algunos problemas !
colisiones
Fallo costoso

P2 P1

Soluciones ?

arqAva Redes Medio Compartido (Bus II) Conectividad-19 Bus pipelining Write Read
Pedir bus Arbitrar Dar bus Usar bus
1 2 3 4 5 AR ARB AG RQ ACK 1 2 3 4 AR ARB AG RQ 5 6 P RPLY

Cuntos ciclos 2W y 4R?

Con pipeline mejor


read 1 write 2 write 3 read 4 read 5 read 6 bus ocupado
1 2 3 4 5 6 7 8 9 10 11 AR ARB AG RQ P RPL AR ARB AG Stall Stall RQ ACK AR ARB Stall Stall AG Stall RQ ACK AR Stall Stall ARB Stall AG Stall RQ AR Stall ARB Stall AG AR Stall ARB 12 13 14 15 16 17

P RPL RQ P RPL AG Stall Stall RQ

P RPL

arqAva Redes Medio Compartido (Bus III) Conectividad-20 Split transaction: Pipelining + Dividir la transaccin en dos
1
read resp write ack write ack read resp read resp read resp 1 1 2 2 3 3 4 4 5 5 6 6

10

11

12 13

14

15

16

17

AR ARB AG RQ AR ARB AG RPL AR ARB AG RQ Mejora ? AR ARB AG ACK AR ARB AG RQ AR ARB AG ACK AR ARB AG RQ AR ARB AG RPL AR ARB Stall Stall Stall Stall AG RQ AR ARB AG RPL AR ARB Stall Stall Stall Stall AG RQ AR ARB AG RPL 3 4 5 6 7 8 9 RpA RqB 10 RpB 11 12 13 14

1 2 RqA

Transacciones variables: 1..6 ciclos


RqA
RqB RpB

RqC

RpC

PCI Express USB

RpA

8 peticiones pendientes en SGI 112 peticiones pendientes en SUN E 6000

RqC

RpC

arqAva Redes Medio Compartido (Bus IV) Conectividad-21 Modo rfaga (Burst): Transacciones largas (lnea de cach)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 Arb Arb Arb Arb Cmd Dir Dato Cmd Dir Dato Cmd Dir Dato Cmd Dir Dato

Normal
Arb Cmd Dir Dato Dato Dato Dato

Inconveniente ?

Rfaga

arbitraje mensaje A mensaje B

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 GrA GrB ReA Cmd Dir Dato Dato Dato Dato Eti Dato Dato Dato Dato Cmd Dir Dato

Mensaje ms prioritario

Mensaje continuado

arqAva Redes Medio Compartido (Bus V) Conectividad-22 Buses jerrquicos

Buses mltiples

Concluyendo Cachs (L1, L2 y L3) Pipelining Split Transaction Modo rfaga Buses Jerrquicos Buses Mltiples Muy costoso + 32P

Difusin Serializacin Frecuencia Secuencial

arqAva Generalidades

Redes directas

Conectividad-23

Encaminamiento Menor dimetro aumentando el grado Array lineal Anillo simple y de grado n Conectividad total Compromiso grado vs dimetro y muchos nodos rbol, Fat Tree y Estrella Mallas y Toroides Hipercubo con y sin ciclo Tabla de parmetros

arqAva

Redes directas (Generalidades)


De otros nodos

Conectividad-24
A otros nodos

MultiC ms integrado
P M P M

IC

IC
Switch Pn
Transputer Buffers Arbitraje Encamina.

Red con enlaces directos entre Pi

L2

IC

Nodos => PCs o similares Ejemplos: Alpha 21364, SiCortex, Intel Core i7, AMD Istanbul

arqAva

Redes directas (P 21364)

Conectividad-25

arqAva

Redes directas ( Toro2D 21364 )

Conectividad-26

.. 10GBseg 15nseg Lat

.. 128 nodos [8x16] .. 4 TB MP 12 dimetro

arqAva

Redes directas (P SiCortex)

Conectividad-27

500MHz

2GBseg 1seg Lat

www.sicortex.com

arqAva

Redes directas (P SiCortex) Kautz Graph

Conectividad-28

arqAva

Redes directas (Intel Core i7)

Conectividad-29

19,2..25,6 GBseg

www.intel.com/technology/quickpath/introduction.pdf

arqAva

Redes directas (Intel Core i7)

Conectividad-30

arqAva

Redes directas (AMD Istanbul) Conectividad-31

..51,2 GBseg

arqAva

Encaminamiento (Modos)

Conectividad-32

Mecanismo Hw/Sw para que la informacin llegue del origen al destino. Hay que distinguir entre: Algoritmo: Eleccin del camino y gestin de conflictos Tcnica: Modo de propagar la informacin
Conmutacin de paquetes
3 4

Conmutacin de circuitos

Redes directas

Redes indirectas

arqAva 8x8 = 64 nodos Dimetro = 7+7=14 Numerar nodo 0..63

Encaminamiento (Algoritmo)
0,0 fila col 0..7 0..7 1,0 2,0 3,0 4,0 5,0 6,0 7,0 0,1 0,2 0,3 0,4

Conectividad-33
0,5 0,6 0,7

D
A C

Distribuido: A[2,3] => B[5,1]


E datos L 5,1

Algo: MovCol+MovFila
En origen: C[3,4] => D[1,6]
E datos L .,NN,E,E 5,1

E datos L .,NN,E 5,1

N[00], E[01], S[10], O[11]

arqAva

Encaminamiento (wormhole)

Conectividad-34

En conmutacin de paquetes veremos dos tcnicas: Almacenamiento y reenvo


Origen
Buffer de paquete

Destino

210

210

Los mensajes se dividen en paquetes (64..1024bits) y se envan paquete a paquete

Elevada latencia (3*Tiempo trans. Paquete Ttp) Wormhole


Origen
Buffer de flit

Destino

0 1 2

0 1 2

0 1

Los paquetes se dividen en flits (2..32 bits) y se envan flit a flit

Mejora la latencia (2*Tiempo trans. Flit + Ttp)

Similar a IP/ATM MPLS?

arqAva

Encaminamiento (ejemplo)

Conectividad-35

Almacena y Reenvo Latencia


Toro2D 8*16 Alpha 21364 Dimetro = 12 Flit = 39 b Paquete = 702b Ancho Banda = 3,2Gb*seg Tflit = 12,1875nseg Tpaq = 219,375nseg AlmaReen => 2.632,5 nseg Wormhole => 353,4 nseg

+ 7 veces mejor

Wormhole

Distancia

arqAva

Encaminamiento (Interbloqueo) C D A
D B D

Conectividad-36

B
D

Interbloqueo !
C D
A B A

C A

arqAva

Encaminamiento (Canales virtuales) Conectividad-37

B A

Una forma de evitar el interbloqueo

arqAva

Redes directas (array, anillo)

Conectividad-38

Grado, dimetro, escalable, ARRAY LINEAL


0 1 2 3 4 5 6 7

ANILLO (DE GRADO 2)


0 1 2

ANILLO (DE GRADO n 3)


0 1 2

6 4

3 5

6 4

3 5

arqAva N=8 n=3


Salto 2 1

Redes directas (anillo de grado n)

Conectividad-39

Salto 3 1 1 2 3 2

Salto 4 1 2 2 1 1 2

2 2 3

2
1

d = 3, d = 1,71

d = 3, d = 1,71

d = 2, d = 1,57

arqAva N = 16 n = 3
Salto 2

Redes directas (anillo de grado n)

Conectividad-40

Salto 3

Salto 4

d = 6, d = 3,2

d = 5, d = 2,67 Salto 5 iguala y 7 y 8 empeoran

d = 4, d = 2,27

arqAva N = 16 n = 4
Salto 3

Redes directas (anillo de grado n)

Conectividad-41

Salto 4

Salto 5

d = 4, d = 2,13

d = 3, d = 2 Cmo podra ser N=32 y n=5?

d = 4, d = 2,13

arqAva N = 32 n = 5

Redes directas (anillo de grado n)

Conectividad-42

Escalable ?

d = 4, d = ???

arqAva

Redes directas (conexin total)

Conectividad-43

Grado, dimetro, escalable,


0 7 6 1 2

arqAva

Redes directas (Grfica)

Conectividad-44

70 60 50 40 30 20 10 0 0 20 40 # Nodos 60
Moverse por aqu con menor grado

Array Anillo Anillo "n" Total

Dimetro

arqAva

Redes directas (rbol, )

Conectividad-45

Grado, dimetro, escalable, RBOL BINARIO


K=0 2 K=1 K=2 K=3

RBOL BINARIO EQUILIBRADO Fat Tree


4 2 2

ESTRELLA

Cuello de botella [trfico aleatorio] Cmo encaminar A B?

arqAva

Redes directas (malla)

Conectividad-46

Grado, dimetro, escalable, MALLA 2D


K=1 K=2 O(1,1,1) D(3,3,3) K=3

MALLA 3D

O(2,2,1)

D(3,3,2)

Encaminamiento ordenado por direcciones

Colisin!

M3D 512 8*8*8 => D=21


Escalabilidad cuadrtica o cbica?

Interbloqueos ?
Cuello de botella?

arqAva

Redes directas (malla3D)


18

Conectividad-47

Cuello de botella trfico NN?


18 18 18 18 18 18 18 18 18

18

18

18 msj por todos los enlaces en cada sentido !

arqAva

Redes directas (toroide)

Conectividad-48

Grado, dimetro, escalable,

TOROIDES (2D y 3D)


K=1

K=2

T3D 512 8*8*8 => D=12


Anillo embebido !

arqAva

Redes directas (hipercubo)

Conectividad-49

HIPERCUBO N=2k nodos, k dimensiones = log2 N


Dim3 Dim1 Dim2

Dimetro = log2 N

Grado = log2 N
Fcil encaminar
Dim4

Escalable a costa de demasiado grado Topologa cada vez menos utilizada

arqAva

Redes directas (hipercubo)

Conectividad-50

Encaminamiento en HIPERCUBO (Sea N=16)


3 1 4 4321 0110 1111 0010 1010 0011 0111

1.

Numerar nodos en binario. Nodos adyacentes difieren en un bit (el asociado a la direccin que les une) Enviar mensaje por el enlace asociado a la menor direccin donde no coinciden bit del nodo actual y bit del nodo destino

2.

1000
0100 0101

Realizar ORX ?

0111 ORX 1010 = 1101


0000 0001

Nodo actual

0111

0110 1010

0010 1010

1010 1010

Nodo destino 1010

arqAva

Redes directas (hipercubo con ciclos)

Conectividad-51
K=3

Grado, dimetro, escalable, HIPERCUBO CON CICLOS 1 0 1 1

2 3

2
2 Dimetro ? 2

4
4

3
3 4 4

3
5 5

4
6

arqAva

Redes directas (Grafo de Kautz)

Conectividad-52

arqAva

Redes directas (Un ejemplo)

Conectividad-53

Cmo conectar unos 512 nodos?

Topologa Dimetro Grado M3D 8*8*8 21 6* T3D 8*8*8 12 6 Hipercubo 9 9 9


384 N HiperCiclo 6 896 N HiperCiclo 7 972 N Grafo Kautz 14 16 6 3 3 3 T3D 8*8*6 T3D 10*10*9 11 14 6 6

5832 ncleos

arqAva

Redes directas (Tabla de Parmetros) Conectividad-54

Topologa
Array lineal Anillo Anillo de grado n rbol binario rbol binario equilibrado Estrella Malla Toroide Hipercubo Hipercubo con ciclos

N de nodos
N N N 2K-1 2K-1 N nK nK 2K K*2K

Grado
2 2 n=log2N 3 2K N-1 2*K 2*K K 3

Dimetro
N-1 N/2 n-1 2*(K-1) 2*(K-1) 2 K*(n-1) K* n/2 K 2*K - 1 + K/2

arqAva

Perspectiva histrica

Introduccin-55

MIMD HWANG (1993) IDENTIFICA TRES GENERACIONES:


1983-1987
1988-1992 1993-1997

Hipercubo con Encaminamiento Sw


Malla con Encaminamiento Hw (Sw de grano medio) P y comunicaciones en el mismo chip (grano fino)

2010?

Multiprocessor systems-on-chips (MPSoCs) Niagara Hoy 4..8 ncleos .. 64 en 2010 .. Se llegar a 1.000?

Conexin interna? Simil con intracluster

arqAva
P1 P2

Redes indirectas (Barras cruzadas) Conectividad-56

Perfil N*M O (N2) Crossbar

P3

Pn

M1

M2

M3

Mm

Funcionalidad de los conmutadores simples:

Muchas patas 8x8 onChip rea 5 ncleos Wat 2 ncleos

colisin

difusin

arqAva

Redes indirectas (Multietapa)

Conectividad-57

crossbar 8*8

O (64) Perfil 8*8 Latencia 1

Reducir O( N2) a costa de ?

Usar slo crossbar 2*2

directo

cruce

difusin

colisin

etapa 1 etapa 2 etapa m

Red de interconexin Conjunto de crossbar 2*2

arqAva

Redes indirectas (Red )

Conectividad-58

Red de interconexin perfect Suffle Limitado a N = potencia de 2


Colisin

000 001 010 011 100 101 110 111

000

001
010
001 010

001

001 010 011 100 101 110 111

010

Encaminamiento?
Sea de 001 a 010

Bit igual => directo Mejorable? Bit distinto => cruce

Latencia y O( ) ?

arqAva

Redes indirectas (Red )

Conectividad-59

000
001 010 011

000
001 010 011

100
101 110 111

100
101 110 111

Permite difusin !

arqAva

Redes indirectas (Tabla de parmetros) Conectividad-60


Bus Latencia Complejidad Conmuta. Perfil de Comunicacin Cte N 11 Multietapa Crossbar Log2N*cte 2 N log2N NN (*) cte N2 NN

BUS CROSSBAR MULTIETAPA

Barato y limitado 2..32 Ms caro. Bueno para N moderado Mayor ancho de banda y fcil encaminar Compromiso entre Bus y Crossbar

arqAva

Implantacin en el mercado (Julio/2009) Conectividad-61 http://www.euroben.nl/reports/ #NODOS TIPO DE RED SUPERCOMPUTADOR


..N ..248 ..192*N ..128 ..32 ..64 ..512 ..N ..221184 ..1024 ..32 ..8192 ..512 Configurable Red Clos Toro 3D Crossbar Crossbar Crossbar Crossbar multidim. Configurable Toro 3D y rbol Configurable Crossbar Crossbar multidim. Fat tree Bull NovaScale C-DAC PARAM Padma Cray Inc. XT5 Fujitsu/Siemens M9000 Fujitsu/Siemens PRIMEQUEST Hitachi BladeSymphony Hitachi SR 16000 IBM eServer p575 IBM BlueGene/L&P IBM System Cluster 1350 NEC Express5800/1000 NEC SX-9 SGI Altix 4000

intercluster

arqAva

Redes en Top500

Conectividad-62

48,4%

6,0%
41,4%

FIN

Вам также может понравиться