rechnerarchitektur sose 2020 - netzwerk · rechnerarchitektur sose 2020 netzwerk jian-jiachen tu...
Post on 19-Oct-2020
7 Views
Preview:
TRANSCRIPT
-
Rechnerarchitektur SoSe 2020Netzwerk
Jian-Jia Chen
TU Dortmund
Teilweise basierend auf Material von Michael Engel, Gernot A. Fink undR. Yahyapour
Jian-Jia Chen (TU Dortmund) 1 / 35
-
Was ist die Verwendung von Interconnects?
Systemkomponenten sollen zur Kommunikation von Datenmiteinander verbunden werden
• Prozessoren werden miteinander verbunden• Prozessoren und Speicherbänke• Prozessoren und Caches• Caches und Caches• I/O Geräte
Jian-Jia Chen (TU Dortmund) 2 / 35
-
Allgemeine Verbindungsarchitektur für MP-SystemQuelle:
R.Yahyapour,
ehem.TU
Dortm
und,nach
Culler/S
ingh/Gupta,
1999
Jian-Jia Chen (TU Dortmund) 3 / 35
-
Motivation
Warum sind Interconnects so wichtig?• Interconnects beeinflussen maßgeblich die Skalierbarkeit desSystems:
• Wie groß kann das System werden?• Wie einfach ist es dem System mehr Prozessoren
hinzuzufügen?• Interconnects beeinflussen die Performance undEnergieeffizienz:
• Wie schnell können Prozessoren, Caches, und Speichermiteinander kommunizieren?
• Wie groß sind die Latenzen bei Speicherzugriffen?• Wieviel Energie wird bei der Kommunikation verwendet?
Jian-Jia Chen (TU Dortmund) 4 / 35
-
Wesentliche Charakteristika von Interconnects
Topologie• Legt fest wie die Switches miteinander verbunden sind• Beeinflusst das Routing, Realibilität, Durchsatz, Latenz undFertigungskomplexität
Routing• Wie wird eine message von der Quelle zum Ziel über Switchesund Kanäle geleitet
• Statisch oder adaptive VerfahrenBufferung and Flusskontrolle (Flow Control)
• Was wird im Netzwerk gespeichert?• Ganze Pakete, Teile von Paketen, etc?• Wie wird der Fluss bei überbelegung geregelt?• Fragestellung ist eng mit dem Routing verbunden
Jian-Jia Chen (TU Dortmund) 5 / 35
-
Verbindungsstukturen von Interconnects
• Das Verbindungsnetz kann definiert werden als Graphbestehend aus
• Rechenknoten,• Kommunikationsknoten (= Switches) und• Kommunikationskanälen.
• Netzwerk-Topologie beschreibt Verbindungsstruktur zwischenKnoten mit Kommunikationsfähigkeiten (d.h. i.d.R.Kommunikationsknoten)
• Kommunikationsknoten i.d.R. als Switches ausgelegt
Jian-Jia Chen (TU Dortmund) 6 / 35
-
Bewertungskriterien für Netzwerke
• Hardware Komplexität (Kosten)• Latenz in der Anzahl an Hops oder Nanoseconds• Maß an Übertragungskonflikten (Contention)• Energieverbrauch• Bandbreite• ...
Jian-Jia Chen (TU Dortmund) 7 / 35
-
Bewertungskriterien für Netzwerke
• Knoten-Grad :Anzahl der mit einem Knoten oder Schalter verbundene Kanäle(betrachtet werden hier i.d.R. nur Kommunikationsknoten!)
• Grad eines Netzwerkes:Der maximale Knotengrad im Netzwerk
• Durchmesser :Länge des maximalen kürzesten Pfades in dem Netzwerkzwischen zwei beliebigen Knoten
• Halbierungsbandbreite (bisection bandwidth):• Die minimale Anzahl der gerichteten Kanten in einem
Netzwerk zwischen zwei gleichen Hälften des Netzwerkes beibeliebiger Unterteilung, bzw.
• Anzahl paralleler Verbindungen zwischen zwei Netzwerkhälften
Jian-Jia Chen (TU Dortmund) 8 / 35
-
Verbindungsstrukturen
Topologien
Jian-Jia Chen (TU Dortmund) 9 / 35
-
Topologien
Lineare Felder / Arrays©
2003Elsevier
Science
Grad der Knoten: 2 für alle inneren Knoten1 für Randknoten
Durchmesser: N − 1Halbierungsbandbreite: 1 (i.S. Anzahl d. Links)Skalierbarkeit: keine Hardwarebeschränkung
Jian-Jia Chen (TU Dortmund) 10 / 35
-
Topologien II
Ring-Topologien©
2003Elsevier
Science
Grad der Knoten: 2Durchmesser: bN/2c im bidirektionalen Fall
N − 1 im unidirektionalen FallHalbierungsbandbreite: 2 (i.S. Anzahl d. Links)Skalierbarkeit: keine Hardwarebeschränkung
Jian-Jia Chen (TU Dortmund) 11 / 35
-
Topologien III
Gitter / Meshes(in 2 und k Dimensionen)
©2003
Elsevier
Science
2-D (N = 16) k-DGrad der Knoten: 2 k für Eckknoten
≤ 4 ≤ 2k für innere KnotenDurchmesser: 6 k
(k√N − 1
)Halbierungsbandbreite: 4
(k√N)k−1
Jian-Jia Chen (TU Dortmund) 12 / 35
-
Topologien VI
Torus©
2003Elsevier
Science
2-D (N = 16) k-DGrad der Knoten: 4 2kDurchmesser: 4 kb k
√N/2c
Halbierungsbandbreite: 8 2(
k√N)k−1
Jian-Jia Chen (TU Dortmund) 13 / 35
-
Topologien V
Bäume (üblicherweise binär)©
Elsevier
Science
Grad der Knoten: 1 für Blatt-/Endknoten2 für Wurzelknoten3 für alle inneren Knoten
Durchmesser: 2 · blog2 NcHalbierungsbandbreite: 1
Hinweis: Bei baumartigen Verbindungsstrukturen sindRechenknoten nur mit Blattknoten verbunden.
Jian-Jia Chen (TU Dortmund) 14 / 35
-
Topologien VI©
Elsevier
Science
Fat Trees (≈ “dicke” Bäume)
Anzahl der Verbindungen verdoppelt sich mit jeder Ebene im Baum
Grad der Knoten: 1 für Blattknoten (= Rechenknoten)Durchmesser: 2 · blog2 NcHalbierungsbandbreite: log2 N
Jian-Jia Chen (TU Dortmund) 15 / 35
-
Topologien VI
Redundante Fat TreesQuelle
24/7Solutions
Weitere Verbesserung der Redundanz durch Replikation vonKommunikationsknoten im Baum und Verbindung zu allenNachfolgerknoten (insbes. mehrer Wurzeln)
Jian-Jia Chen (TU Dortmund) 16 / 35
http://24-7-solutions.net/reviews/cluster-arch.html
-
Topologien VII
Hyper-Kuben (hochdimensionale Würfel)Quelle
Foliensatz
vonCuller/S
ingh/Gupta
5D4D3D2D1D0D
3-D (N = 8) k-DGrad der Knoten: 3 k = log2 NDurchmesser: 3 kHalbierungsbandbreite: 4 2k−1
Jian-Jia Chen (TU Dortmund) 17 / 35
-
Verbindungsstrukturen
Realisierung von Switches
Jian-Jia Chen (TU Dortmund) 18 / 35
-
Realisierung von Switches
Cross Bar
• Schaltung direkterVerbindungen allermöglichen Knotenpaare
• Vorteil: Kommunikation zwischen Knoten via Switch ineinem Schritt möglich (nach Schaltung d. Verbindung)
• Nachteil: Extremer Hardware-Aufwand (N2 Schalter)
©2003
Elsevier
Science
Jian-Jia Chen (TU Dortmund) 19 / 35
-
Realisierung von Switches II
Omega-Netzwerk
• Schaltung von Verbindungenaller möglichen Knotenpaarein mehreren Stufen
⇒ multistage interconnectionnetwork (MIN)
• Vorteil gegenüber Cross Bar:Geringerer Hardware-Aufwand(nur (N/2) log2 N anstelle N2 Switch-Elemente)
• Nachteile:• Weiterleitung von Daten erfordert mehrere Teilschritte• Gegenseitige Blockierung von Datenpfaden möglich
©2003
Elsevier
Science
Jian-Jia Chen (TU Dortmund) 20 / 35
-
Realisierung von Switches III
Butterfly-Netzwerke©
Elsevier
Science
• Prinzip vergleichbar mit Omega-Netzwerk• Kommunikationswege folgen dem Prinzip des bit reversal• Rekursiver Aufbau:Elementares Schaltelement entspricht 2× 2 Butterfly
• Logarithmische Tiefe
Jian-Jia Chen (TU Dortmund) 21 / 35
-
Realisierung von Switches VI
BenesNetzwerke
©Elsevier
Science
• Aufbau aus zwei rückwärtig verbundenen Butterfly-Netzwerken• Alle Permutationen von paarweisen Knotenverbindungenschaltbar (bei offline Berechnung der Routen)
• Kann durch “Falten” in redundante Baumstruktur überführtwerden (dabei Bildung von “fat nodes”)
Jian-Jia Chen (TU Dortmund) 22 / 35
-
Realisierung von Switches VII
Benes Netzwerke Quelle:
R.Yahyapour,
ehem.TU
Dortm
und
000
001
010
011
100
101
110
111
Reihen
Stufen
0 1 2 3 4 5 6
Jian-Jia Chen (TU Dortmund) 23 / 35
-
Realisierung von Switches VII
Benes Netzwerke Quelle:
R.Yahyapour,
ehem.TU
Dortm
und
000
001
010
011
100
101
110
111
Reihen
Stufen
0 1 2 3 4 5 6
(r-1) - dimensionales Benes Netzwerk
(r-1) - dimensionales Benes Netzwerk
Jian-Jia Chen (TU Dortmund) 23 / 35
-
Realisierung von Switches VII
Benes Netzwerke Quelle:
R.Yahyapour,
ehem.TU
Dortm
und
0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
7
0 1 2 3 4 5 6 7
6 3 1 4 2 0 7 5
Quellen
Senken
Jian-Jia Chen (TU Dortmund) 23 / 35
-
Verbindungsstrukturen: Überblick©
2015Elsevier
Science
MIN = multistage interconnection network
Jian-Jia Chen (TU Dortmund) 24 / 35
-
Verbindungsstrukturen
Routing
Jian-Jia Chen (TU Dortmund) 25 / 35
-
Kommunikation in Verbindungsnetzen
• Prinzip: Datenaustausch erfolgt paketorientiert.Typisches Paketformat:
Quelle: R. Yahyapour, ehem. TU Dortmund
• Zwei grundlegende Mechanismen der Abstraktion:• Kapselung: Protokollinformation einer höheren Ebene wird
uninterpretiert auf niedrigerer Ebene mit übertragen• Fragmentierung: Aufteilung der Nachrichtenstruktur (einer
höheren Ebene) in Folge von Übertragunseinheiten
Beachte: • Abstraktionshierarchie in Parallelrechnern i.d.R.flacher als im LAN/WAN-Bereich
• Greifen enger/effizienter ineinander
Jian-Jia Chen (TU Dortmund) 26 / 35
-
Kommunikation in Verbindungsnetzen II
• “Mikrostruktur” von Datenpaketen: Aufteilung in sog. Flits(flow control bits)
Quelle: R. Yahyapour, ehem. TU Dortmund
Jian-Jia Chen (TU Dortmund) 27 / 35
-
Routing-Mechanismen©
Elsevier
Science
• Store-and-Forward : Pakete werden erst weitergeleitet, wennkomplett empfangen
• Cut-Through Routing : Flits eines Pakets werden einzelnweitergeleitet; Entscheidung für Routing zum nächsten Knotenfällt bereits, wenn Paketheader bekannt⇒ Übertragungslatenz ähnlich Pipelining reduziert!
Jian-Jia Chen (TU Dortmund) 28 / 35
-
Routing-Mechanismen II
Grundlegendes Problem von Routing-Verfahren:Auftreten von Kollisionen
• Mehr als ein Paket/Flit versucht dieselbe Verbindung zwischenzwei Knoten zu überqueren
• Kollisionen können in jedem Vermittlungsknoten auftreten[im Gegensatz zu circuit switching : komplette Route wird zu Beginn der Kommunikation
aufgebaut]
• Ein Paket/Flit kann übertragen werden• Wie andere(s) Paket(e) behandeln?
⇒ Vier Möglichkeiten zur Behandlung von Kollisionen
Jian-Jia Chen (TU Dortmund) 29 / 35
-
Routing-Mechanismen III
Möglichkeiten zur Kollisionsbehandlung:• Verwerfen des Pakets (im LAN/WAN-Bereich, insbes.Internet)
• Netzwerkprotokoll muss Verlust detektieren und ...• Neuübertragung initiieren.
• Puffern der blockierten Übertragung• in Verbindung mit Cut-Through Routing: Virtual Cut-Through
[nachfolgende Flits werden am Blockadepunkt in Puffer “aufgesammelt”]
• Puffergröße ggf. problematisch!• Blockieren der weiteren Übertragung
• in Verbindung mit Cut-Through Routing: Wormhole Routing[nur wenige (im Extremfall: eins) nachfolgende Flits werden am Blockadepunkt gepuffert]
• Rückstau problematisch[blockiert bei Wormhole Routing ggf. n Knoten im Netzwerk, n = Anz. der Flits]
• Umleitung von Paketen• Erfordert entsprechendes Routing-Verfahren
Jian-Jia Chen (TU Dortmund) 30 / 35
-
Routing: Wormhole vs. Virtual Cut-Through
Quelle: Tichy/Pankratius/Jannesari, KIT
Beachte: Nachrichten-Trailer zur Freigabe derKommunikationsknoten erforderlich
Jian-Jia Chen (TU Dortmund) 31 / 35
-
Routing-Mechanismen V
Weitergehendes Problem von Routing-Verfahren: Deadlocks• Problem vergleichbar der Situation beim gegenseitigenAusschluss: Für Übertragung von Nachrichten müssenphysikalische Kanäle exklusiv belegt werden
Quelle: Univ. Wisconsin-Madison
⇒ Zyklus im Kanalbelegungsgraphen signalisiert DeadlockMögliche Lösungen:
• Virtuelle Kanäle (und strikte Ordnung bei der Kanalbelegung)• Einschränkung der gültigen Routen:Routingverfahren selbst verhindert Entstehung von Zyklen⇒ Up*-Down*-Routing, Turn-Model Routing
Jian-Jia Chen (TU Dortmund) 32 / 35
-
Routing-Mechanismen V
Weitergehendes Problem von Routing-Verfahren: Deadlocks
• Problem vergleichbar der Situation beim gegenseitigenAusschluss: Für Übertragung von Nachrichten müssenphysikalische Kanäle exklusiv belegt werden⇒ Zyklus im Kanalbelegungsgraphen signalisiert Deadlock
Mögliche Lösungen:
• Virtuelle Kanäle (und strikte Ordnung bei der Kanalbelegung)• Einschränkung der gültigen Routen:Routingverfahren selbst verhindert Entstehung von Zyklen⇒ Up*-Down*-Routing, Turn-Model Routing
Jian-Jia Chen (TU Dortmund) 32 / 35
-
Up*-Down* Routing
Verfahren zum deadlock-freien (Wormhole-)Routing
Strategie ähnlich zum Routing in einem baumartigen Netzwerk:• Kanäle zwischen Verbindungsknoten sind bidirektional• Konstruiere minimalen Spannbaum über dieVerbindungsknoten⇒ Knoten können nach Position im Baum sortiert werden
• Kanten (d.h. richtungsgebundene Kanäle) werden als up bzw.down markiert (bzgl. Baum)
⇒ Jeder Zielknoten kann von jedem Quellknoten über Folge vonup und down-Kanten erreicht werden
⇒ Routen werden eingeschränkt auf:• Zunächst beliebige Folge von up Kanten• Dann “Umkehr” und beliebige Folge von down Kanten
Jian-Jia Chen (TU Dortmund) 33 / 35
-
Turn-Model Routing
Verfahren zum deadlock-freien Routing in gitterartigenNetzwerkstrukturen
Beobachtung: 8 Richtungswechsel (=̂ turns) in Routen mitbi-direktionalen Kanälen möglich (im 2D-Fall)
Grundidee: Richtungswechsel so einschränken, dass keine Zyklenentstehen können
Einfaches Verfahren: dimension order routing• Dimensionen im Gitter werden sortiert (z.B. x vor y vor ...)• Dann Routing gemäß der Dimensionsordnung vornehmen(d.h. zuerst in ±∆x dann ±∆y , ...; dabei ∆x etc. =̂ rel.Abstand zwischen Quelle und Ziel im Gitter)
Allgemeinere Lösungen: Verhindern von je zweiRichtungswechseln ausreichend für deadlock-freies Routing
Jian-Jia Chen (TU Dortmund) 34 / 35
-
Turn-Model Routing II
Beispiele für gültige Routingalgorithmen/-einschränkungen in 2Dnach
Culler/G
upta/SinghWest−first
North−last Negative−first
(jeweils inkl. entsprechend rotierter Schemata)
Jian-Jia Chen (TU Dortmund) 35 / 35
top related