theorie und einsatz von verbindungseinrichtungen in

66
Center for Information Services and High Performance Computing (ZIH) Theorie und Einsatz von Verbindungseinrichtungen in parallelen Rechnersystemen Klassifizierung von Verbindungsnetzwerken 26. April 2013 Andy Georgi INF 1046 N¨othnitzer Straße 46 01187 Dresden 0351 - 463 38783

Upload: others

Post on 23-Mar-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Center for Information Services and High Performance Computing (ZIH)

Theorie und Einsatz von Verbindungseinrichtungen inparallelen Rechnersystemen

Klassifizierung von Verbindungsnetzwerken

26. April 2013

Andy Georgi

INF 1046Nothnitzer Straße 4601187 Dresden

0351 - 463 38783

m

Foliensatz

Verfugbarkeit der Folien

Vorlesungswebseite:http://tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/

zih/lehre/ss2013/tevpr

2/61

Agenda I

1 Verbindungsart

2 Schnittstellenstruktur

3 Topologische Klassifikationen

4 Operationsmodi

5 Kommunikationsflexibilitat

6 Kontrollstrategie

7 Vermittlungsverfahren

3/61

Agenda II

8 Konflikte

9 Fehlerbeherrschung

10 Literaturverzeichnis

4/61

Agenda

1 VerbindungsartStatische VerbindungsnetzwerkeDynamische Verbindungsnetzwerke

5/61

Statische Verbindungsnetzwerke

DefinitionInnerhalb eines statischen Verbindungsnetzwerks besitzt jedesProzessorelement eine feste Anzahl von Verbindungsleitungen zu benachbartenProzessorelementen, entlang derer Signale unmittelbar von Knotenzu Knoten gesendet werden konnen. Die Vermittlungsfunktion wirddurch die Prozessorelemente selbst ausgeubt, indem die Signale auf denentsprechenden Ausgang gegeben werden. Somit beschrankt sich das Netz aufVerbindungsleitungen.

6/61

Dynamische Verbindungsnetzwerke

DefinitionDynamische Verbindungsnetzwerke fuhren alle Vermittlungsaufgaben mittelsaktiver Koppelelemente eigenstandig aus. Es ist daher haufig ausreichend wennein Prozessorelement lediglich uber einen Ein- und einen Ausgang mit dem Netzverbunden ist. Der Aufbau eines dynamischen Verbindungsnetzwerks erfolgtmittels einer oder mehrerer Stufen von Koppelelementen, mit deren Hilfe dieNachrichten durch das Netz geleitet werden.

7/61

Agenda

2 SchnittstellenstrukturSchnittstellen in statischen NetzenSchnittstellen in dynamischen NetzenKommunikationsprozessoren

8/61

Schnittstellen in statischen Netzen I

PE N-1

Prozessor/Speicher Demux Mux

Prozessor/Speicher Demux Mux

PE 0

Verbindungs-leitungen

… ……

Abbildung: Statisches Netz mit Multiplexer-Demultiplexer Schnittstellen

9/61

Schnittstellen in statischen Netzen II

Prozessor/Speicher Router

PE i

Verbindungs-leitungen

Abbildung: Statisches Netz mit integriertem Router

10/61

Schnittstellen in dynamischen Netzen

I.d.R. besitzt jedes PE einen bidirektionalen Zugang zum Netz

Keine besonderen Hardwarekomponenten notwendig, daVermittlungsfunktionen vom Netz ausgefuhrt werden

Lediglich die fur die Vermittlung notwendigen Informationen mussenvom PE berechnet und den Nutzdaten hinzugefugt werden

11/61

Kommunikationsprozessoren

Belastung des Prozessors durch Protokollverarbeitung

Auslagerung dieser Aufgaben auf zusatzlich bereitgestellteanwendungsspezifische integrierte Schaltungen

Komplexitat von Kommunikationsprozessoren abhangig vom Umfang derzu ubernehmenden Aufgaben

12/61

Agenda

3 Topologische KlassifikationenTopologieDurchmesser und mittlere WeglangeGrad und RegularitatBisektionsweiteSymmetrieSkalierbarkeitPermutationsmoglichkeitenPartitionierbarkeitPlattbarkeitEinbettung

13/61

Topologie

Reprasentation von Netzen mit Hilfe von endlichen Graphen

Kanten = VerbindungsleitungenKnoten = ProzessorelementeQuelle = SenderSenke = Empfanger

Topologische Charakteristiken konnen zur Beurteilung derLeistungsfahigkeit herangezogen werden

14/61

Durchmesser

DefinitionBesteht ein Verbindungsnetzwerk aus N Knoten, indiziert von 0 bis N − 1und sei dA,B die minimale Anzahl von Schritten, die notwendig ist, um vonKnoten A zu Knoten B zu gelangen, so ist der Durchmesser Φ gegeben durch

Φ = max dA,B 0 ≤ A < N , 0 ≤ B < N

15/61

Mittlere Weglange

Durchmesser entspricht Abschatzung im ungunstigsten Fall

Aussage uber die mittlere Weglange P haufig sinnvoller:

P =1

N(N − 1)

N−1∑j=0

N−1∑k=0

dj ,k ; fur j 6= k

16/61

Grad und Regularitat

GradDer Grad Γ eines Knotens entspricht der Anzahl seiner ein- und ausgehendenVerbindungen. In einem Netz G ist δ(G ) die Mindest- und ∆(G ) dieMaximalzahl von Verbindungsleitungen, welche mit einem Knoten des Netzesverbunden sind.

Regularitat

Ein Netz G wird als n-regular bezeichnet, sobald gilt:

∆(G ) = δ(G ) = n

Demzufolge besitzt in einem n-regularem Netz jeder Knoten den gleichenGrad Γ von n.

17/61

Grad und Regularitat

GradDer Grad Γ eines Knotens entspricht der Anzahl seiner ein- und ausgehendenVerbindungen. In einem Netz G ist δ(G ) die Mindest- und ∆(G ) dieMaximalzahl von Verbindungsleitungen, welche mit einem Knoten des Netzesverbunden sind.

Regularitat

Ein Netz G wird als n-regular bezeichnet, sobald gilt:

∆(G ) = δ(G ) = n

Demzufolge besitzt in einem n-regularem Netz jeder Knoten den gleichenGrad Γ von n.

17/61

Bisektionsweite

DefinitionWerden in einem Netz der Große N zwei Mengen M1 und M2 die Knoten sozugeordnet, dass bN/2c Knoten in M1 und dN/2e Knoten in M2 enthalten sind,so wird die Bisektionsweite Wk(M1,M2) dieser Aufteilung uber die minimaleAnzahl der Verbindungsleitungen zwischen den Knoten in M1 und denen in M2

definiert. Die Bisektionsweite W des gesamten Netzes ergibt sich anschließendaus dem minimalen Wert von Wk fur alle moglichen Verteilungen der Knotenauf die beiden Mengen M1 und M2.

18/61

Symmetrie I

Isomorphismus, Automorphismus

Seien G1 = (V1,E1) und G2 = (V2,E2) endliche ungerichtete Graphen,so heißen G1 und G2 isomorph, wenn eine bijektive Abbildung ϕ : V1 → V2

existiert mit {u, v} ∈ E1 ⇔ {ϕ(u), ϕ(v)} ∈ E2, wobei u, v ∈ V1. In diesemFall heißt ϕ Isomorphismus zwischen G1 und G2. Gilt zusatzlich G1 = G2, soheißt ϕ Automorphismus.

19/61

Symmetrie II

Knotensymmetrie

Sei G = (V ,E ) ein ungerichteter Graph, so heißt G knotensymmetrisch (engl.:vertex-transitive), wenn fur alle u, v ∈ V ein Automorphismus ϕu,v exisitertmit ϕu,v (u) = v .

Kantensymmetrie

Sei G = (V ,E ) ein ungerichteter Graph, so heißt G kantensymmetrisch(engl.: edge-transitive), falls fur je zwei Kanten {u, v}, {u′, v ′} ∈ E einAutomorphismus ϕ exisitert mit ϕ(u) = u′ und ϕ(v) = v ′.

20/61

Symmetrie II

Knotensymmetrie

Sei G = (V ,E ) ein ungerichteter Graph, so heißt G knotensymmetrisch (engl.:vertex-transitive), wenn fur alle u, v ∈ V ein Automorphismus ϕu,v exisitertmit ϕu,v (u) = v .

Kantensymmetrie

Sei G = (V ,E ) ein ungerichteter Graph, so heißt G kantensymmetrisch(engl.: edge-transitive), falls fur je zwei Kanten {u, v}, {u′, v ′} ∈ E einAutomorphismus ϕ exisitert mit ϕ(u) = u′ und ϕ(v) = v ′.

20/61

Symmetrie III

Abbildung: Beispiele fur Knotensymmetrie [Vert]

21/61

Symmetrie IV

Abbildung: Beispiele fur Kantensymmetrie [Edge]

22/61

Skalierbarkeit

Erweiterbarkeit massiv paralleler Systeme von essentieller Bedeutung

Dabei werden folgende Randbedingungen angestrebt:

Weitestgehende Beibehaltung der TopologieNutzung bestehender VerbindungsleitungenKeine negative Beeinflussung der LeistungsfahigkeitEingeschrankte Zunahme der Netzkomplexitat

23/61

Permutationsmoglichkeiten I

Permutation

Sei S 6= ∅ eine beliebige endliche Menge und sei n die Anzahl derElemente in S , so entspricht eine n-stellige Permutation einer bijektivenAbbildung σ : Sn → Sn.

24/61

Permutationsmoglichkeiten II

Blockierendes NetzEin Netz wird als blockierend bezeichnet, wenn es eine Untermenge PS allermoglichen Permutationen PM unterstutzt – Permutationen aus der MengePM − PS hingegen zu Konflikten innerhalb des Netzes fuhren.

25/61

Permutationsmoglichkeiten III

Rearrangierbares Netz

Ein rearrangierbares Netz erlaubt alle Permutationen PM , allerdings mussenbei Anderungen der aktuellen Permutationen unter Umstanden bestehendeVerbindungen rekonfiguriert werden.

26/61

Permutationsmoglichkeiten IV

Streng blockierungsfreies Netz

Streng blockierungsfreie Netze erlauben alle Permutationen PM , ohne dasAuftreten von Blockierungen oder die Rekonfiguration bereits bestehenderVerbindungen.

27/61

Partitionierbarkeit

DefinitionEin Netz der Große N heißt partitionierbar, wenn es in K sich einander nichtbeeinflussende Subnetze der Große Ni < N, 0 ≤ i < K aufgeteilt werden kann,wobei die so entstandenen Subnetze alle Eigenschaften des Netzes besitzen,welches in der Große N konstruiert wurde.

28/61

Plattbarkeit

DefinitionEin Graph G wird als plattbar oder planar bezeichnet, insofern es moglich ist,den Graphen G innerhalb einer Ebene so zu zeichnen, dass sich die Kanten vonG nicht uberschneiden. Somit durfen sich die Kanten von G ausschließlich inden Knoten beruhren.

29/61

Einbettung I

Definition

Fur zwei endliche ungerichtete Graphen G = (VG ,EG ) und H = (VH ,EH)heißt eine Abbildung der Knotenmengen, ϕ : VG → VH Einbettung von Gin H. Dabei wird G als Gast- und H als Wirtsgraph bezeichnet.

30/61

Einbettung II

DilatationUnter der Dilatation einer Grapheneinbettung wird die maximale Knotendistanzder Bilder von benachbarten Knoten aus G in H verstanden:

dilation(ϕ′(EG )) = max |ϕ′(u, u′)| mit (u, u′) ∈ EG

31/61

Einbettung III

Kongestion

Die Kongestion einer Grapheneinbettung ist die maximale Anzahl von Kanten,deren Wege hinsichtlich der Wegewahl ϕ′(EG ) eine einzelne Kante aus Hbenutzen:

cong(ϕ′(EG )) = max |{(u, u′) ∈ EG |(v , v ′) ∈ ϕ′(u, u′)}| mit (v , v ′) ∈ EH

32/61

Einbettung IV

ReduktionDie Reduktion einer Grapheneinbettung entspricht der maximalen Anzahl vonKnoten des Gastgraphen, welche einem einzelnen Knoten des Wirtsgraphenzugeordnet werden:

load(ϕ) = max |{u ∈ VG |ϕ(u) = v}| mit v ∈ VH

33/61

Einbettung V

Expansion

Die Expansion einer Grapheneinbettung ist das Verhaltnis zwischen denKardinalitaten der gesamten Knotenmenge des Wirtsgraphen und der durchdie Einbettung bestimmten Bildmenge von Knoten des Gastgraphen:

expansion(ϕ) =|VH ||ϕ(VG )|

34/61

Agenda

4 OperationsmodiSynchronAsynchron

35/61

Synchron

Verbindungsaufbau: Alle Prozesse eines Kommunikators forderngleichzeitig eine Verbindung an

Datenubertragung: Signale werden im festen Verhaltnis zu einemzentralen Takt gesendet bzw. empfangen

36/61

Asynchron

Verbindungsaufbau: Anforderung von Verbindungen kann zu beliebigenZeitpunkten erfolgen

Datenubertragung: Nutzung von Handshake-Protokollen odermitgefuhrten lokalen Takten

37/61

Agenda

5 Kommunikationsflexibilitat

38/61

Kommunikationsflexibilitat

Unicast (1-to-1)

In einem Unicast-Netz sind ausschließlich Einzelverbindungen moglich, beidenen eine Quelle zeitgleich nur mit einer Senke kommuniziert.

Multicast (1-to-N)

Ein Netz ist Multicast-fahig sobald eine Quelle zeitgleich mit einerUntermenge aller verfugbaren Senken kommunizieren kann.

Broadcast (1-to-all)

Ein Netz mit Broadcast-Moglichkeiten unterstutzt Kommunikation zwischeneiner Quelle und allen verfugbaren Senken. Somit ist der Broadcast einSpezialfall des Multicast.

39/61

Kommunikationsflexibilitat

Unicast (1-to-1)

In einem Unicast-Netz sind ausschließlich Einzelverbindungen moglich, beidenen eine Quelle zeitgleich nur mit einer Senke kommuniziert.

Multicast (1-to-N)

Ein Netz ist Multicast-fahig sobald eine Quelle zeitgleich mit einerUntermenge aller verfugbaren Senken kommunizieren kann.

Broadcast (1-to-all)

Ein Netz mit Broadcast-Moglichkeiten unterstutzt Kommunikation zwischeneiner Quelle und allen verfugbaren Senken. Somit ist der Broadcast einSpezialfall des Multicast.

39/61

Kommunikationsflexibilitat

Unicast (1-to-1)

In einem Unicast-Netz sind ausschließlich Einzelverbindungen moglich, beidenen eine Quelle zeitgleich nur mit einer Senke kommuniziert.

Multicast (1-to-N)

Ein Netz ist Multicast-fahig sobald eine Quelle zeitgleich mit einerUntermenge aller verfugbaren Senken kommunizieren kann.

Broadcast (1-to-all)

Ein Netz mit Broadcast-Moglichkeiten unterstutzt Kommunikation zwischeneiner Quelle und allen verfugbaren Senken. Somit ist der Broadcast einSpezialfall des Multicast.

39/61

Agenda

6 KontrollstrategieZentralDezentral

40/61

Zentral

Steuerung der Netzwerkkomponenten uber eine gemeinsam genutztezentrale Instanz

Pro: Effektive Nutzung aller verfugbaren Ressourcen moglich

Contra: Hoher Aufwand bei Rekonfiguration

41/61

Dezentral

Individuelle und selbstandige Steuerung der Koppelelemente durch dieNetzwerkkomponenten selbst

Pro: Vereinfachung des Rekonfigurationsprozesses

Contra: Lokale Sicht auf das Netz

42/61

Agenda

7 VermittlungsverfahrenSchaltmethodikVermittlungsfunktionDatenflusssteuerung

43/61

Leitungsvermittlung

Aufbau einer vollstandigen, durchgangigen Verbindung zwischen Quelleund Senke

Reihenfolgengetreue Ubertragung des Bitdatenstroms

Kommunikationsweg bleibt wahrend der gesamten Informations-ubertragung bestehen

44/61

Paketvermittlung

Verteilung einer Nachricht auf mehrere Dateneinheiten (Pakete)

Vermittlung erfolgt aufgrund von Steuerinformationen innerhalb derDateneinheiten

Teilstrecken sind nur wahrend der Ubertragung einer Dateneinheitblockiert

45/61

Nachrichtenvermittlung

Vermittlungseinheiten entsprechen anwendungsorientiertenGesichtspunkten

I.d.R. erfolgt dennoch eine Unterteilung in mehrere Dateneinheiten

Freigabe einer Teilstrecke erfolgt nach Ubertragung einer vollstandigenNachricht

46/61

Verbindungsorientierte Kommunikation

Etablierung einer Verbindung zwischen Quelle und Senke, welche fur diegesamte Dauer der Datenubertragung genutzt wird

Verbindung kann physikalisch auf eine feste Leitung abgebildet werden(Leitungsvermittlung) oder lediglich virtuell existieren (Paketvermittlung)

47/61

Verbindungslose Kommunikation

Ausschließlich in paketvermittelnden Systemen moglich

Auswahl des Wegs erfolgt an allen Zwischenstationen fur jedes Paketeinzeln anhand definierter Metriken

48/61

Store-and-Forward

Weiterleitung einer Dateneinheit an einer Vermittlungsstation erfolgt erstnach vollstandiger Zwischenspeicherung

Speicherstrategien:

Input BufferingOutput BufferingCommon Buffering

49/61

Wormhole-Routing

Aufteilung des Headers in kleinere Einheiten (sog. Flits)

Ein Flit enthalt Schaltungsinformation fur jeweils eine Vermittlungsstelle

Mit Hilfe der Flits wird der Weg zwischen Quelle und Senke etabliert

Die Freigabe erfolgt uber eine Kennung am Ende der Dateneinheit

Im Falle einer Blockierung wird das Senden unterbrochen bis dieBlockierung aufgehoben ist

50/61

Virtual-Cut-Through-Routing

Ablauf einer Kommunikation identisch zum Wormhole-Routing

Im Falle einer Blockierung kann ein Paket allerdings zwischengespeichertwerden

51/61

Agenda

8 KonflikteKonflikttypenKonfliktbehandlung

52/61

Konflikttypen

PE 1 PE 2 PE 3

AusgangskonfliktInterner Konflikt

Abbildung: Mogliche Netzkonflikte

53/61

Konfliktbehandlung bei Leitungsvermittlung

Block:

Verbindungsaufbau schreitet bis zur Blockierung fortAufgebaute Verbindungen bleiben bestehen, bis zur Auflosung desKonflikts

Drop:

Abbruch des Verbindungsaufbaus im Falle einer Blockierung

Modified Drop:

Verbindungsaufbau wird nach einer definierten Wartezeit abgebrochen,wenn eine Blockierung auftritt

54/61

Konfliktbehandlung bei Paketvermittlung

Block:

Zwischenspeicherung der eintreffenden Pakete im Falle einer BlockierungSignalisierung an vorhergehende Stufen, bei Erschopfung der verfugbarenRessourcen

Drop:

Ablauf identisch zum Block-Verfahren, allerdings erfolgt keineSignalisierung bei einem PufferuberlaufPaketverluste sind moglich

Modified Drop:

Signalisierung der vorhergehenden Stufe erfolgt bereits bei einerdefinierten Auslastung des verfugbaren SpeichersKommt es dennoch zu einem Pufferuberlauf, werden die Pakete verworfen

55/61

Agenda

9 FehlerbeherrschungFehlersichere SystemeFehlertolerante Systeme

56/61

Fehlersichere Systeme

DefinitionIn einem fehlersicheren System wird ein auftretender Fehler erkannt und dasSystem in einen sicheren Zustand uberfuhrt. Dabei ist keine Rekonfigurationder Hard- oder Software notwendig.

57/61

Fehlertolerante Systeme

Fehlerkompensierendes System

In einem fehlerkompensierendem System ist das Auftreten eines Fehlerstransparent fur den Anwender. Das System bleibt im Fehlerfall unverandert,allerdings werden die Auswirkungen des Fehlers unterdruckt, so dass dasErgebnis dennoch korrekt ist.

Fehlerbehebendes System

Bei einer Fehlerbehebung wird das System im Fehlerfall durch Rekonfigurationder Hard- oder Software in einen fehlerfreien Zustand uberfuhrt. DieseUmstrukturierung ist i.d.R. mit Einschrankungen der Leistungsfahigkeitverbunden und somit fur den Nutzer nicht mehr transparent.

58/61

Fehlertolerante Systeme

Fehlerkompensierendes System

In einem fehlerkompensierendem System ist das Auftreten eines Fehlerstransparent fur den Anwender. Das System bleibt im Fehlerfall unverandert,allerdings werden die Auswirkungen des Fehlers unterdruckt, so dass dasErgebnis dennoch korrekt ist.

Fehlerbehebendes System

Bei einer Fehlerbehebung wird das System im Fehlerfall durch Rekonfigurationder Hard- oder Software in einen fehlerfreien Zustand uberfuhrt. DieseUmstrukturierung ist i.d.R. mit Einschrankungen der Leistungsfahigkeitverbunden und somit fur den Nutzer nicht mehr transparent.

58/61

Agenda

10 Literaturverzeichnis

59/61

Literaturverzeichnis I

[Gil91] Giloi, Wolfgang K.Rechnerarchitektur, Springer-Verlag 1991.ISBN: 3-540-56355-5

[Cul99] D. E. Culler, J. P. SinghParallel Computer Architecture, Morgan Kaufmann Publishers 1999.ISBN: 1-55860-343-3

[SchJ96] Th. Schwederski, M. JurczykVerbindungsnetze, B. G. Teubner Stuttgart 1996.ISBN: 3-519-02134-X

[TanGoo99] A. S. Tanenbaum, J. GoodmanComputerarchitektur, Prentice Hall 1999.ISBN: 3-8272-9573-4

60/61

Literaturverzeichnis II

[Vert] Weisstein, Eric W.Vertex-Transitive Graph, 2010.http://mathworld.wolfram.com/Vertex-TransitiveGraph.html

[Edge] Weisstein, Eric W.Edge-Transitive Graph, 2010.http://mathworld.wolfram.com/Edge-TransitiveGraph.html

61/61