Was ist eine parallele virtuelle Maschine?
Eine parallele virtuelle Maschine ist eine Softwareanwendung, mit der mehrere unabhängige, geografisch verteilte Computer als Netzwerk miteinander verbunden werden können und deren Systemverarbeitungsleistung und Arbeitsspeicher einer Anwendung zur Verfügung gestellt werden.
Die Verlagerung der Herstellungskosten und die Popularität des Heimcomputers haben zu einer Erhöhung der Erschwinglichkeit sehr leistungsfähiger Computer auf dem Verbrauchermarkt geführt. Diese Maschinen sind mit ihren Standard-Softwareanwendungen nicht ausreichend ausgelastet, sodass eine Fülle von Rechenleistung frei bleibt. Mithilfe der Software für parallele virtuelle Maschinen können diese Ressourcen zusammengefasst und auf sie zugegriffen werden, um große, komplexe wissenschaftliche, medizinische oder industrielle Probleme zu lösen.
Die parallele virtuelle Maschine wurde erstmals 1989 von Al Geist in den Oak Ridge National Labs erstellt. Basierend auf der dortigen Arbeit wurde das Projekt im März 1991 an der University of Tennessee erweitert und ist seitdem stetig gewachsen.
Ein paralleles virtuelles Maschinensystem besteht aus zwei Teilen, der Anwendung, die sich auf den einzelnen Maschinen befindet, und der Bibliothek von Schnittstellenroutinen. Die Softwareanwendung heißt Parallel Virtual Machine Daemon, pvmd3 oder pmvd. Dieses kleine Programm bleibt passiv, bis es zum Ausführen einer parallelen Anwendung für virtuelle Maschinen benötigt wird. Wenn der Benutzer diese Art von Programm ausführen möchte, muss er zuerst die parallele virtuelle Maschine starten. Dies ermöglicht ihnen den Zugriff auf die Software auf jedem anderen Host.
Die Routinebibliothek für parallele virtuelle Maschinen enthält eine vollständige Liste aller Codes, die zum Koordinieren verschiedener Aufgaben erforderlich sind, die auf separaten Hosts ausgeführt werden. In dieser Bibliothek sind Standardroutinen für die Nachrichtenübermittlung, die Koordination von Aufgaben und alle Änderungen an der virtuellen Maschine selbst enthalten.
Das Kernkonzept der parallelen virtuellen Maschine besteht darin, dass jede Anwendung mehrere Aufgaben hat, die unabhängig voneinander ausgeführt werden können. Diese Art der Logik ist sehr verbreitet, ist komplexe wissenschaftliche Berechnungen. In parallelen virtuellen Maschinen werden zwei Modelle verwendet. Funktions- und Datenparallelität.
Funktionale Parallelitäten unterteilen eine Anwendung in klar definierte, unabhängige Aufgaben. Diese Aufgaben werden auf separaten Hostcomputern ausgeführt. Die parallele virtuelle Maschine wird verwendet, um basierend auf den Funktionen wie Eingabe, Lösung, Ausgabe und Anzeige zu koordinieren.
Datenparallelität oder Single Program Multiple Data (SPMD) ist die am weitesten verbreitete Methode. Bei dieser Methode sind alle Aufgaben gleich, aber jeder Host löst ein kleines Stück des größeren Puzzles. Eine parallele virtuelle Maschinenumgebung unterstützt beide Methoden, was wichtig ist, da es je nach den erforderlichen Berechnungen am effektivsten sein kann, diese beiden Methoden zu mischen.
C, C ++ und Fortran sind die Computerprogrammiersprachen, die in der parallelen virtuellen Maschine verwendet werden. Diese Sprachen wurden ausgewählt, da die meisten in dieser Umgebung verwendeten Anwendungen in diesen Sprachen erstellt wurden. Der Quellcode für die Software für parallele virtuelle Maschinen ist im Internet weit verbreitet und kann über ftp, www, xnetlib oder eine automatische E-Mail abgerufen werden.