Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Clustering Clustering mit openMosix von Christian Wiese Stefan Krause.

Ähnliche Präsentationen


Präsentation zum Thema: "Clustering Clustering mit openMosix von Christian Wiese Stefan Krause."—  Präsentation transkript:

1 Clustering Clustering mit openMosix von Christian Wiese Stefan Krause

2 Übersicht ● Begriffsdefinitionen ● Cluster-Typen ● Realisierung ● PVM ● MPI ● openMosix ● Demonstration openMosix Cluster

3 Begriffsdefinitionen ● Parallele Datenverarbeitung Konzept zur Steigerung der Ausführungs- geschwindigkeit eines Programms durch Aufteilung des Programms in n Fragmente, die simultan ausgeführt werden können. ● Cluster (als Spezialisierung eines VS) Lose gekoppelter Verbund aus n Rechen- systemen (Knoten), die parallele Daten- verarbeitung durchführen.

4 Cluster-Typen ● Fail-over Cluster ● Hochverfügbare Dienste ● Load-balancing Cluster ● Fokus liegt auf Auslastung einzelner Knoten ● Verteilung von Anfragen an wenig ausgelastete Knoten. ● z.B. bei stark frequentierten Webservern ● meistens mehr Knoten als ein Fail-over Cluster

5 Cluster-Typen ● HPC (High Performance Computing) Cluster ● Knoten sind auf hohe Performance ausgelegt ● Geschwindigkeitsgewinn durch Parallelisierung / Verteilung von Prozessen auf n Knoten

6 Realisierung ● PVM ● MPI ● openMosix

7 PVM – Parallel Virtual Machine ● Ermöglicht die kooperative Nutzung einer Menge von Rechensystemen zur Durchführung von nebenläufigen / parallelen Berechnungen in heterogenen Umgebungen ● architekturunabhängig ● besteht aus Software-Tools- und Bibliotheken ● entstand als Forschungsprojekt ● Designziel: Portabilität

8 PVM - Prinzipien ● Benutzer kann Knoten der PVM definieren ● für PVM-Applikation ist Abstraktion von der Hardware optional (Bestimmte Tasks können auf der geeignetsten Hardware ausgeführt werden) ● Explizierter Nachrichtenaustausch ● Nachrichtenlänge nicht begrenzt ● Multi-Prozessor Unterstützung

9 PVM – Architektur I PVM daemon PVM library Application PVM daemon PVM library Application

10 PVM – Architektur II Maste r Slav e Master - Slave Node-only Node 1 Node 4 Node 3 Node 2

11 MPI – Message Passing Interface ● Spezifikation einer Bibliothek zum Nachrichtenaustausch ● Standardisiert ● Komitee aus 40 Experten aus F&E ● viele Implementationen verfügbar ● MPICH, LAN ● Entwicklungsgrund: viele proprietäre APIs von MPP-System-Herstellern für den Nachrichtenaustausch verhindern portable parallele Applikationen ● Designziel: Performance

12 openMosix ● Kernelerweiterung für SSI-Clustering ● für UP und SMP Knoten verbunden durch LAN (Ethernet, Gigabit-Ethernet, ATM) ● adaptive Algorithmen für Ressourcenteilung ● preemptive / transparente Prozessmigration zur Lastverteilung ● verhindert Thrashing bei Knoten

13 openMosix - Ziele ● Cluster-Performance optimieren ● Multi-User Umgebung realisieren ● sequentielle / parallele Applikationen ausführen ● Kompatibilität: keine Anpassung von vorhandener SW notwendig ● keine Abhängigkeiten von Bibliotheken (vgl. PVM & MPI) ● dynamische Konfiguration der Knoten-Menge

14 openMosix - Kernelalgorithmen ● Ressourcenverwaltung ● Lastverteilung ● Speichermanagement ● Prozessmigration

15 openMosix - Ressourcenverwaltung ● Speichermanagement ● max. Anzahl von Prozessen in RAM -> Vermeidung Thrashing & Swapping ● Algorithmus wird bei starken Paging angestoßen -> Prozess wird zu Knoten mit ausreichend Speicher migriert ● Lastverteilung ● Mathematisches Modell aus Wirtschaftswissenschaften ● Totale Auslastung heterogener Ressourcen (CPU, Speicher, Bandbreite) wird mit „Kostenfunktion“ abgebildet

16 openMosix – Prozessmigration I Deputy Link-Layer User Kernel Remote Link-Layer UHN

17 openMosix – Prozessmigration II ● User-Kontext / Remote (migierbar) Programmcode, Stack, Daten, Register ● System-Kontext / Deputy (UHN abhängig) verwendete Ressourcen, Kernel-Stack ● Link-Layer ● Kommunikation zwischen Remote & Deputy ● Systemaufrufe, Signale, Daten ● Read-ahead caching, bei Remote-Kopiervorgängen -> Overhead-Vermeidung ● Remote-Prozesse (auf entfernten Knoten) sind von anderen Prozessen auf diesem Knoten isoliert

18 openMosix - Dateizugriff ● Direct File System Access (DFSA) ● Designziel: Overhead-Vermeidung ● wenn möglich werden Systemaufrufe lokal ausgeführt ● arbeitet mit Lastverteilung zusammen. I/O lastige Prozesse werden auf Knoten migriert, auf dem sie die meisten I/O-Operationen durchführen

19 openMosix - Installation ● openMosix-Kernel-Patch anwenden ● User-Tools installieren ● Knoten neu booten Alternative: ● Terminal Server aufsetzen, der Kernel und Root-FS für Knoten zur Verfügung stellt ● Knoten booten über LAN vom Terminal Server

20 Quellen ● PVM ● MPI ● openMosix ● Howtos other-formats/html_single/ ● openMosix : openMosix-HOWTO.html ● Linux Parallel Processing : Parallel-Processing-HOWTO.html ● Linux Cluster : Cluster-HOWTO.html


Herunterladen ppt "Clustering Clustering mit openMosix von Christian Wiese Stefan Krause."

Ähnliche Präsentationen


Google-Anzeigen