nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik...

91
Arkitektura Paraleloak IF - EHU Arkitektura Paraleloak 6. Konputagailu Paraleloen Komu- nikazio Sarea. Mezu Ematearen bidezko Komunikazioa. - Sarrera - Kommutagailuen bidezko sareak - Mezu-bideragailuen bidezko sareak - Komunikazio-estrategiak - Arazoak

Transcript of nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik...

Page 1: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak

IF - EHU

Arkitektura Paraleloak

6. Konputagailu Paraleloen Komu-nikazio Sarea. Mezu Ematearen bidezko Komunikazioa. - Sarrera - Kommutagailuen bidezko sareak - Mezu-bideragailuen bidezko sareak - Komunikazio-estrategiak - Arazoak

Page 2: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 2 6

Konputagailu paraleloek euskarri eraginkorra erabili behar dute prozesuen arteko komunikaziorako, dela memoria partekatua atzitzeko (zentralizatua, SMP, edo banatua, DSM), dela prozesuen arteko mezuak garraiatzeko (MPP).

Komunikazio-sarea arkitektura-ereduen independentea bada ere, eredu bakoitzari egokitutako sareak erabiltzen dira.

Sarrera

Page 3: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 3 6

SMP multiprozesadoreek busa erabili ohi dute memoria atzitzeko.

M

P

C

busa

Busa erraz kudeatzen eta sinplea den sarea da, baina hedatzeko arazoak ditu:

- aldi bereko komunikazio bakar bat baino ez du onartzen (sinplifikatuz).

- ase egiten da prozesadore kopurua hazten denean.

Atzipenen latentzia atzitu behar den memoria-posizioen independentea da: datu guztiak “distantzia” berdinera daude (UMA).

Sarrera

Page 4: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 4 6

Prozesadore asko konektatu ahal izateko, memoria fisikoki banatu behar da (agian helbide-espazioa partekatua: DSM).

Beste komunikazio-sare mota bat behar dugu.

P

C

M

sare orokorra

R

Memoria-atzipenen edo mezuen latentzia ez da konstantea: komunikazioa azkarragoa izango da hurbilago dauden prozesadoreekin.

Komunikazio-sarearen portaera oso garrantzitsua da latentziak ahalik eta txikienak izan daitezen.

Sarrera

Page 5: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 5 6

Komunikazio-sare egokien ezaugarri batzuk:

komunikazioen latentzia txikia izatea.

aldi bereko komunikazio asko onartzea (hau da, throughput handia izatea).

ahal den neurrian, hutsegiteak (matxurak) izanda ere funtzionatzen jarraitzea.

eraikitzeko eta zabaltzeko erraza izatea, eta bideak aurkitzeko algoritmoak sinpleak izatea.

Sarrera: ezaugarriak

Page 6: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 6 6

Komunikazio-azpiegiturak bi atal ditu:

- hardwarea loturak, kommutagailuak, mezu-bideragailuak,

prozesadoreekiko interfazea.

- softwarea komunikazio-protokoloak.

Sarrera

Page 7: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 7 6

Topologiak sarearen forma adierazten du, hau da, prozesadoreen arteko konexioak zehazten ditu, grafo baten bidez.

Grafoaren osagaiak: - nodoak: prozesadoreak, edo mezuak

kudeatzeko gailu bereziak. - arkuak: nodoen arteko konexioak.

Sarrera: topologia

Page 8: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 8 6

Sareen ezaugarri topologiko nagusiak: Konplexutasuna - Gradua: nodoen lotura kopurua. Guztietan kopurua

bera bada, sarea erregularra da. - Simetria: sarea berdin “ikusten” da nodo guztietatik. - Hedagarritasuna: handitzeko erraza den edo ez.

Fidagarritasuna - Hutsegiteekiko tolerantzia: matxurak onartzen

diren edo ez. - Arku- eta nodo-konektibitatea: kendu behar diren

osagaiak grafoa (sarea) ez-konexo bihurtzeko.

Sarrera: topologia

Page 9: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 9 6

Sareen ezaugarri topologiko nagusiak:

Trafikoa - Erdibiketa: grafoa bi zati berdinetan banatzeko kendu

behar diren loturak.

Distantziak (latentzia) - Batez besteko distantzia: d = Σ dij / P(P-1) - Diametroa: bi nodoren arteko distantzia maximoa.

Sarrera: topologia

Page 10: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 10 6

1. Dinamikoak - kommutagailuen bidezko sareak - SMP sistemetarako (ez bakarrik) - telefono-sareetatik eratorriak

Bi motako sareak:

2. Estatikoak - mezu-bideragailuak (routers) - MPP sistemetarako

Sarrera: sailkapena

Page 11: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 11 6

Kommutagailua: hainbat sarrera eta irteera konektatzen duen gailua.

S0 → I0, I1 S1 → I0, I1

S0 → I0 S1 → I1

S0 → I1 S1 → I0

k = 2 graduko komm.

0

1

0

1

S0

S1

I0

kontrol-seinaleak

I1

a. Kommutagailuzko sareak

Page 12: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 12 6

1. Crossbar sarea: denak denekin konektatuta.

Kommutagailu bakoitzak zutabe eta errenkada

bana konektatzen ditu.

Kostua handia izan daiteke: O(P2)

a. Kommutagailuzko sareak

Page 13: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 13 6

2. Urrats anitzeko sareak

proz.

P0

Pp-1

proz. (edo mem.)

P0

Pp-1

Kommutagailuak hainbat urratsetan antolatzen dira, eta urratsetik urratserako konexioak “permu-tazio” jakin baten arabera egiten dira.

permutazio bat

a. Kommutagailuzko sareak

Page 14: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 14 6

Adibidea: Omega sarea

0 1

2

3

5

6

7

4

Kommutagailuen arteko konexioak: tartekatze perfektua (perfect shuffle)

0

2

4

6

1

3

5

7

0

2

6

1

3

5

7

4

Tartekatze perfektua: [0, 1, 2, ..., P-1] → [0, P/2, 1, P/2+1, ..., P/2-1, P-1]

logk P urrats P/k kommutagailu urratseko

→ guztira P/k × logk P komm.

Bit bateko biraketa: 4 (100) → 1 (001) 5 (101) → 3 (011)

Omega sarea

Page 15: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 15 6

Omega sarea: ezaugarri topologikoak

0

2

4

6

1

3

5

7

0

2

6

1

3

5

7

4

Diametroa: logk P B. b. distantzia: logk P Simetrikoa (erregularra) Gradua: 2, 4... (k) Huts. tolerantzia: txikia

Omega sarea

Page 16: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 16 6

Bideratzea Omega sarean (routing). Nola aukeratzen da bidea i-tik j-ra joateko?

1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera

→ 6 (110)

0

2

4

6

1

3

5

7

0

2

6

1

3

5

7

4

1 0

1 0

2 Bideratze-erregistroa: i xor j 0: segi / 1: gurutzatu

BE = 100 xor 110 = 010

1

0

Omega sarea

Page 17: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 17 6

Irteera-gatazkak Omega sareak P komunikazio onartzen ditu aldi

berean, baina ez edozein.

0 → 1 eta 6 → 0? 0

2

4

6

1

3

5

7

0

2

6

1

3

5

7

4

- bertan behera utzi - bufferrak erabili - bitan banatu

Permutazio kopurua: P! Egin daitezke: 2 P/2 log P = P P/2

P = 8 → % 10; P = 16 → % 0,02

Omega sarea

Page 18: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 18 6

Broadcast Prozesadore batetik guztietara.

0

2

4

6

1

3

5

7

0

2

6

1

3

5

7

4 BC

BC

BC BC

BC

BC

BC

Omega sarea

Page 19: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 19 6 Butterfly sarea

Beste adibide bat: Butterfly sarea

Page 20: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 20 6

busa Omega Crossbar-a

Latentzia konstantea O(logkP) konstantea

Banda-zabalera prozesadoreko O(w/P)→O(w) O(w)→O(w × P) O(w × P)

Kable kopurua O(w) O(w × P × logkP) O(w × P2)

Kommutagailu kopurua O(P) O(P/k × logkP) O(P2)

Komunikazio-ahalmena

banan-banan permutazio batzuk, broadcast

permutazio guztiak

Laburpena

Page 21: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 21 6

Sarea osatzeko adreilua: mezu-bideragailua.

komunikazio-sarea

bertako prozesadorea/memoria

router-a

komunikazioen kudeatzailea

sareko loturak

Sare estatikoen “nodoa”: prozes./mem. + mezu-biderag. Nodoen arteko distantzia ez da konstantea.

Bi noranzko loturak.

b. Mezu-bideragailuzko sareak

Page 22: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 22 6

sarrerako portuak irteerako portuak

bertako prozesadorera bertako prozesadoretik

komunikaziorako loturak

komunikaziorako loturak

Hainbat sarrera- eta irteera-portu, paketeak hartzeko eta bidaltzeko; buffer multzo bat, paketeak aldi batean metatzeko; eta automata bat, mezuak prozesatu eta dagokien irteera esleitzeko.

buffe

rrak

buffe

rrak

bid

erat

ze-f

untz

ioa

+ c

ross

bar-

a

Mezu-bideragailua

Page 23: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 23 6

1 Crossbar sarea: denak denekin.

Zaila eraikitzeko eta kostu handikoa, P handia denean. Gainera, bideragailuen gradua (lotura kopurua) ez da konstantea: P-1.

Topologia erabilienak

Page 24: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 24 6

2 Dimentsio bakarreko sareak: katea, eraztuna.

Gradua Simetria

Hutseg. Tolerantzia

Diametroa Batez b. distantzia

2 2, erregularra ez bai lotura bat bi lotura

P-1 P/2 P/3 (P handia) [ (P+1)/3 ]

P/4 (P handia) [ P2 / 4(P-1) ]

Topologia erabilienak

Page 25: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 25 6

3 Mailak eta toruak (n dimentsio, k>2 nodo dimentsioko).

k→ P = kn

Loturak Gradua

Simetria Hutseg. Toleran. Hedagarritasuna

n kn-1 (k-1) n kn

2n 2n, erregularra ez bai handia (n) handiagoa (2n) erraza erraza

Topologia erabilienak

Page 26: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 26 6

3 Mailak eta toruak (n dimentsio, k>2 nodo dimentsioko).

Erdibiketa

Diametroa Batez b. distantzia

kn-1 2 kn-1

n (k-1) n k/2 ~ n k/3 (k handia) ~ n k/4 (k handia)

Topologia erabilienak

k→ P = kn

Page 27: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 27 6

4 Hiperkuboak: maila baten kasu partikularra, dimentsio bakoitzean bi nodo baino ez dituena.

(xn-1, xn-2, ..., x1, x0) →

(xn-1, xn-2, ..., x1, x0) (xn-1, xn-2, ..., x1, x0) ...

(xn-1, xn-2, ..., x1, x0) (xn-1, xn-2, ..., x1, x0)

0000 0001 0100

1000

0010

1111

0101

0110

1100

Loturak, helbidean bit batean bereizten diren nodoekin.

Topologia erabilienak

Page 28: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 28 6

4 Hiperkuboak: parametro topologikoak.

0000 0001 0100

1000

0010

1111

0101

0110

1100

Diametroa B. b. distantzia

Gradua Simetria

Huts. Tol. Hedag.

Erdibiketa

P = 2n → n = log2 P

P/2 log2 P

n (log2P, ez da konstantea!) bai oso handia zaila P/2 (oso handia)

n ~ n/2 (n handia)

Topologia erabilienak

Nodoak Loturak

Page 29: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 29 6

5 Arbolak eta arbola sendoak (fat tree).

fat tree edo arbola sendoa

mezu-bideragailuak

prozesadoreak

arbola bitarra (k = 2)

Topologia erabilienak

Page 30: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 30 6

5 Arbolak eta arbola sendoak (fat tree).

fat tree edo arbola sendoa Diametroa

B. b. distantzia

Gradua Sakonera Simetria

Huts. Tol. Hedag.

Erdibiketa

k (ohikoa, 4)

bai handia erraza P/2

2 logk P ~ 2 logk P – 2/(k-1) (P handia)

logk P

Topologia erabilienak

Page 31: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 31 6

parametro topologikoak (P bikoitia, handia)

Proz. Gradua Simetr. Loturak dbb Dmax Erdib. Arku-konek.

Crossbar-a P P-1 bai P (P-1) 1 1 P2/4 P-1

Omega [komm.] P k bai P (logkP+1)

[ P/k logkP ] logkP logkP - -

Maila (n / k>2) P = kn 2n ez n kn-1 (k-1) ~ n k/3 n (k-1) kn-1 n

Torua P = kn 2n bai nP ~ n k/4 n k/2 2 kn-1 2n

Hiperkuboa P = 2n n (logP) bai P/2 logP ~ n/2 n P/2 n

Arbola (fat tree) P k bai P logkP ~ 2 logkP -

2/(k-1) 2 logkP P/2 1

Topologien laburpena

Page 32: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 32 6

Adibidez, P = 4.096 nodo:

126 42,7 64 32

45 15,9 24 12

12 6

12 11,3

D dbb

2D maila 2D torua

3D maila 3D torua

Hiperkuboa

Arbola (k=4)

Topologien laburpena

Page 33: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 33 6

Hiperkuboak parametro topologiko oso onak ditu, baina konplexua da prozesadore kopurua handia bada; gainera, gradua ez da konstantea.

Lehenbiziko MPP sistemetan erabili zen (prozesadore kopuru txikia, eta mezuen latentzia distantziaren mendekoa).

2D eta 3D mailak eta toruak asko erabiltzen dira MPP sistemetan: topologia sinpleak dira eta gradua txikia da. Distantzia-parametroak handiagoak dira, baina mezuak transmititzeko teknika aldatu zen eta latentzia ez da distantziaren mende (ez asko).

Arbolak (edo baliokideak diren butterfly eta antzeko sareak) ere erabiltzen dira (esaterako, cluster-ak osatzeko, Myrinet), prozesadore kopurua handia denean konplexuak badira ere.

Topologien laburpena

Page 34: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 34 6

Prozesuen arteko komunikazioa gauzatzeko erabiltzen da sarea, eta horretarako mezuak bidaltzen dira, prozesutik prozesura.

Nola bidaltzen dira mezuak? nondik? nola aukeratzen da bidea?...

Mezuen (paketeen) egitura

goiburukoa datuak bukaera

kontrol-informazioa (BE)

Informazio-unitatea: flit bat (eskuarki, byte bat). Flit bat transmititzeko denbora, “ziklo” bat.

Komunikazioa

Page 35: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 35 6

Komunikazio-patroiak Norekin eta noiz egiten den komunikazioa

zehazten du. Jakina, aplikazioaren araberakoa da.

Mezuen tamaina Oro har, hainbat tamainatako mezuak garraiatu

behar dira. Kontrol-mezuak txikiak ohi dira (byte batzuk);

datu-mezuak, handiagoak (eskuarki tamaina finkoko paketetan banatuta).

Komunikazio-patroiak

Page 36: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 36 6

Ohiko komunikazio-patroi batzuk:

- Zorizkoa: komunikatzeko probabilitatea bera da edozein nodoren artean eta denboran zehar.

- Distantziaren funtzioak: nodo batzuekin beste batzuekin baino probabilitate handiago dago komunikatzeko, distan-tziaren arabera. dist.

K. P.

- Broadcast, multicast, reporting...

- Matrize iraulia, FFT, perfect shuffle...

Komunikazio-patroiak

Page 37: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 37 6

Bidea eraikitzea

- Zirkuitu-kommutazioa (circuit switching)

Mezua bidali baino lehen, bide “pribatu” bat erreserbatu egin behar da; horretarako, zunda-mezu bat bidaltzen da helbururaino.

Bidea eraiki denean, mezu osoa transmititzen da (ez da paketetan banatzen).

Telefono-sarea, esaterako.

Arazoak: denbora behar da bidea osatzeko; eta sareko hainbat lotura erreserbatu egiten dira, nahiz eta une horretan ez erabili.

Bidea eraikitzea

Page 38: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 38 6

Bidea eraikitzea

- Pakete-kommutazioa (packet switching)

Mezua tamaina finkoko hainbat paketetan banatzen da. Pakete bakoitzak helburuari buruzko informazioa darama, eta bideragailuz bideragailu doa helbururaino, sarean dauden gainerako paketeekin lehian baliabideak erabiltzeko.

Adibidez, posta-zerbitzua.

Arazoak: gainkarga bat sortzen da, pakete bakoitzak kontrol-informazioa eraman behar duelako. Gainera, mezua berrosatu egin behar da helburuan.

Bidea eraikitzea

Page 39: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 39 6

Paketeak bideratzea (routing) Nondik doaz paketeak iturburutik helbururaino?

Zein da bidea?

- nola adierazten da hartu behar den bidea? bideratze-erregistroa, BE (routing record)

- bide bakarra dago? luzera minimoko bideak, baina, zein?

Paketeak bideratzea

Page 40: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 40 6

Paketeak bideratzea (routing) Bi aukera helburura heltzeko:

- Helbide absolutua adierazi paketean. Informazio hori tarteko bideragailuetan prozesatuko

da irteera aukeratzeko (taula bat, funtzio bat...).

- Paketeak bideratze-erregistroa darama, bidea zehazteko; eskuarki, zenbat pauso eman sareko dimentsio bakoitzean.

BEa bideragailu bakoitzean egokitu behar da. Paketea helburura heldu da BEko osagai guztiak 0 direnean.

Paketeak bideratzea

Page 41: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 41 6

Bideratze-erregistroa mailetan

X: (xn-1, xn-2, ..., x1, x0) → Y (yn-1, yn-2, ..., y1, y0)

Nahikoa da koordenatuen kenketa egitea dimentsio bakoitzean eman behar diren pausoak adierazteko.

BE = [yn-1 - xn-1, yn-2 - xn-2, ..., y0 - x0]

4 (1,0) → 15 (3,3) BE = [2, 3]

4 (1,0)

15 (3,3)

[2,3] [2,2] [2,1] [2,0]

[1,0]

[0,0]

Bideratze-erregistroa

Page 42: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 42 6

Bideratze-erregistroa toruetan

Beraz, koordenatuen kenketa egin ondoren, emaitzak egokitu behar dira bide motzenak aukeratzeko:

BEi > k/2 → BEi = BEi – k BEi < -k/2 → BEi = BEi + k

4 (1,0) → 15 (3,3) BE = [2, 3] → [2, -1]

4 (1,0)

15 (3,3)

Dimentsio bakoitzean, bi aukera daude helburura joateko: “aurretik” edo “atzetik”. Ez da eraztun erdia baino pauso gehiago eman behar noranzko batean. [2,-1] [2,0]

[1,0]

[0,0]

Bideratze-erregistroa

Page 43: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 43 6

1001

1110

0000 0001 0100

1000

0010

1111

0101

0110

1100

0011 0111

1101

Bideratze-erregistroa hiperkuboetan

BE = [i xor j]

2 (0010) → 12 (1100) BE = [1110]

Dimentsio bakoitzean bi nodo baino ez dago; beraz, dimentsioko pauso bakar bat eman daiteke, dimentsio horretako koordenatuak desberdinak badira: [1110]

[1100]

[1000]

[0000]

1010 1011

Bideratze-erregistroa

Page 44: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 44 6

Bide jakin bat aukeratzeko estrategiak

Bideratze-erregistroak ez du bide bakar bat zehazten (oro har). Beraz, zein erabili behar da?

1. Bideratze estatikoa Xtik Yra joateko, bide bakarra eta beti bera erabiltzen da: DOR. 4 (1,0)

15 (3,3)

+ Sinplea da + Paketeak ordenan heltzen dira - Ez dira aurrera jarraitzeko

aukera guztiak aprobetxatzen

Bide-aukeraketa

Page 45: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 45 6

4 (1,0)

15 (3,3)

Bide jakin bat aukeratzeko estrategiak

2. Bideratze moldakorra Sistemaren egoeraren arabera erabakitzen da bidea bideragailu bakoitzean (adi! informazio lokala erabili behar da).

+ Trafiko handiko guneak saihestu daitezke (sareko topologia aprobetxatuz) - Konplexuagoa da (erabaki egin

behar da) - Paketeak desordenatu daitezke - Blokeoak sor daitezke

Bide-aukeraketa

Page 46: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 46 6

Bide jakin bat aukeratzeko estrategiak

3. Bide ez minimoak Oro har, luzera minimoko bideak erabili behar dira.

Zenbait kasutan, egokia izan daiteke bide luzeagoak erabiltzea, dela trafikoa, dela sareko matxurak gainditu ahal izateko.

Bide-aukeraketa

Page 47: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 47 6

Pakete batek L flit ditu (batzuek kontrolekoak, besteak datuak).

Nola transmititzen dira paketeen flitak bideragailuen artean? Zer egin behar da transmititzen ari den pakete baten flitekin?

Bi aukera:

- Store-and-forward ohikoa konputagailu-sareetan

- Cut-through / Wormhole multikonputagailuetan erabiltzen dena

Informazio-jarioaren kontrola

Page 48: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 48 6

Store-and-forward

Pakete osoa (flit guztiak) transmititzen da ondoz ondoko bi bideragailuren artean. Transmisioak irauten duen bitartean, barneko buffer batean gordetzen da.

Tsf ~ L × d

1 2 3 4

2 3 4 1

3 4 1 2

4 1 2 3

1 2 3 4

2 3 4 1

3 4 1 2

4 1 2 3

1 2 3 4

2 3 4 1

3 4 1 2

4 1 2 3

1 2 3 4

tarteko bideragailuak

t

Informazio-jarioaren kontrola: SF

Page 49: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 49 6

Cut-through / Wormhole

Pakete baten goiburuko aurreneko flita prozesatu ondoren, hurrengo bideragailura transmititzen da, pakete osoa heldu arte itxaron gabe.

Tct/wh ~ L + d

Komunikazioa “segmentatu” egiten da. 1 2 3 4

2 3 4 1

4 2 3 1

1 2 3 4

tarteko bideragailuak

1 2 4 3

4 1 2 3

3 4 1 2

Informazio-jarioaren kontrola: CT-WH

Page 50: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 50 6

Cut-through / Wormhole Desberdintasuna: zer egin behar da pakete baten goiburuko-flitak aurrera jarraitu ezin badu?

Wormhole

Paketearen flit guztiak gelditzen dira, dauden tokietan.

1 2 3 4

4 2 3 1

1 2 4 3

4 1 2 3

3 4 1 2

2 3 4 1

1 2 3 4

3 4 1 2

3 4 1 2

Ez dira bufferrak erabili behar.

Informazio-jarioaren kontrola: CT-WH

Page 51: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 51 6

Cut-through / Wormhole Desberdintasuna: zer egin behar da pakete baten goiburuko-flitak aurrera jarraitu ezin badu?

Cut-through

Aurreneko flita gelditzen da, baina gainerakoak aurrera doaz, eta bideragailuan bertan gordetzen dira, bufferretan.

1 2 3 4

4 1 2 3

4 1 2 3 1 2 3 4

1 2 3 4

2 3 4 1

1 2 3 4

3 4 1 2

4 3 1 2

Informazio-jarioaren kontrola: CT-WH

Page 52: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 52 6

Paketeetarako bufferrak Mezu-bideragailuek paketeak (edo flit batzuk) gordetzeko tokia (memoria) izan ohi dute.

SF → gutxienez pakete baterako buffer bat. WH → flit baterako memoria-espazioa (sarrera-portua). CT → tarteko soluzioa da; pakete bat(tzuk) edo flit

batzuk gordetzeko ahalmena behar da.

Pakete askotarako tokia bideragailuetan? Ez.

- ez da ohikoa pakete asko blokeatuta egotea. - azkarra izan behar du bideragailuak, hau da, sinplea.

Baliabide-gatazkak: bufferrak

Page 53: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 53 6

Nola egituratzen dira bufferrak?

Partekatuak edo banatuak?

Partekatuak + memoria-espazioa hobeto kudeatzen da. - konplexuagoak dira, aldi bereko hainbat sarrera eta

irteera onartu behar direlako.

Baliabide-gatazkak: bufferrak

Page 54: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 54 6

Nola egituratzen dira bufferrak?

Irteeretan + paketeak ez dira ordenan tratatu behar (eraginkort.). - kudeatzeko konplexuagoak dira, aldi bereko hainbat

sarrera onartu behar direlako.

Baliabide-gatazkak: bufferrak

Sarreretan edo irteeretan?

Page 55: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 55 6

Nola egituratzen dira bufferrak?

Eta bufferrak betetzen badira?

Ez da ohiko egoera izan behar, sarearen komunikazio-ahalmena gaindituta dagoelako. Bakarrik trafiko handiko uneak kudeatzeko.

tokia?

bai/ez

datuak

Baliabide-gatazkak: bufferrak

kontrol-lerroak

datu-lerroak

Page 56: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 56 6

Komunikazio-sarea programak paraleloan exekuta-tzeko baliabide bat baino ez da (beste “unitate funtzional” bat), ahalik eta eraginkorrena izan behar duena.

Kalitateko parametro nagusiak:

- paketeen latentzia: behar den denbora transmisioa gauzatzeko.

- mezu-emaria (throughput): sareak onar dezakeen trafiko-maila.

Latentzia eta mezu-emaria

Page 57: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 57 6

Definizio batzuk:

- Loturen zabalera: paraleloan transmititu daitekeen bit kopurua, “phit” bat (eskuarki, 8 bit).

- Transmisio-zikloa: “phit” bat transmititzeko denbora (ziklo bat).

- Loturen banda-zabalera (bandwidth), B: segundo batean transmititu daitekeen informazio kopurua.

- Bideratze-denbora (routing time), tr: pakete baten goiburukoa prozesatzeko denbora.

Latentzia eta mezu-emaria

Page 58: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 58 6

Komunikazio-denbora edo latentzia (trafikorik gabe)

L: paketearen luzera (bytetan = flitetan) d: distantzia

- Store-and-forward

Tsf = d × (L/B + tr)

- Cut-through / Wormhole

Tct = d × (1/B + tr) + (L-1)/B

d × L

d + L

Latentzia eta mezu-emaria

Page 59: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 59 6

Adibidea: P = 1.024, L = 256 byte, tr = 1 ziklo.

hiperkuboa 2D torua 2D maila D 10 32 62 d 5 16 22

max. 2.570 8.224 15.934 b.b. 1.285 4.112 5.654

SF

max. 275 319 379 b.b. 265 287 299

CT

Latentzia eta mezu-emaria

Page 60: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 60 6

Sareko trafikoa kontuan hartuz.

Mezu-emaria (b/s)

Trafikoa (b/s) Trafikoa (b/s)

Latentzia (s)

trafikorik gabeko latentzia

trafiko maximoa

Latentzia eta mezu-emaria

Page 61: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 61 6

Cut-through versus wormhole.

Trafikoa (b/s)

Latentzia (s)

CT

Mezu-emaria (b/s)

Trafikoa (b/s)

CT

WH

WH

Latentzia eta mezu-emaria

Page 62: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 62 6

Mezu-emari maximoa (zorizko trafikoa).

P/2 P/2

erdibiketako loturak

P/2 × (PaK × L) × 1/2 = EBZ

PaK = 4 × EBZ / (P × L)

PaK: prozesadore bakoitzak injekta dezakeen L fliteko (byteko) pakete kopurua segundoko

EBZ: erdibiketaren banda-zabalera (= Erdib × B) PaK/2 PaK/2

2D maila 2D torua 8D hiperk.

erdibiketa flit kop. max. / z.

P = 256

16 32 128 0,25 0,5 2

Latentzia eta mezu-emaria

Page 63: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 63 6

Eredu orokorra

Tkom = thasi + tflit × L

R = L / Tkom transmisio-abiadura

Rmax = lim R (L → ∞) abiadura maximoa

L1/2 = thasi / tflit abiadura max. erdia eskuratzeko

Laburrean: komunikazio-denboraren osagaiak

komunikazioa bidera-gailuen artean

pak. proz. denb.

itx.-denb. bufferretan igorlea hartzailea

Latentzia eta mezu-emaria

Page 64: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 64 6

Komunikazio-prozesua prozesu banatua da, eta paraleloan exekutatzen da hainbat mezu-bideragailutan. Beraz, dagoeneko aztertu dugun arazo bat berriro ager daiteke: elkarblokeoa (deadlock) (livelock, starvation...).

Blokeoak: pakete multzo batek aurrera jarraitzeko baliabideak agortzen ditu (CT moduan, bufferrak; WH moduan, loturak...), eta betiko geldituta geratzen da.

Zenbait arazo

Page 65: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 65 6

m2: 1,3→3,1

(0,0) (0,3)

(3,0) (3,3)

m1: 0,1→2,3

m3: 3,2→1,1

m4: 2,1→0,2

Adibidez, WH moduan:

Zenbait arazo

Page 66: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 66 6

Zer egin blokeoekin?

- blokeoak sortzen ez dituzten topologiak edo/eta bideratze-estrategiak baino ez erabiltzea.

- blokeoak sor daitezkeela onartzea, eta, sortzen direnean, detektatzea eta konpontzea.

Ikus ditzagun aukera erabilienak.

Blokeo aurkako estrategiak

Page 67: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 67 6

1. Bideratze estatikoak laguntzen du. Adibidez, DOR bideratze estatikoa erabiliz, mailetan ez dira blokeoak sortzen.

m2: 1,3→3,1

(0,0) (0,3)

(3,0) (3,3)

m1: 0,1→2,3

m3: 3,2→1,1

m4: 2,1→0,2

Blokeo aurkako estrategiak

Page 68: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 68 6

2. Baina ez da nahikoa, baldin eta topologiak zikloak baditu.

0

3

1

2

0→2 1→3

2→0 3→1

Blokeo aurkako estrategiak

Page 69: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 69 6

B0

B1 B1

B0

3. Kanal birtualak (virtual channels)

Bideragailuen loturak blokeatuta ez mantentzeko, buferrak bi (hainbat) klasetan banatzen dira.

KB0

KB1

Blokeo aurkako estrategiak

Page 70: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 70 6

3. Kanal birtualak

Helburu bikoitza: 1 Eraginkortasuna hobetzea: pakete batek

aurrera jarraitu ezin badu, atzetik datorren eta bidea libre duen paketea ez geldiaraztea.

2 Deadlock egoerak saihestea.

Blokeo aurkako estrategiak

Page 71: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 71 6

3. Kanal birtualak

2 Deadlock egoerak saihestea

0

3

1

2

1→3

2→0 3→1

0→2

Blokeo aurkako estrategiak

KB1

KB0

Page 72: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 72 6

Laburbilduz Mailak, DOR → ez dago blokeorik Toruak, DOR, 2 kanal birtual → ez dago blokeorik

4. Baina, erabili al daiteke bideratze moldakorra eta blokeoak ez izatea?

- maila birtualak - biratze kontrolatuak (turn model) - bide “seguruak” - paketeen injekzioa kontrolatzea

Zenbait arazo

Page 73: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 73 6

4a. Maila birtualak (2D)

- Gehitu bi kanal birtual kanal fisiko bakoitzeko.

- Sailkatu paketeak lau kategoriatan, helburuen posizioen arabera: NE, ES, SW, WN.

- Maila birtual bakoitzean, paketeek nahi duten bidea har dezakete, ezinezkoa baita zikloak sortzea.

N1

E0 W1

N0

E1

S0 S1

W0

- Lau maila birtual sortu: NE: N1-E0 ES: E1-S0 SW: S1-W0 WN: W1-N0

Zenbait arazo

Page 74: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 74 6

4b. Turn model (mailak)

- Ziklo bat osatzeko, lau biraketa egin behar dira. DOR bideratze estatikoa erabiltzen denean, horietako bi debekatuta daude.

- Nahikoa da bat debekatzea zikloak ez sortzeko; ad., mendebaldera biratzea:

- mendebaldera ez badoaz, nahi den

moduan; - bestela, mendebalderako bidea hasieran

egin behar da. west-first

Zenbait arazo

Page 75: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 75 6

4c. Bide seguruak

Kasu honetan, onartu egiten da paketeak blokeatu daitezkeela. Gertatzen denean, detektatu eta kopondu egiten da; horrela (mailetan eta toruetan, adibidez):

- 2 kanal birtual (2D), bi sare birtual osatzeko. - Paketeak sare batean injektatzen dira, eta nahi duten

moduan mugitzen dira. Beste sarea modu seguruan mugitzeko erabiltzen da (adibidez, DOR, 2D maila batean).

- Pakete bat blokeatzen denean, sare segurura igaroarazten da, eta hor mugituko da helburura heldu arte.

Zenbait arazo

Page 76: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 76 6

4c. Bide seguruak

Adi: nola detektatu blokeoa??? Denbora jakin bat pasa eta gero mugitu gabe (!?).

4d. Paketeen injekzioa kontrolatzea

Baliabideak agortu egiten direlako gertatzen dira blokeoak.

Beraz, bideragailuek errefuxatu egingo dute pakete bat baldin eta, hartuz gero, bufferrak betetzen badira. Horrela ez dira baliabideak inoiz agortuko (Mare Nostrum).

Zenbait arazo

Page 77: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 77 6

Laburbilduz Bideratze estatikoa: - Mailak, DOR → ez dago blokeorik - Toruak, DOR, 2 kanal birtual → ez dago blokeorik

Bideratze moldakorra: - Oro har: mailetan, kanal birtual bat dimentsio bakoitzeko, eta

toruetan, bi kanal birtual. - Beste estrategia batzuk. - Agian, zikloak sortzen ez dituzten topologiak: arbolak!

Adi: bideragailuak sinplea izan behar du, paketeak ahalik eta azkarren prozesatzeko. Beraz, litekeena da bideratze estatikoa nahikoa izatea!

Zenbait arazo

Page 78: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 78 6

Beste arazo batzuk

Livelock Paketeak aurrera eta atzera doaz, baina ez dute lortzen

helburura heltzea. Arazoa ager daiteke paketeak, “denbora ez galtzearren”, luzera

minimoko bideetatik desbideratzen badira. Lehentasunezko kontua izan daiteke.

Starvation Prozesadore batzuk ez dute lortzen haien paketeak sarean

injektatzea, trafiko handia dagoelako beti inguruetan. Ondo kudeatu behar dira paketeak injektatzeko estrategiak.

Zenbait arazo

Page 79: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 79 6

Ez ahaztu: elementu askok parte hartzen dute komunikazio-prozesuan.

sarea + bideragailuak

interfazea + prozesadorea (+SE?)

P1 P2

Komunikazioko eragiketa motelenak zedarrituko du sistemaren komunikazio-abiadura.

Komunikazio-protokoloak

Page 80: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 80 6

Paketeen transmisioa baino ez dugu kontuan hartu. Baina “prozesadorea/sarea” interfazea ere oso garrantzitsua da: nola injektatzen dira paketeak sarean? nola ateratzen dira?

Hainbat komunikazio-protokolo daude prozesu horiek arautzeko:

- Sinpleena: TCP/IP - Eraginkorragoak: > 0 kopiako protokolo estandarrak: VIA, Infiniband > bereziak: gm (myrinet)...

Komunikazio-protokoloak

Page 81: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 81 6

erabiltz. mem.

erabiltz. mem.

Ohiko gauzatzea:

1. TCP / IP reliable / connection oriented Lehenbiziko cluster-en protokoloa

kopia sist. mem.

kopia sist. mem.

etena SE etena SE

Komunikazio-protokoloak

Page 82: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 82 6

Kontuz: sistema eragilea eta kopiak erabili behar izateak dakarren gainkarga handia izan daiteke.

protokoloaren gainkarga Transmisio-denbora

10 Mb/s 100 Mb/s 1 Gb/s

Komunikazio-protokoloak

Page 83: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 83 6

2. VIA (virtual interface architecture)

Fabrikatzaile nagusien komunikazio-estandar(retako) bat: Ez dira kopiak egiten sistema eragileko memorian:

bideragailuekin lan egiten da.

-- mezu bat bidali baino lehen, tokia erreserbatzen da memorian, igorlean eta hartzailean.

-- send/receive eragiketek deskriptore bat bidaltzen dute ilara batera paketeak prozesatzeko.

-- baieztapenaren zain gera gaitezke, edo lanarekin jarraitu.

Behe-mailako protokoloa da, eta gauzatze natiboak edo emulatuak erabiltzen dira.

Komunikazio-protokoloak

Page 84: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 84 6

3. InfiniBand (IBA) Helburua: prestazio handiko komunikazio-azpiegitura,

kommutagailuetan (intra) eta bideragailuetan (inter) oinarrituta, SAN sareak osatzeko (bus partekatua ordezkatzeko).

- Egokigailu bereziak erabiltzen dira nodoak konektatzeko: HCA (konputazio-nodoak) edo TCA (nodo laguntzaileak).

- Sare lokaleko nodoak konektatzeko, kommutagailuak erabiltzen dira, eta bideragailuak sare lokalak haien artean konektatzeko.

- Loturak 2,5 Gb/s-koak dira, noranzko bakarrekoak, puntutik puntura.

Infiniband

Page 85: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 85 6

Page 86: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 86 6

4. Myrinet

Errendimendu handiko komunikazio-azpiegitura (garestia).

10 Gbit/s-ko loturak (full duplex), zuntz optikoa. Kommu-tagailuak crossbar batean (Clos sarea). Cut-through.

Mezuak kudeatzeko software propioa (GM). (10) Gigabit Ethernet-eko inplementazioak / Via / Infiniband.

Pakete txikien latentzia (MPI) < 2 µs (Gigabit Eth, 50 µs)

Throughput maximoa: 9,6 Gbit/s

Myrinet

Page 87: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 87 6 Myrinet

Page 88: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 88 6 Myrinet

Page 89: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 89 6 Myrinet

Page 90: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

Arkitektura Paraleloak IF - EHU

KS-ME 90 6

ADI: sistema paraleloa cluster bat bada, eta cluster-a osatzeko PCak erabiltzen badira, sarearen eta nodoen arteko konexioa PCI busaren bidez egingo da.

Agian bus horrek zehaztuko du abiadura, eta ez sareko osagaiek!

PCI → 32 bit / 33 MHz -- 64 bit / 66 MHz 110 - 480 MB/s PCI-X → 1 GB/s (2.0 → 4 GB/s)

PCI Express → 200 MB/s kanal bakoitzeko (× 32 → 6,4 GB/s)

Komunikazio-protokoloak

Page 91: nikazio Sarea. Mezu Ematearen bidezko …...Omega sarean (routing). Nola aukeratzen da bidea i -tik j-ra joateko? 1 Helburu-helbideko bitak 0: 0 irteera / 1: 1 irteera →3 6 (110)

any questions?

Arkitektura Paraleloak

IF - EHU

KS-ME | Komunikazio-protokoloak

ADI: sistema paraleloa cluster bat bada, eta cluster-a osatzeko PCak erabiltzen badira, sarearen eta nodoen arteko konexioa PCI busaren bidez egingo da.

Agian bus horrek zehaztuko du abiadura, eta ez sareko osagaiek!

PCI → 32 bit / 33 MHz -- 64 bit / 66 MHz 110 - 480 MB/s PCI-X → 1 GB/s (2.0 → 4 GB/s)

PCI Express → 200 MB/s kanal bakoitzeko (× 32 → 6,4 GB/s)