Arquitecturas ParalelasCurso 13/14
description
Transcript of Arquitecturas ParalelasCurso 13/14
![Page 1: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/1.jpg)
Arquitecturas Paralelas Curso 14/15
1 INTRODUCCIÓN
2 CONECTIVIDAD
3 MÁQUINAS MIMD
4 MÁQUINAS SIMD y SIMT
5 SUPERESCALARES
Horas
5+…
6
7
6
5
![Page 2: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/2.jpg)
arqPar Temario Conectividad-2
2 CONECTIVIDAD
1 Introducción
2 Conceptos1 Clasificación de las redes2 Caracterización por Grafos3 Perfiles de comunicación
3 Redes de medio de transmisión compartido (Buses)
4 Redes directas (estáticas )1 Encaminamiento2 Array lineal, anillo, ..., hipercubo
5 Redes indirectas (dinámicas)1 Crossbar, redes multietapa ()
“Interconnection Networks. An engineering…” José Duato y …- 2003 [Capítulos 1 y 2]
“Principles and Practices of Interconnection ...” William James Dally y … - 2004 [Cap: 1,2,3,22]
![Page 3: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/3.jpg)
arqPar Introducción Conectividad-3
QUEREMOS MÁS VELOCIDAD:A menor Grano, mayor Grado
µP1TAREA µP2 µP3
µP4 µP5
! AUMENTAN LAS NECESIDADES DE COMUNICACIÓN !
![Page 4: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/4.jpg)
arqPar Introducción Conectividad-4
Comunicación Hw <===> Comunicación Sw
Memoria Común (Load/Store)
Comunicar µPi y Memoria
Paso Mensajes (Send/Receive)
Comunicar Pi con Pj
µP1 µP2 µPi µPn
R E D
M1 Mj Mk
P1 P2 Pi Pn
R E D
Es muy importante la Latencia y el Ancho de banda
![Page 5: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/5.jpg)
arqPar Introducción Conectividad-5
¡ LA RED TIENE UNA IMPORTANCIA VITAL !
http://www.euroben.nl/reports/overview13.pdf
Gigabit Ethernet 0,1 29..120
Coste*
50
¿Consumo?
![Page 6: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/6.jpg)
arqPar Introducción Conectividad-6
¡ LA RED TIENE UNA IMPORTANCIA VITAL !
2005: 30% consumo energía dinámica del chip y subiendo
2010: 2,2 Km/cm2 de cables dentro de un MPSOC
![Page 7: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/7.jpg)
LAN
WAN
arqPar Introducción Conectividad-7
SistemaPlacaChipMulticore
![Page 8: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/8.jpg)
arqPar Introducción Conectividad-8
Sistema
Placa Chip
www.sicortex.com SC583227 nodos 36 placas
6núcleos
![Page 9: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/9.jpg)
arqPar Introducción Conectividad-9
72 núcleos 96GB 100GF => 19.000€
27/Mayo/2009: Quiebra
![Page 10: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/10.jpg)
arqPar Introducción Conectividad-10
Tom Willis Sep/2007Intel Connects Cables
IBM Sequoia
#2 Nov/121.572.864
nodos
![Page 11: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/11.jpg)
arqPar Introducción Conectividad-11
• LAN/WAN Internet • Multiprocesadores …
Millones de nodos Cientos .. Miles
# Nodos dinámico Fijo
Enlaces largos Cortos
Red irregular Regular
Latencia alta Baja
![Page 12: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/12.jpg)
arqPar Conceptos Conectividad-12
• CLASIFICACIÓN DE LAS REDES
– MEDIO DE TRANSMISIÓN COMPARTIDO
– DIRECTAS vs INDIRECTAS
– TOTAL vs PARCIALMENTE CONECTADAS
• PERFILES DE COMUNICACIÓN
– 1 => 1; N => N; 1 => N; N => 1
• CARACTERIZACIÓN POR GRAFOS
– GRADO Y DIÁMETRO
![Page 13: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/13.jpg)
arqPar Clasificación de las Redes Conectividad-13
• Medio de Transmisión Compartido: Ponerse de acuerdo en su uso (maestro/esclavo, …)
• Síncronos vs asíncronos
• Multiplexados
• Arbitraje del bus
Redes locales
Ethernet
Token Ring
µP2 µPi µPn
Mj Mk
Buses (Backplane)
µP1
M1
Redes inalámbricas
![Page 14: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/14.jpg)
arqPar Clasificación de las Redes Conectividad-14
• Redes directas: Conexiones fijas entre los elementos (Pi, Pj) “invariables durante la ejecución”
P1
P4
P2
P3
•Acoplamiento débil
•Amplio uso en multicomputadores
•Los propios Nodos encaminan
•Los caminos del origen aldestino pueden ser distintos
![Page 15: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/15.jpg)
Red Telefónica
arqPar Clasificación de las Redes Conectividad-15
• Redes indirectas: Conexiones varían entre los elementos (µPi, Mj) “variables durante la ejecución”
•Acoplamiento fuerte
•Amplio uso en multiprocesadores
•Encamina la propia red
µP1 µP2 µPi µPn
R E D
M1 Mj Mk
![Page 16: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/16.jpg)
arqPar Clasificación de las Redes Conectividad-16
• Totalmente conectadas: “Cada elemento tiene conexión directa con los demás”
• Parcialmente conectadas:¡ conexas !
• Jerarquizadas: Aislar tráfico por “localidades”
Latencia mínima (Lm)
Alto coste O(n2)
No escalable
Menor coste O(n)
Mayor latencia (2Lm)
Encaminar máscomplejo
![Page 17: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/17.jpg)
arqPar Caracterización por Grafos Conectividad-17
Nodos => µP y/o Bancos de Memoria
Aristas => Enlaces de comunicación
•Grado de un nodo: Líneas incidentes (Si unidireccionales Ge + Gs) •Relacionado con el número de puertos E/S
y, por lo tanto, con el coste
•Deseable constante y pequeño
•Grado de la red: El del nodo con mayor grado (4)
•Deseable regularidad
•Compromiso en el Grado
Más conectividad => Menor latenciaMayor coste
Menor conectividad => Más latenciaMenor coste
1
2
3
42
AB
C D
E
![Page 18: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/18.jpg)
arqPar Caracterización por Grafos Conectividad-18
•Diámetro de la red: Camino más distante de entre los mínimos que unen a dos nodos cualesquiera.
•Relación directa con la latencia
¿1, 2, 3, ......?•Métrica => Número de saltos => 2
1
4
76
5
9
2
8
3
¿5? => 2, 5, 4, 8, 7, 6
4 => 2, 5, 4, 3, 6 más corto
![Page 19: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/19.jpg)
arqPar Perfiles de Comunicación Conectividad-19
•Enlaces de comunicación establecidos concurrentemente.
1 => 1 Ventanilla única
Bus Común
N => N Varias Ventanillas
T.V. News1 => N
Difusión, Broadcast, Multicast
ReducciónN => 1
Máquinas CRCW
![Page 20: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/20.jpg)
arqPar Redes Medio Compartido (Bus I) Conectividad-20
µP1
M1 Mj Mk
µP2 µPi µPn ¿Cuántos Pi podré instalar?
Pentium 4 a 3,8GHzBus de 64 bits y 800MHz
¿Un único Pi satura el Bus?
$ $ $ $
$ ¡ Cachés !
µP2
µPn¡ Algunos problemas !
Fallo costoso
µP1
98% Hit
colisiones
¿ Niveles cache ?
![Page 21: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/21.jpg)
arqPar Redes Medio Compartido (Bus II) Conectividad-21
• ¿ Cuánto hit en cache “ld” ?
Simulación con:• PTLsim/X arquitectura tipo x86-64• L1D = 16KB [128 conjuntos, 4 vías]• SPEC CPU2006• 400 millones de instrucciones simuladas
Benchmark Benchmark
L1D
L2
L3
88,3
65,2
22,7
L* 98,0
%Hit
16K
256K
4M
L1I 32K => 99,5%
![Page 22: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/22.jpg)
arqPar Redes Medio Compartido (Bus III) Conectividad-22
µP1
M1 Mj Mk
µP2 µPi µPn
L L L L
Shared L3 cache
L3 cache controler
Shared Bus
Shared L2 cache
L2 cache controler
Shared Bus
¿ Soluciones ?
![Page 23: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/23.jpg)
arqPar Redes Medio Compartido (Bus IV) Conectividad-23• Bus pipelining
Pedir busArbitrarDar busUsar bus
AR ARB AG RQ ACK1 2 3 4 5
AR ARB AG RQ P1 2 3 4 5 6
RPLY
Write Read
¿Cuántos ciclos 2W y 4R?
read 1write 2write 3read 4read 5read 6bus ocupado
AR ARB AG RQ RPLAR ARB AG Stall
PStall RQ ACK
AR ARB Stall Stall AG Stall RQ ACKAR Stall Stall ARB Stall AG Stall RQ RPLP
AR Stall ARB Stall AG RQ RPLPAR Stall ARB AG Stall Stall RQ RPLP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Con pipeline mejor
?
![Page 24: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/24.jpg)
arqPar Redes Medio Compartido (Bus V) Conectividad-24• Split transaction: Pipelining + Dividir la transacción en dos
8 peticiones pendientes en SGI
112 peticiones pendientes en SUN E 6000
read 1resp 1write 2ack 2write 3ack 3read 4resp 4read 5resp 5read 6resp 6
AR ARB AG RQ
AR ARB AGStall Stall RQStall Stall
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
RPLAR ARB AGAR ARB AG RQ
ACKAR ARB AGAR ARB AG RQ
ACKAR ARB AGAR ARB AG RQ
RPLAR ARB AG
RPLAR ARB AGAR ARB AGStall Stall RQStall Stall
RPLAR ARB AG
RpARqARqB
RqCRpB
RpC
¿ Mejora ?
RqA 1 2 3 4 5 6 7 8 9 10 11 12 13 14
RpARqB RpB
RqC RpCTransaccionesvariables: 1..6 ciclos
![Page 25: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/25.jpg)
arqPar Redes Medio Compartido (Bus VI) Conectividad-25• Modo ráfaga (Burst): Transacciones largas (línea de caché)
Normal
Arb 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Cmd Dir DatoArb
Cmd Dir DatoArb
Cmd Dir DatoArb
Cmd Dir Dato
ArbCmd Dir Dato Dato Dato Dato
Ráfaga¿ Inconveniente ?
arbitrajemensaje Amensaje B
GrA 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Cmd Dir Dato Dato Dato DatoGrB
Cmd Dir Dato
ReAEti Dato Dato Dato Dato
Mensaje más prioritario
Mensaje continuado
![Page 26: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/26.jpg)
arqPar Redes Medio Compartido (Bus VII) Conectividad-26• Buses jerárquicos
• Buses múltiples Concluyendo Cachés (L1, L2 y L3) Pipelining Split Transaction Modo ráfaga Buses Jerárquicos Buses Múltiples Muy costoso + 32µP
DifusiónSerialización
FrecuenciaSecuencial
![Page 27: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/27.jpg)
arqPar Redes Medio Compartido (Bus VIII) Conectividad-27
• Evolución FSB Intel
![Page 28: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/28.jpg)
Menor diámetro aumentando el grado
Compromiso grado vs diámetro y muchos nodos
Tabla de parámetros
arqPar Redes directas Conectividad-28
Encaminamiento
Generalidades
• Array lineal• Anillo simple y de grado “n”• Conectividad total
• Árbol, Fat Tree y Estrella• Mallas, Toroides y WK-rec• Hipercubo con y sin ciclo
![Page 29: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/29.jpg)
P M
IC
Red con enlaces directos entre Pi
P M
IC
P M
IC
Nodos => PC’s o similares
Pn L2
Switch
MultiC más integradoDe otros
nodosA otros nodos
arqPar Redes directas (Generalidades) Conectividad-29
Ejemplos: Alpha 21364, SiCortex, Intel Core i7 y SCC
• Buffers• Arbitraje• Encamina.
![Page 30: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/30.jpg)
arqPar Redes directas (P 21364) Conectividad-30
![Page 31: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/31.jpg)
arqPar Redes directas ( Toro2D 21364 ) Conectividad-31
.. 10GBseg15nseg Lat
.. 128 nodos [8x16].. 4 TB MP12 diámetro
![Page 32: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/32.jpg)
www.sicortex.com
500MHz
2007
arqPar Redes directas (P SiCortex) Conectividad-32
2GBseg1µseg Lat
![Page 33: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/33.jpg)
arqPar Redes directas (P SiCortex) Conectividad-33
Kautz Graph
![Page 34: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/34.jpg)
www.intel.com/technology/quickpath/introduction.pdf
2008
arqPar Redes directas (Intel Core i7…) Conectividad-34
19,2..25,6 GBseg
![Page 35: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/35.jpg)
arqPar Redes directas (Intel Core i7…) Conectividad-35
![Page 36: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/36.jpg)
arqPar Redes directas (Intel Xeon E5…) Conectividad-36
2012
![Page 37: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/37.jpg)
arqPar Redes directas (Intel SCC …)Conectividad-37
• Mayo 2010: Intel lanza de forma selectiva el SCC [prototipo]
48 IA-32núcleos
Memoria común sin coherencia Sw
http://techresearch.intel.com/spaw2/uploads/files/SCC_Platform_Overview.pdf
64 GBseg
![Page 38: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/38.jpg)
arqPar Redes directas (Intel SCC …)Conectividad-38
• Nov 2012: Intel lanza el coprocesador Xeon Phi (60/61 núcleos)
70 GBseg
![Page 39: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/39.jpg)
arqPar Redes directas (Epiphany-16 …) Conectividad-39
• Jul 2014: Sale a la venta masiva la placa “Parallella Epiphany-16”
onChip WriteNetwork
offChip WriteNetwork
Read RequestNetwork
8B / ciclo
1B / ciclo1R / 8 ciclos
38,4Gbps
4,8Gbps
2,4Gbps
![Page 40: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/40.jpg)
arqPar Redes directas (Epiphany-16 …) Conectividad-40
• Jul 2014: Sale a la venta masiva la placa “Parallella Epiphany-16”
![Page 41: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/41.jpg)
arqPar Encaminamiento (Modos) Conectividad-41
•Mecanismo Hw/Sw para que la información llegue del origen aldestino.
Hay que distinguir entre:Algoritmo: Elección del camino y gestión de conflictosTécnica: Modo de propagar la información
1
4
76
5
9
2
8
3
Conmutación de paquetes
Redes directas
Conmutación de circuitos
Redes indirectas
![Page 42: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/42.jpg)
arqPar Encaminamiento (Algoritmo)Conectividad-42
8x8 = 64 nodosDiámetro = 7+7=14Numerar nodo 0..63
fila col
0..7 0..7
0,0 0,1 0,2 0,70,3 0,4 0,5 0,6
1,0
2,0
7,0
3,0
4,0
5,0
6,0
A
B
• Dinámico: A[2,3] => B[5,1]
E datos L 5,1
Algo: MovCol+MovFila
C
D
• En origen: C[3,4] => D[1,6]
E datos L 1,6,N,N,E,E
E datos L 1,6,N,N,E
N[00], E[01], S[10], O[11]SiCortex, Intel QuickPath, Epiphany …
![Page 43: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/43.jpg)
arqPar Encaminamiento (Algoritmo)Conectividad-43
Epiphany-III
Dir Dato Ctrl 32 64 8
fila col dirMemLocal 6 6 20
Arbitraje Round RobinBroadcast
![Page 44: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/44.jpg)
arqPar Encaminamiento (wormhole) Conectividad-44
•En conmutación de paquetes veremos dos técnicas:
Buffer de paquete Los mensajes se
dividen en paquetes (64..1024bits) y se envían paquete a
paquete
Origen
Almacenamiento y reenvío
Destino
Elevada latencia (3*Tiempo trans. Paquete “Ttp”)
Origen
“Wormhole”
Destino
Mejora la latencia (2*Tiempo trans. Flit + Ttp)
Buffer de flit Los paquetes se
dividen en flits (2..64bits) y se envían flit a flit
2 1 0
0
0
01
1
012
2
012
¿Similar a IP/ATMMPLS?
![Page 45: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/45.jpg)
arqPar Encaminamiento (wormhole) Conectividad-45
Header Payload CRC8 864 20 | 10 | 5Flit Phit
![Page 46: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/46.jpg)
Distancia
Latencia
Almacena yReenvío
Wormhole
arqPar Encaminamiento (ejemplo) Conectividad-46
Toro2D 8*16 Alpha 21364Diámetro = 12Flit = 39 b Paquete = 702bAncho Banda = 3,2Gb*segTflit = 12,1875nsegTpaq = 219,375nsegAlmaReen => 2.632,5 nsegWormhole => 353,4 nseg
+ 7 vecesmejor
![Page 47: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/47.jpg)
arqPar Encaminamiento (Interbloqueo) Conectividad-47
A B
C D
D
C
A
B
D
C
A
B
D
C
A
B
D
C
A
B
¡ Interbloqueo !
![Page 48: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/48.jpg)
arqPar Encaminamiento (Canales virtuales) Conectividad-48
AD
B
AD
B
AD
Una forma de evitar el
interbloqueo
![Page 49: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/49.jpg)
ARRAY LINEAL0 1 2 3 4 5 6 7
arqPar Redes directas (array, anillo) Conectividad-49
ANILLO (DE GRADO 2)
0 1
2
3
45
6
7
ANILLO (DE GRADO ‘n’ 3)
0 1
2
3
45
6
7
• Grado, diámetro, escalable, …
![Page 50: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/50.jpg)
arqPar Redes directas (array, anillo) Conectividad-50
“Navigation in a small world” – Jon M. KleinbergNature – 24 Agosto 2000
![Page 51: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/51.jpg)
N = 8 n = 3
arqPar Redes directas (anillo de grado “n”) Conectividad-51
Salto 3
1
1
1
22
2
3
d = 3, d = 1,71
Salto 2
1
1
1
3
2
22
d = 3, d = 1,71
Salto 4
1
2
1
1
2
2 2
d = 2, d = 1,57
![Page 52: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/52.jpg)
N = 16 n = 3
arqPar Redes directas (anillo de grado “n”) Conectividad-52
Salto 2
d = 6, d = 3,2
6
Salto 3
5
d = 5, d = 2,67
Salto 4
4
d = 4, d = 2,27
Salto 5 iguala y 7 y 8 empeoran
![Page 53: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/53.jpg)
N = 16 n = 4
arqPar Redes directas (anillo de grado “n”) Conectividad-53
d = 4, d = 2,13
4 3
d = 3, d = 2
Salto 5
4
d = 4, d = 2,13
¿Cómo podría ser N=32 y n=5?
Salto 3 Salto 4
![Page 54: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/54.jpg)
N = 32 n = 5
arqPar Redes directas (anillo de grado “n”) Conectividad-54
d = 4, d = ???
4
¿ Escalable ?
4
![Page 55: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/55.jpg)
arqPar Redes directas (conexión total) Conectividad-55
0 1
2
3
45
6
7
• Grado, diámetro, escalable, …
![Page 56: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/56.jpg)
arqPar Redes directas (Gráfica) Conectividad-56
0
10
20
30
40
50
60
70
0 20 40 60
# Nodos
Diá
met
ro
Array AnilloAnillo "n"Total
Moverse por aquícon menor grado
![Page 57: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/57.jpg)
K=1
K=2
K=3
K=4
ÁRBOL BINARIO
arqPar Redes directas (árbol, …) Conectividad-57
ÁRBOL BINARIO EQUILIBRADO
“Fat Tree”
2 2 2
2
4 4
• Grado, diámetro, escalable, …
• Cuello de botella [tráfico aleatorio]
¿Cómo encaminar A B?
ESTRELLA
![Page 58: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/58.jpg)
arqPar Redes directas (árbol, …) Conectividad-58
• Fat Tree ¡Indirectas!
¿Más nodos más niveles? => más latencia
32
16
88
![Page 59: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/59.jpg)
arqPar Redes directas (árbol, …) Conectividad-59
• Dragonfly “high radix routers”
local channels
36, 100 .. 64856Gb/s
![Page 60: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/60.jpg)
K=3
MALLA 3DMALLA 2D
K=1
K=2
arqPar Redes directas (malla)Conectividad-60
• M3D 102410*10*10 => D=27
• ¿Escalabilidad cuadrática o cúbica?
• Encaminamiento ordenado por direcciones
O(1,1,1)D(3,3,3)
O(2,2,1)D(3,3,2)
¡Colisión!
¿ Interbloqueos ?
• Grado, diámetro, escalable, …
¿ Cuello de botella?
![Page 61: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/61.jpg)
arqPar Redes directas (malla3D) Conectividad-61
• ¿Cuello de botella tráfico NN?18
18
18
18
18
18
18
1818
18
18
18
¡ 18 msj por todos los enlaces en cada
sentido !
![Page 62: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/62.jpg)
TOROIDES (2D y 3D)K=1
K=2
arqPar Redes directas (toroide) Conectividad-62
• T3D 102410*10*10 => D=15
• ¡ Anillo embebido !
• Grado, diámetro, escalable, …Cables largos vs cortosMuchos cruces
![Page 63: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/63.jpg)
arqPar Redes directas (WK-Recursivo) Conectividad-63
• Grado, diámetro, escalable, …
¿Grado 5?
Grado 3
(3,1) (3,2) (3,3)
Grado 4
(4,1) (4,2) (4,3)
![Page 64: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/64.jpg)
arqPar Redes directas (WK-Recursivo) Conectividad-64
(5,1) (5,2)
• WK (4,5) 1024 => D=31
Diámetro 1 3 7 15 31
Grado 3 3 9 27 81 243
Grado 4 4 16 64 256 1024
Grado 5 5 25 125 625 3125
![Page 65: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/65.jpg)
arqPar Redes directas (WK-Recursivo) Conectividad-65
• ¿Cuello de botella tráfico NN?
5 5
5 5
5
5
5
5
5
5
5
5
9 9
9 9
9 9
9 9
9 9
9 9
16
16
16 1616 16
![Page 66: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/66.jpg)
HIPERCUBO
Dim1 Dim2Dim3
Dim4
Diámetro = log2 N
Grado = log2 N
Fácil encaminar
arqPar Redes directas (hipercubo) Conectividad-66
‘N=2k’ nodos, ‘k’ dimensiones = log2 N
• Escalable a costa de demasiado grado• Topología cada vez menos utilizada
![Page 67: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/67.jpg)
Encaminamiento en HIPERCUBO (Sea N=16)
0001
0010
0100
1000
1
2
3
4
1. Numerar nodos en binario. Nodos adyacentes difieren en un bit (el asociado a la dirección que les une)
0000
4321
1010
1111
0101
01110110
0011
2. Enviar mensaje por el enlace asociado a la menor dirección donde no coinciden bit del nodo actual y bit del nodo destino
Nodo actual 0111
Nodo destino 1010
0110
1010
0010
1010
1010
1010
¿ Realizar ORX ?
0111 ORX 1010 = 1101
arqPar Redes directas (hipercubo) Conectividad-67
¿Caminos distintos?
![Page 68: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/68.jpg)
HIPERCUBO CON CICLOS
K=3
arqPar Redes directas (hipercubo con ciclos) Conectividad-68
• Grado, diámetro, escalable, …
¿ Diámetro ?
![Page 69: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/69.jpg)
arqPar Redes directas (Grafo de Kautz) Conectividad-69
![Page 70: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/70.jpg)
arqPar Redes directas (Un ejemplo) Conectividad-70• ¿Cómo conectar unos 1024 nodos?
M3D 10*10*10 27 6*T3D 10*10*10 15 6
Hipercubo 10 10 10
HiperCiclo 7 3896 N
Grafo Kautz 6 3972 N
16
WK 4ary 5rec 31 4*
M2D 32*32 62 4*
Árbol 18 3*
Topología Diámetro Grado
Total 1 1023
Anillo10 9 10
Anillo2 512 2
Array lineal 1023 2*
![Page 71: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/71.jpg)
Topología Grado DiámetroNº de nodos
Array lineal
Anillo
Anillo de grado ‘n’
Árbol binario
Árbol binario equilibrado
Estrella
Malla
Toroide
Hipercubo
Hipercubo con ciclos
N 2 N-1
N 2 N/2
N n=log2N n-1
2K-1 3 2*(K-1)
2K-1 2K 2*(K-1)
N N-1 2
nK 2*K K*(n-1)
nK 2*K K* n/2
2K K K
K*2K 3 2*K - 1 + K/2
arqPar Redes directas (Tabla de Parámetros)Conectividad-71
![Page 72: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/72.jpg)
arqPar Perspectiva histórica Conectividad-72
MIMD
HWANG (1993) IDENTIFICA TRES GENERACIONES:
1983-1987 Hipercubo con Encaminamiento Sw
1988-1992 Malla con Encaminamiento Hw (Sw de grano medio)
1993-1997 µP y comunicaciones en el mismo chip (grano fino)
Multiprocessor systems-on-chips (MPSoCs)
Hoy 4..16 núcleos ¿Se llegará a 400 en 2020?
1983-1987 1988-1992 1993-1997
![Page 73: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/73.jpg)
M1 M2 M3 Mm
P1
arqPar Redes indirectas (Barras cruzadas) Conectividad-73
P2
P3
Pn
“Crossbar”
Funcionalidad de los conmutadores simples:
colisión difusión
Perfil N*M
O (N2)
Muchas patas
8x8 OnChipmm2 => 5 núcleosW => 2 núcleos
![Page 74: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/74.jpg)
arqPar Redes indirectas (Multietapa) Conectividad-74
crossbar8*8
• O (64)• Perfil 8*8• Latencia 1
¿ Reducir O( N2) a costa de … ?
Usar sólo crossbar 2*2
directo cruce difusión colisión
etapa 1 etapa 2 etapa m
Red de interconexión
Conjunto de crossbar 2*2
![Page 75: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/75.jpg)
a
b
c
d
e
f
g
h
arqPar Redes indirectas (Red ) Conectividad-75
• Red de interconexión “perfect Suffle”
• Limitado a N = potencia de 2
• N = 2
• N = 4
• Viable: [a,f – b,e – c,h – d,g]• NoViable: [a,f - c,e - …....]
Crossbar 24Red 16
![Page 76: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/76.jpg)
arqPar Redes indirectas (Red ) Conectividad-76
• Red de interconexión “perfect Suffle”
• Limitado a N = potencia de 2
000
001
010
011
100
101
110
111
000
001
010
011
100
101
110
111
¿Encaminamiento?
Sea de 001 a 010
001
010001
010
Bit igual => directo
Bit distinto => cruce
001
010
001
010011
001
100100
110
101
Colisión
¿ Latencia y O( ) ?¿Mejorable?
![Page 77: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/77.jpg)
arqPar Redes indirectas (Red ) Conectividad-77
000
001
010
011
100
101
110
111
000
001
010
011
100
101
110
111
101
000
001
010
011
100
101
110
111
¡ Permite difusión !
![Page 78: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/78.jpg)
arqPar Redes indirectas (Tabla de parámetros) Conectividad-78
Bus Multietapa Crossbar
Latencia Cte Log2N*cte cte
Complejidad Conmuta.
N 2 N log2N N2
Perfil de Comunicación
11 NN (*)
NN
• BUS Barato y limitado 2..32
• CROSSBAR Más caro. Bueno para N moderadoMayor ancho de banda y fácil
encaminar
• MULTIETAPA Compromiso entre Bus y Crossbar
![Page 79: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/79.jpg)
#NODOS TIPO DE RED SUPERCOMPUTADOR..N Configurable Bull systems>50.000 Dragonfly Cray Inc. XC30.. 1.152 Toro 2y3D Cray Inc. XE6/XE6m(96+96)*N Toro 3D Cray Inc. XK7.. 4.096 ..? Toro 3D + Árbol Eurotech Aurora.. 98.304 Toro 6D Fujitsu PRIMEHPC FX 10.. 512 Crossbar multidim. Hitachi SR 16000.. 1.572.864 Toro 5D IBM BlueGene/Q256 x 2.048 Variable IBM eServer p775.. 8.192 Crossbar multidim. NEC SX-9.. 4.096 Toro 2D .. ? SGI Altix UV
arqPar Implantación en el mercado (Oct/2013) Conectividad-79
intercluster
![Page 80: Arquitecturas ParalelasCurso 13/14](https://reader035.fdocuments.ec/reader035/viewer/2022070411/568146c5550346895db40018/html5/thumbnails/80.jpg)
arqPar Redes en Top500 (Nov/2014) Conectividad-80
FIN