Clustering Clustering mit openMosix von Christian Wiese Stefan Krause.

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

GPU, processing unit?? Ein Projekt, das die Welt hätte verändern sollen, und eine kurze Einführung in einem spannenden Forschungsgebiet.
Anbindung mobiler Endgeräte über den Terminal Service
Zero Administration Initiative for Windows (ZAW)
Inhalt – Technische Grundlagen
:33 Internet Applikationen – Hard und Softwareplattform Copyright ©2003, 2004 Christian Donner. Alle Rechte vorbehalten. Architektur Moderner.
PC-Cluster.
Projekt Netzwerk von Tobias Dickel, Moritz Gesing, Daniel Jochem, Matthias Meister, Marc Nue und Moritz Raasch.
Übung 5 Mehrstufige Client/Server-Systeme mit Enterprise Java Beans
Enno Rehling und Roger Butenuth, Uni-GH Paderborn: Arminius: Software für Linux-basierte SCI-Cluster Arminius: Software für Linux-basierte SCI-Cluster.
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Präsentation zum Thema Netzwerk Von Jan Metz.
Systeme 1 Kapitel 5.1 Unix Scheduling WS 2009/101.
Microsoft Windows 2000 Terminal Services
SciAgents - Eine agentenbasierte Umgebung für verteilte wissenschaftliche Berechnungen Alexander StarkeSeminar Software Agenten
1A: POSIX POSIX (Portable Operating System) ist ein Standard für UNIX-Systeme. Er dient dazu, Programme portabel unter UNIX und Derivaten zu tauschen und.
OpenMP Präsentation im Rahmen des Seminars
Client-Server-Architekturen
Einführung Definitionen
1 NetWork File System © April 2002, G. Hellberg Network File System Konfiguration und Einsatz.
Replikation in Datenbanksystemen.
XML in Client-Server und GRID Architektur
Vortrag III Hier in der Vorlesungszeit! Anwesenheitspflicht Jede Gruppe hat 6 Minuten! Stellt eure GUI vor –was ihr besonderes gemacht habt –Spektakuläre.
HPC Architekturen und Anwendungen: Anforderungen und Notwendigkeiten
Concurrent Versions System
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
Was sind Cluster und wie sind sie aufgebaut
Marcel Riedel, Marcus Zelend, Danny Christl
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Entwicklung verteilter eingebetteter Systeme - Einführung
IGEL UMS Universal Management Suite Oktober 2011 Florian Spatz
Duo- und Quad Prozessor-Architektur
SKALIERBARE HARDWARE UNABHÄNGIGE LÖSUNGEN FÜR HSM, ARCHIVIERUNG UND SICHEREN DATENAUSTAUSCH YOUR DATA. YOUR CONTROL.
F.Ladstätter und R.Elsässer VP Wissenschaftliches Arbeiten und Präsentation 13. Dezember 2001.
Präsentation von Alexander Schönfeld
Microsoft Windows 2000 Plattform Terminal Services.
Windows Server 2008 Kurzüberblick Dr. Richtmann+Eder AG Olschewskibogen München.
Das Betriebssystem.
Julia Grabsch Florian Hillnhütter Fabian Riebschläger
Thin Clients IGEL smart-132.
Präsentation von Lukas Sulzer
Application Delivery Citrix Netscaler Vortragender Seite 1 von 18
secunet Security Networks AG
Datenanbindung in Webapplikationen
Effizienz durch VIRTUALISIERUNG
Systemsoftware und Betriebssysteme
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Verarbeitung und Computerinneres
Hauptseminar 2001 „Parallele Programmierung in Java“ - JPVM- Java Parallel Virtual Machine Referent: Sebastian Steininger.
Kaseya Virtual System Administrator Produkt Update 7.0 Rocco van der Zwet Copyright ©2014 Kaseya 1.
Fachstudie: Marktanalyse Provisioning Tools
Linux oder GNU/Linux WS 2013/2014.
->Prinzip ->Systeme ->Peer – to – Peer
Autor: Timo Pagel Nutzung: Diese Lernkarten sind für die Nutzung mit OpenCards gedacht Siehe dazu
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
Software Engineering SS04 Paralleles Programmieren FH Aachen, Prof. Dr.-Ing. Michael Trautwein Andrej Kühnal, Perez-Otuno Rodrigo.
Datenbanken im Web 1.
ROS – Robot Operating System
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Hier wird Wissen Wirklichkeit Organic Computing – Teil 3c, Folie 1 - Prof. Dr. Uwe Brinkschulte Middleware:in verschiedenen Kontexten gebrauchter Begriff,
Hadoop-as-a-Service (HDaaS)
PVM – Parallel Virtual Machine Michael Springmann.
Parallelising Molecular Dynamics for Message Passing Systems (complete) Martin Gerber
Lync and Learn mit Manfred Helber Thema heute: Überblick der Leistungserweiterungen von Windows Server 2016 Start: 9.30 Uhr 30 Minuten Vortrag & Demo 30.
© 2010 | magellan netzwerke GmbH Application Delivery und Virtualisierung Referent Dipl.-Ing. Sven Müller.
Dr. Klaus Ruhlig Technology & Product Consulting Sun Microsystems, München Skalierbare Rechnerarchitekturen für ein DWH: Eine vergleichende Analyse.
Multiprocessing mit OpenMPI Marius Albath. Vorlesung Betriebssysteme, Was ist OpenMPI Was ist OpenMPI OpenMPI Standard Setup OpenMPI Standard.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Einflußreiche Systeme Dr. Wolfgang Wörndl.
Einführung Definitionen
Einführung Definitionen
 Präsentation transkript:

Clustering Clustering mit openMosix von Christian Wiese Stefan Krause

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

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.

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

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

Realisierung ● PVM ● MPI ● openMosix

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

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

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

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

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

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

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

openMosix - Kernelalgorithmen ● Ressourcenverwaltung ● Lastverteilung ● Speichermanagement ● Prozessmigration

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

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

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

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

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

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