Rechnerarchitektur SoSe 2020 - Netzwerk · Rechnerarchitektur SoSe 2020 Netzwerk Jian-JiaChen TU...

38
Rechnerarchitektur SoSe 2020 Netzwerk Jian-Jia Chen TU Dortmund Teilweise basierend auf Material von Michael Engel, Gernot A. Fink und R. Yahyapour Jian-Jia Chen (TU Dortmund) 1 / 35

Transcript of Rechnerarchitektur SoSe 2020 - Netzwerk · Rechnerarchitektur SoSe 2020 Netzwerk Jian-JiaChen TU...

  • 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