Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Routing auf dem Hypercube Natalya Moriz 21. Januar 2008 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Inhaltsverzeichnis 1 2 3 4 5 Einführung Problemstellung Modell Permutation Routing Problem Hypercube Routing-Algorithmen Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Analyse Analyse der Phase I Abschätzung für die Anzahl der aktiven Pakete Abschätzung der gesamten Anzahl von Transitionen auf einem Pfad 6 Analyse der Phase II Beseitigung der Annahme Zusammenfassung Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Optimierung und Netzwerk Design heutige Realität: Wirtschaft benötigt immer höhere Rechenleistungen ⇒ Bedarf an Rechenleistung steigt sehr stark an mehrere Prozessoren müssen gleichzeitig an der Problemlösung arbeiten gefragt: ein Mechanismus zur Kommunikation von Prozessoren Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung in diesem Vortrag Fundamentales Problem des parallelen Programmieren: effiziente Kommunikation in den dünnen Kommunikationsnetzwerken in dieser Arbeit wird präsentiert: eine Netzwerkfamilie zwei Routing Algorithmen Analyse der Algorithmen Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Modell Permutation Routing Problem Problemstellung Problem: Kommunikationsnetzwerk mit N Prozessoren jeder Prozessor hat lokalen Speicher Prozessoren sind durch Kommunikationskanäle verbunden Ziel: Nachrichten von einigen Prozessoren zu den anderen synchron und möglichst effizient verschicken zu können. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Modell Permutation Routing Problem Modell Kommunikationsnetzwerk - gerichteter Graph mit N Knoten: jeder Knoten - ein Prozessor jede Kante - ein Kommunikationskanal Nachrichten - Pakete mit Startstationen und Endstationen Im Modell gilt auch: eine Kante kann in einem Zeitschritt ein Paket transportieren ein Paket kann nicht mehr als eine Kante pro Schritt überqueren jeder Knoten hat einen Buffer, wo die Pakete eine Warteschlange bilden können jeder Knoten sendet höchsten ein Paket und ist Adresse für höchstens ein Paket Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Modell Permutation Routing Problem Modell Unter diesen Bedingungen benötigt: ein Routing-Algorithmus Routing-Algorithmus berechnet für jedes Paar von Knoten (Startund Endstationen) eine Route (Reihenfolge von Kanten), die diese Knoten verbindet Effizienz des Algorithmus - Anzahl der Schritte für die Lösung des Permutation Routing Problem Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Modell Permutation Routing Problem Permutation Routing Problem (PRP) Permutation Routing Problem jeder Prozessor Pi , i ∈ {0, . . . , N − 1} sendet eine Nachricht zum Prozessor Pπi , wobei π - eine Permutation Traumlösung: in einem parallelen Schritt benötigt: jeder Knoten im Graphen (jeder Prozessor im Netzwerk) soll mit jedem verbunden sein nur für die kleine Anzahl der Prozessoren möglich technisch nicht vernünftig realisierbar Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Modell Permutation Routing Problem dünnes Neztwerk sparse (dünner) Graph Ein Graph heißt dünn (sparse), falls gilt: |E | << V 2 ( E Menge der Kanten, V Menge der Knoten) jeder Knoten kommuniziert nur mit wenigen Nachbarn die meisten Pakete müssen einige dazwischenliegende Knoten besuchen, bevor sie ihre Endstationen erreichen Stauungen oder Flaschenhalseffekte möglich Neus Problem: Entwurf einer Familie von dünnen Netzwerken zusammen mit einem Routing-Algorithmus, der PRP in der kleinsten Anzahl der parallelen Schritte löst. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Warum Hypercube eines der bis heute bekannten leistungsstärksten Kommunikationsnetzwerken viele andere Netzwerke können von dem Hypercube effizient simuliert werden Sei: N = {0 ≤ i ≤ N − 1} die Menge der Prozessoren einer Parallelmaschine N = 2n für eine ganze Zahl n x = (x1 . . . xn ) binäre Darstellung einer Nummer aus 0≤i ≤N −1 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Definitionen Hypercube der Dimension n Der n-dimensionale Hypercube ist ein Netzwerk mit N = 2n Knoten (Prozessoren) und folgender Netztopologie: ein Knoten x hat direkte Verbindung zu einem Knoten y genau dann, wenn sich x und y genau in einem Bit unterscheiden. Durchmesser eines Graphen Sei G = (V , E ) ein ungerichteter Graph, u, v ∈ V und dist (u, v ) die Länge des kürzesten Weges von u nach v . Dann ist der Durchmesser d (G ) des Graphen G definiert als: d (G ) = max {dist (u, v ) ; u, v ∈ V } Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Hypercube der Dimensionen 0, 1, 2, 3 und 4 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Eigenschaften des Hypercube der Dimension n besitzt 2n Knothen und n2n−1 ungerichtete Kanten sein Durchmesser ist n gesamte Anzahl eingehender und ausgehender Kanten ist 2nN, da jeder Knoten n ausgehende und n eingehende Kanten hat besitzt rekursive Struktur - der Hypercube der Dimension n enthält 2 Kopien des Hypercube der Dimension n − 1 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Idee von Bit-Fixing-Routing-Algorithmus Algorithmus berechnet Route für ein Paket. Eingabe: a -Startstation des Paketes mit a = (a1 , . . . an ) b -Endstation des Paketes mit b = (b1 , . . . , bn ) Idee: Jedes Bit der Startstation und der Endstation wird der Reihe nach verglichen und die nächste Kante wird für die Route genommen, falls es notwendig ist. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Bit-Fixing-Routing-Algorithmus für den n-Hypercube 1 2 3 for i = 1 to n do if ai 6= bi überquere die Kante (b1 , . . . , bi−1 , ai , . . . , an ) → (b1 , . . . , bi−1 , bi , ai+1 , . . . , an ) Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Beispiel auf dem 4-dimensionalen Hypercube Eingabe: a = (0000), b = (1011) i = 1: 0 6= 1 ⇒ (0000) → (1000) i = 2: 0 = 0 ⇒ (1000) i = 3: 0 6= 1 ⇒ (1000) → (1010) i = 4: 0 6= 1 ⇒ (1010) → (1011) (0000) → (1000) → (1010) → (1011) Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Aussicht Nachteil: pure Anwendung des Bit-Fixing-Routing-Algorithmus für Routen von N Pakete führt oft zu Stauungen Ausweg: Randomisierung der Daten für das Umgehen der ungünstigen Permutationen Parallelität zu dem Quicksort-Algorithmus: bekannt - worst case Ω n2 Vergleichsoperationen Randomisierter Quicksort - erwartete Anzahl Vergleichsoperationen O (n log (n)) Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Idee von Two-Phase-Routing-Algorithmus Eingabe: a -Startstation des Pakets mit a = (a1 , . . . an , ) b -Endstation des Pakets mit b = (b1 , . . . , bn ) Idee: erst sende jedes Paket von seiner Startstation zu einer zufällig ausgewählten Zwischenstation, dann von der Zwischenstation zu seiner ursprünglichen Endstation Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Two-Phase-Routing-Algorithmus für den n-Hypercube 1 Phase I - wähle zufällig eine Zwischenstation x = (x1 , . . . xn , ) für das Paket und sende Paket von a nach x mit Hilfe des Bit-Fixing-Routing-Algorithmus 2 Phase II - sende Paket von x nach b mit Hilfe des Bit-Fixing-Routing-Algorithmus Permutation Routing Problem: Two-Phase-Routing-Algorithmus wird parallel für alle N Pakete ausgeführt Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Bit-Fixing-Routing-Algorithmus Two-Phase-Routing-Algorithmus Bemerkung Wahl der Zwischenstationen für jedes Paket unabhängig Warteschlangepolitik - wenn die Warteschlange in einem Knoten zum Anfang eines Zeitschritts nicht leer ist, wird ein Paket durch eine mit diesem Knoten verbundene Kante während dieses Zeitschritts gesendet diese Routing-Strategie besitzt asymptotisch optimale parallele Laufzeit Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Analyse der Phase I.Theorem 1 Theorem Mit der Wahrscheinlichkeit 1 − O N −1 können alle Pakete beim gegebenen Permutation Routing Problem nach dem Schema des Two-Phase-Routing-Algorithmus zu ihren Endstationen auf dem n-Hypercube in O (n) = O (log (N)) parallelen Schritten geroutet werden. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Analyse der Phase I. Annahmen Annahmen: kein Paket darf mit der Phase II beginnen, bevor alle Pakete die Phase I beendet haben zufällige Wahl einer Zwischenstation x = (x1 , . . . , xn ) : jedes xi wird unabhängig auf 0 mit der Wahrscheinlichkeit und auf 1 mit der Wahrscheinlichkeit 12 gesetzt Natalya Moriz Routing auf dem Hypercube 1 2 Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Lemma Definiere: T1 (M) - Anzahl der Schritte in Phase I für ein Paket M X1 (e) - gesamte Anzahl der Pakete, die eine Kante e während der Phase I überqueren Bemerkung : In jedem Schritt : entweder überquert ein Paket M eine Kante oder befindet sich in einer Warteschlange, denn ein anderes Paket überquert eine Kante auf seiner Route Lemma Seien e1 , . . . , em , m ≤ n - Kanten, die ein Paket M in der Phase I m P überquert. Dann: T1 (M) ≤ X1 (ei ) i=1 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Möglicher Paketpfad Definiere: ein möglicher Paketpfad - ein Pfad P = (e1 , . . . , em ) aus m ≤ n Kanten, der in Bit-Fixing-Algorithmus vorkommen kann, wobei für die Knoten v0 , . . . , vm gilt ei = (vi−1 , vi ) m P T1 (P) = X1 (ei ) i=1 Beachte: falls Phase I für alle Pakete mehr als T Schritte braucht, bedeutet es für einen Paketpfad P - T1 (P) ≥ T insgesamt 22n mögliche Paketpfade, da es 2n Startstationen und 2n Endstationen gibt Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Aussicht !Brauchen - eine Abschätzung der Abweichung vom m P Erwartungswert für T1 (P) = X1 (ei ) i=1 ? Chernoff-Schranke - erlaubt Wahrscheinlichkeit bestimmter Aussagen über die Summe von unabhängigen Zufallsvariablen abzuschätzen Problem - X1 (ei ) sind nicht unabhängig Idee für das Umgehen dieses Problems: 1 zu zeigen: nicht mehr als 6n verschiedene Pakete Kanten auf dem Pfad P überqueren 2 gewinnen Schranke mit höher Wahrscheinlichkeit für die gesamte Anzahl der Transitionen auf dem Pfad P (T1 (P)) Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Aktives Paket Sei P - ein möglicher Paketpfad aus m Kanten Aktives Paket in einem Knoten Ein Paket ist aktiv im Knoten vi−1 auf dem Pfad P, falls es den Knoten vi−1 erreicht hat und die Möglichkeit hat, die Kante ei zu dem Knoten vi zu überqueren. Bemerkung: Paket kann im vi−1 aktiv sein, falls sich vi−1 und vi im j. Bit unterscheiden Aktives Paket auf dem Pfad Ein Paket ist aktiv auf dem Pfad P, falls es in einem Knoten des Pfades P aktiv ist. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Vorbereitungen Ziel - gesamte Anzahl der aktiven Pakete auf einem Pfad abschätzen Definiere Zufallsvariable Hk , k ∈ {1, . . . , N} mit Hk = 1 0 Damit H = , falls Paket, das im Knoten k startet, auf P aktiv ist , sonst N P Hk - die gesamte Anzahl der aktiven Pakete k=1 Hk unabhängig : jedes Hk hängt nur von der Wahl der Zwischenstation für das Paket mit dem Start in k ab (Bild Tafel) Wahl der Zwischenstationen ist unabhängig für alle Pakete Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung E (H) Brauchen für Chernoff-Schranke - Abschätzung für E (H) Sei: vi−1 = (b1 , . . . , bj−1 , aj , aj+1 , . . . , an ) vi = (b1 , . . . , bj−1 , bj , aj+1 , . . . , an ) Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung E (H) 1 nur Pakete, die in einer der Adressen (∗, . . . , ∗, aj , . . . , an ) starten, wobei ∗ für 0 oder 1 steht, können vi−1 erreichen nicht mehr als 2j−1 aktive Pakete im Knoten vi−1 : . . · 1} = 2j−1 Möglichkeiten 2 . . · 2} · |1 · .{z | · .{z j−1 2 n−j+1 ein Paket erreicht vi−1 , falls seine Zwischenstation eine der Adressen hat (b1 , . . . , bj−1 , ∗, . . . , ∗) Die Wahrscheinlichkeit, dass ein Paket im vi−1 tatsächlich 1 1 aktiv ist: · . . . · = 2−(j−1) 2 | {z 2} j−1 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung E (H) Berechne erwartete Anzahl der aktiven Pakete pro Knoten: Definiere Zufallsvariable X i - Anzahl der aktiven Pakete in vi N−1 P Xk , wobei Xi = k=0 1 , falls Paket, das im Knoten k startet, in vi aktiv ist Xk = 0 , sonst Sei pk Wahrscheinlichkeit, dass Paket mit dem Start in k im Knoten vi aktiv ist. Dann gilt für jeden Knoten vi E X i = N X Xk pk ≤ k=1 Natalya Moriz j−1 2 X l=1 1 2j−1 = 2j−1 =1 2j−1 Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung E (H) Berechne erwartete Anzahl der aktiven Pakete auf einem Pfad: ein möglicher Pfad P = (e1 , . . . , em ) aus m ≤ n Kanten ⇒ nur m Knoten v0 , . . . , vm−1 betrachten Es gilt dann: E [H] = E "m−1 X # Xi = i=0 Natalya Moriz m−1 X E Xi ≤ m · 1 ≤ n i=0 Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Chernoff-Schranke Theorem Sei X1 , . . . , Xn unabhängige Poisson-Versuche mit Pr (Xi ) = pi . Sei n P X = Xi und µ = E [X ]. Dann gilt für R ≥ 6µ: i=1 Pr (X ≥ R) ≤ 2−R Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Anwendung Chernoff-Schranke H ist Summe von unabhängigen Zufallsvariablen mit E (H) ≤ n ⇒ nach dem Theorem mit R = 6n ≥ 6E [H]: Pr (H ≥ 6n) ≤ 2−6n Damit gezeigt: mit höher Wahrscheinlichkeit nicht mehr als 6n verschiedene Pakete überqueren Kanten auf einem Pfad P Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung T1 (P) Ziel: unter der Bedingung Pr (H ≥ 6n) ≤ 2−6n zu zeigen - aktive Pakete führen nicht mehr, als 30n Transitionen auf einem Pfad durch Pr (A) = Pr (A | B) Pr (B) + Pr A | B Pr B ≤ Pr (B) + Pr A | B | {z } | {z } ≤1 ≤1 Pr T1 (P) ≥ 30n ≤ Pr H ≥ 6n + Pr T1 (P) ≥ 30n H < 6n | {z } | | {z } {z } | {z } A B A Pr (T1 (P) ≥ 30n) ≤ 2−6n + Pr (T1 (P) ≥ 30n |H < 6n ) Natalya Moriz Routing auf dem Hypercube B Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung T1 (P) Behauptung 1 Pr (T1 (P) ≥ 30n |H < 6n ) ≤ 2−3n−1 Schritt 1. Falls ein Paket einen Pfad P in der Phase I des Algorithmus verlässt, wird es nie in dieser Phase auf den P zurückkehren: Annahme: ein im vi aktives Paket geht zu w 6= vi+1 über ⇒ der kleinste Index des Bits, indem sich vi+1 und w unterscheiden, kann nicht mehr in dieser Phase bestimmt werden (Tafel) Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung T1 (P) Schritt 2. Sei: ein Paket ist aktiv im Knoten vi−1 auf dem Pfad P ei = (vi−1 , vi ) vi−1 und vi unterscheiden sich in j. Bit ? Wie groß ist die Wahrscheinlichkeit, dass das Paket die Kante ei überquert? Annahme: Paket bestimmt die Bits in binärer Darstellung seiner Zwischenstation per unabhängigen zufälligen Münzewurf ⇒ es braucht geeigneten Wert für das j. Bit zu wählen ⇒ Wahrscheinlichkeit, dass Paket ei überquert, am höchsten 1/2 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung T1 (P) Schritt 3. Definiere: Versuch - jeder Punkt im Algorithmus, falls gilt : in einem Knoten vi−1 auf dem Pfad P befindet sich ein aktives Paket M, das die Kante ei überqueren kann erfolgreich , falls Paket M den Pfad P verlaesst Versuch ist versagend , sonst auf einem Pfad nicht mehr als 6n aktive Pakete ⇒ nicht mehr als 6n Erfolge jeder Versuch ist erfolgreich unabhängig mit Wahrscheinlichkeit mindestens 1/2 Anzahl der Versuche ist selbst Zufallsvariable Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung T1 (P) Schritt 4. Definiere Zufallsvariable Z - Anzahl der Köpfe beim 36n-maligen fairen Münzwurf Behauptung 2 Pr (T1 (P) ≥ 30n |H ≤ 6n ) ≤ Pr (Z ≤ 6n) Versuch - Münze werfen, Kopf - Erfolg (Verlassen des Pfades) und Zahl - Misserfolg (Verbleiben auf dem Pfad) Jedes Werfen ist unabhängig sei Werfen nicht fair, sondern neigend zum Erfolg mit Wahrscheinlichkeit mindestens 1/2 sobald es 6n Erfolge gegeben hat, darf kein Erfolg mehr vorkommen faires Werfen wird die Wahrscheinlichkeit nur verkleinern Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Chernoff-Schranke Theorem Sei X1 , . . . , Xn unabhängige Poisson-Versuche mit Pr (Xi ) = pi . n P Sei X = Xi und µ = E [X ]. Dann gilt für 0 < δ < 1: i=1 Pr (X ≤ (1 − δ) µ) ≤ e −µδ Natalya Moriz 2 /2 Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung T1 (P) Z= 36n P Z1 mit Z1 = i=1 Pr (Z1 ) = 1 0 , Muenze zeigt den Kopf , sonst 1 2 E [Z ] = E " 36n X # Z1 = 36n X i=1 Nach Theorem mit δ = 2 3 E [Z1 ] = i=1 1 ∗ 36n = 18n 2 gilt: 2 −18n( 2 ) 3 2 ≤e 2 Pr (Z ≤ 6n) = Pr Z ≤ 1 − 18n = e −4n ≤ 2−3n−1 3 |{z} µ=E[Z ] Pr (T1 (P) ≥ 30n |H ≤ 6n ) ≤ Pr (Z ≤ 6n) ≤ 2−3n−1 Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Abschätzung T1 (P) Schritt 5. Setzte Ergebnis aus Schritt 4 ein: −3n −1 Pr (T1 (P) ≥ 30n) ≤ 2−6n + 2−3n−1 = 2−3n 2 ≤ 2−3n |{z} +2 ≤1/2 Pr (T1 (P) ≥ 30n) ≤ 2−3n max 22n mögliche Paketpfade ⇒ Wahrscheinlichkeit, dass T1 (P) ≥ 30n für jeden möglichen Pfad P erfüllt ist, begrenzt durch 22n · 2−3n = 2−n = O N −1 Fazit: mit der Wahrscheinlichkeit 1 − O N −1 braucht kein Paket mehr als 30n Schritte für die Ausführung der Phase I . Analyse der Phase I beendet. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Analyse der Phase II Annahme lautete: Ausführung der Phase II nach der kompletten Ausführung der Phase I ⇒ Ausführung der Phase II betrachte als rückgängige Ausführung der Phase I : Pakete starten in ihren zufälligen Zwischenstationen und werden nach ihren Endstationen verschickt Fazit: mit der Wahrscheinlichkeit 1 − O N −1 braucht kein Paket mehr als 30n Schritte für die Ausführung der Phase II . Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Analyse der Phase I Analyse der Phase II Beseitigung der Annahme Schlussfolgerung Annahme - Phase II nur nach der kompletten Ausführung der Phase I - kann aus dem Beweis entfernt werden Jedes Paket beendet Phase I und II mit der Wahrscheinlichkeit 1 − O N −1 nach höchsten 60n Schritten, unabhängig davon, wie die Phasen aufeinander wirken. Damit ist die Theorem 1 bewiesen. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Zusammenfassung Bit-Fixing-Algorithmus ist (für ein Paket) optimal paralleler Two-Phase-Routing Algorithmus ist optimal im Fall des Routings auf dem Hypercube ist das Netzwerk nicht voll ausgelastet Der Bedarf nach der größeren Belastung kann mit anderen Arten der Netzwerke gelöst werden. Natalya Moriz Routing auf dem Hypercube Einführung Problemstellung Hypercube Routing-Algorithmen Analyse Zusammenfassung Vielen Dank für Ihre Aufmerksamkeit! Natalya Moriz Routing auf dem Hypercube