PVM (Parallel Virtual Machine) [German]

Übersetzung von http://www.csm.ornl.gov/pvm/pvm_home.html

PVM (Parallel Virtual Machine ist ein Software-Paket, das erlaubt, eine heterogene Sammlung von Unix und/oder Windows-Rechnern, die miteinander durch ein Netzwerk verknüpft sind, als einzelnen großen parallelen Computer zu behandeln. Dadurch können große rechnerische Probleme kosteneffektiver gelöst werden, indem die Aggregatkraft und der Speicher vieler Computer genutzt wird. Die Software ist gut übertragbar. Die Quelle, welche durch Netlib frei zugänglich ist, wurde auf allem Möglichen erarbeitet, von Laptops bis CRAYs.

PVM erlaubt es Nutzern, die Möglichkeiten ihrer Computerhardware auszuschöpfen, um bei minimalen Mehrkosten viel größere Probleme zu lösen als bisher. Hunderte von Seiten weltweit nutzen PVM, um wichtige wissenschaftliche, industrielle und medizinische Probleme zu lösen, zusätzlich zum Nutzen als Bildungsinstrument, mit dem paralleles Programmieren gelehrt wird. Mit zehntausenden Nutzern ist PVM der de-facto-Standard für verteilte Rechnersysteme weltweit geworden.

Derzeitige PVM-Neuigkeiten:

  • Die PVM-Webseite ist jetzt in Weißrussisch verfügbar, zur Verfügung gestellt von fatcow.
  • PVM 3.4.6 veröffentlicht. Beinhaltet Windows- und Unixversionen und verbesserte Nutzung von Beowulf-Cluster. Beinhaltet auch die neuesten Patches, um mit den neuesten Versionen von Linux, Sun und SGI Systems zu arbeiten. Neue Features in PVM 3.4.x sind unter amderem Kommunikationskontexte, Messagehandlers, persistierende Nachrichten und Interoperability zwischen NT und Unix-Clusters. (Beachte das „Advanced Tutorial on PVM 3.4, [Weiterführendes Turotial für PVM 3.4])
  • Parallel::PVM 1.4.0 veröffentlicht. Dieser Perlwrapper für PVM implementiert nun die Gruppenfunktionen, unterstützt Nachrichtengrößen von über 100K und behebt einige Speicherlecks. Erhältlich bei deinem freundlichen CPAN-Mirror.
  • S-Lang PVM: Die Jungs und Mädels am MIT haben S-Lang-Bindings für PVM entwickelt.
  • RPVM: Neuer Release! RPVM ist ein Binding-Set zu PVM von R, welches eine moderne interpretierte statistische Analysesprache ist, die auf S (von Bell Labs) basiert.
  • CUMULVS 1.1 veröffentlicht: Ein Spin-Off-Projekt, das es einfach macht, interaktive Visualisierungen und Steuerungen zu deiner PVM- oder MPI-Applikation hinzuzufügen. Läuft auf allem, auf dem PVM läuft.
  • Einige neue Items wurden dieser Seite hinzugefügt: mehrere neue Zusätze zur „bemerkenswerter PVM-Software“, die von Dritten auf der ganzen Welt entwickelt wurden, eine neue Version von Java PVM, Veröffentlichung des Python-Ports für PVM, Port von PVM zu R, neuer Vertrieb von PVM 3.4.5 für Windows.

Derzeitige Artikel von der PVM-Newsgroup comp.parallel.pvm

PVM-unterstützte Architekturen

PVM-Dokumentation:

HTML-Version der Presseunterlagen des MIT:
PVM: Parallel Virtual Machine A Users’ Guide and Tutorial for Networked Parallel Computing [„PVM: Parallele Virtuelle Maschine. Ein Handbuch mit Einführung ins Thema ‘Network Parallel Computing’]
Bestelle dein eigenes Exemplar ($17.95) vom MIT.

HTML-Hauptseiten für PVM 3.3.

XPVM 1.1 Technik-Report (3 MB postscript).

PVM-Quellcode:

mXPVM 1.2.1-Binaries Downloadfähige XPVM-Binaries von netlib.

PVM-Programmierung:

  • Fehlerbehebung PVM Startup Was zu tun ist, wenn man den Fehler „Error: Can’t start pvmd“ [Fehler: pvmd kann nicht gestartet werden] erhält.
  • Kompilierungsprobleme mit Redhat 7.0 und PVM 3.4.3. recom

Redhat hat die Compilerarbeit zwischen 6.x und 7.0 derart geändert, dass beim Kompilieren eine Fehlermeldung entsteht. Die Behebung ist einfach und kann manuell getätigt werden: Du musst 2 Zeilen in pvm3/src/lpvmpack.c wie folgt ändern:
Zeile 1827:   tc = (char) va_arg(ap, int);
Zeile 1852:   th = (short) va_arg(ap, int);

dann kompiliere neu. Das sollte reichen. Dieser Bugfix ist in PVM 3.4.4 und späteren Releases enthalten.

  • Einführung in die Programmierung mit PVM
  • NAG veröffentlicht die  Numerische PVM-Library und UT kündigt den offiziellen Release von SCALAPACK an – Einer Bibliothek von optimierten, parallel-linearen Algebraroutines, die PVM benutzen.
  • FORGE90 – Ein kommerzielles Werkzeug, das automatisch Fortran-Codes parallelisiert und PVM-Calls auf Anforderung benutzt.
  • VPE – Visual programming environment [Visuelle Programmierumgebung] (produziert PVM-Programme). Prototyp der Software ist verfügbar.
  • PADE – NIST hat ein grafisches User-Interface entwickelt, das alle notwendigen Werkzeuge enthält, um parallele Applikationen zu entwickeln. Die derzeitige Version benutzt die PVM-“Message passing“-Library
  • Trapper – Ist eine grafische Programmierumgebung von GENIAS Software. TRAPPER beinhaltet Komponenten für paralleles Softwaredesign, Hardwarekonfiguration, Prozess-Darstellungen, Prozessüberwachung, grafisches Software-Debugging und Leistungsüberwachung. Benutzt VM, wenn es über Computercluster läuft.
  • PVM-Leistungshinweise
  • Das Debugging von PVM-Programmen
    PVM-Debuggers

    • TotalView – Kommerzieller Parallel-Debugger von Etnus (früher Dolphinics) – gut gemacht!
    • Xmdb – Paralleles Programmieren und Debugging-Trainer für Einsteiger
    • p2d2 – ein portabler, parallel vertriebener Debugger der NASA
    • AIMS – nettes Werkzeug, entwickelt von der NASA
    • CXTRACE – kommerzielle AIMS-Version von Convex.
    • D.bugger – benutzt das Expertenpaket, um ein Interface zu bieten, von dem aus Debugger-Kommandos bearbeitet werden (arbeitet derzeit mit IRIX und AIX)
  • Job-Schedulers und Automatische Load-Balancers.

Pakete von Dritten, die mit PVM arbeiten, beinhalten:

  • CONDOR
  • CODINE
  • CraySoft NQE
  • PRM (Der Prospero Resource Manager)
  • DQS
  • LSF
  • LoadLeveler .
  • Leistungsüberwachung für PVM-Programme
    (Sende uns eine E-Mail, wenn du zur Liste hinzugefügt werden möchtest)

    • XPVM 1.1 – 10x schneller und neue Message-Queue-Views.
    • Paradyn - Eher Überwachung als Debugger (neues Release ist verfügbar!)
    • PGPVM – Produziert Trace-Files, die mit ParaGraph kompatibel sind.
      Eine neue Version, genannt PGPVM2, ist jetzt erhältlich!
    • PG_PVM – Ein anderes Paket, welches Trace-Files produziert, die mit ParaGraph kompatibel sind (erhebt auch den Anspruch, für die Profilierung von MPI-Programmen benutzt werden zu können).
    • PVaniM2.0 -Bietet online- und postmortem-Visualisierung
    • AIMS – nettes Werkzeug, entwickelt von der NASA
    • Beachte auch die Pakete in der Debugger-Liste

Bemerkenswerte PVM-verwandte Software

Wenn du glaubst, etwas zu haben, das auf die Liste gehört, lass es uns wissen

  • S-Lang PVM Micheal Noble und Genossen am MIT haben S-Lang-Bindings für PVM entwickelt, für all euch S-Lang-User da draußen. Viel Spaß!
  • LPVM LPVM sind PVM3-Bindings für Common Lisp mit UFFI. Der Entwickler, Ivan Boldyrev, sagt, Patches seien willkommen.
  • pypvm-0.92 Neuer Release! Michael Petullo und Greg Baker haben ihr Python-PVM in einem einzigen Release verschmolzen. Sehr schön. Sieh’s dir an.
  • Using Windows MFC with PV [Die Benutzung von Windows MFC mit PV]

Brian Piscopo beschreibt, wie man PMV kompatibel macht mit MFC (Microsoft Foundation Classes), inklusive Arbeitsbeispiel. Dies erlaubt es, die Kraft des PMV nutzbar zu machen und gleichzeitig einfach zu nutzende GUIs für Windows zu bereiten.

Dieses interaktive Datensprache- (von Research-Systemen) -Interface zu PVM lässt dich paralleles Processing mit IDL durch PVM-Calls durchführen. Es entspricht der MATLAB-Toolbox.

Für dynamische Task-(neu-)-Zuordnung von PVM Tasks. Benutzt wird der Dynamite Checkpointer, der auch über den obigen Link erhältlich ist.

erlaubt es, Hostfiles zu erstellen/modifizieren/Set-ups durchzuführen, und sie dann zu starten. Der große Vorteil dieses wirklich hübschen Grafikprogrammes ist die Beschleunigung der Konfiguration neuer Cluster (Quelltext ist jetzt verfügbar).

ist ein C++-Wrapper für PVM-Libraries. Es soll einfach zu gebrauchen sein und die meistgenutzten Cores der PVM-Libraries wrappen. Es gibt nur drei Klassen: PvmDaemon, PvmTask und PvmStream. PvmStream beinhaltet unbegrenzte Nachrichtengrößen und strenge Typprüfungen der durchgelaufenen Variablen.

  • APPSPACK

Ist eine Library, die sich mit asynchronen und fehlertoleranten parallel-pattern Suchmethoden der Optimierung beschäftigt. Besonders nützlich für die technische Optimierung, wenn es um Designprobleme geht, die sich durch eine geringe Anzahl von Variablen und teure Zielfunktionssuche auszeichnen.

Jean Labrousse hat sein Gmake-Softwarepaket veröffentlicht.

Javier Baldomero hat ein Toolkit erstellt, mit dem PVM von Matlab aus angerufen werden kann.

schneller, kommerzieller PVM-Klon mit Verbesserungen. Unterstützt PVM 3.3 auf Windows und Unix genauso wie Shared Memory. Kostenloser Testversion verfügbar.

  • DAMPVM -

Dynamische Allokations- und Migrationserweiterung, erstellt auf PVM von Pawel Czarnul von der Technischen Universität Danzig.

  • WAMM (Wide Area Metacomputer Manager)

Entwickelt am CNUCE-Institut des italienischen Nationalen Forschungsrats. Ein grafisches Werkzeug, auf PVM gebaut, das Nutzer mit einem grafischen Interface versorgt, um ihnen sich wiederholende und mühsame Aufgaben abzunehmen, wie etwa: das Hinzufügen/Prüfen/Entfernen von Hosts, Prozessmanagement, Kompilationen auf Remote-Hosts, Remote-Befehl-Ausführungen.

Entwickelt von Laurent Gasser. Diese tar-Datei enthält alle Dateien, die du brauchst, um die Vorzüge der Fortran90-Facilities zu nutzen. In der derzeitigen Entwicklung der PVM-Version wird es für das numerische Modell der Wettervorhersage benutzt. Viel Spaß!

  • tkpvm -

Entwickelt von Nijtmans in den Niederlanden. Dieses Paket kombiniert die Kraft von tcl/tk und PVM. Gutes Zeug!

  • tclpvm -

Dieses Paket und eine Werkzeugsuite, die auf diesem Paket basiert, sind im Standardvertrieb durch den Beowulf Linux Vertrieb enthalten. Schau bald nach ihnen in anderen Linux-Veröffentlichungen!

  • PIOUS -

Paralleles I/O-System für PMV-Applikationen. Entwickelt von Vaidy Sunderam und Steve Moyer.

  • Adsmith -
  • Ein objektbasiertes DSM, das komplett auf PVM aufbaut, ohne systemabhängige Facilities zu nutzen. Adsmith beschäftigt viele Leistungsoptimierungstechniken, um seine Leistung zu steigern.
  • WPVM 2.0 -

Diese PVM-Version für Microsoft Windows wurde entwickelt von Alexandre Alves von der Universität Coimbra, Portugal.

  • JPVM -

die neue Version 1.1.14, die mit PVM 3.4 arbeitet, ist ein geborenes Methodeninterface von PVM für die Java ™ -Plattform.

Ist eine PVM-artige Klassenlibrary, die in und für den Gebrauch mit Java implementiert wurde.

Perl-Erweiterung für PVM. Vergiss nicht: Think Perl – Think parallel!

Ist ein Python-Interface für PVM. Python ist vermutlich die zweitbeliebteste Scriptsprache hinter Perl. Wenn du Python benutzt, gehe parallel mit Pypvm.

ein C++-Interface für PVM 3.4, geschrieben von Steffen Goerzig. Es erlaubt send/recv von C++-Objekten ebenso wie den Gebrauch mit distributierten C++-Objekten und mehr…

  • PowerPVM -

GENIAS Software besitzt Hochleistungsversionen von PVM für Parsytec-Systeme.

  • Sciddle -
  • Ein Softwarepaket, entwickelt am ETH Zürich, Schweiz, das einer Applikation ermöglicht, asynchrone Remote-Procedure-Calls in der PVM-Umgebung zu nutzen.
  • SP2-Patch

Für all diejenigen, die den schnellen SP2MPI-Port auf einem IBM SPx benutzen, haben wir einen Patch für PVM 3.3.11 und einen Bug, der auftreten kann, wenn der zyklische Buffer, der die ausstehenden Request-Handles hält, beschädigt wird. Die Fehlermeldung lautet „invalid handle in an MPI_Test call“. Dieser Bug beeinträchtigt nur SP2MPI.

Weitere Informationen:

  • Projektmitglieder
  • Publikationen unseres Network Computing Projektes.
  • Die Resultate der Userumfragen beschreiben, wer auf der Welt was mit PVM anstellt.

Die Anzahl der PVM-Nutzer und die Größe der Umfragen hat solche Ausmaße angenommen, dass wir keine Zeit hatten, sie abzuleiten und gleichzeitig unsere Forschungen fertigzukriegen. Wir hoffen, dass die folgenden Informationen hilfreich sind.

Umfragen werden im Herbst jeden Jahres durchgeführt (Plain Text)

Fotos und Ergebnisse der EuroPVM-MPI’97. Das Vierte Europäische PVM-MPI-Nutzergruppen-Meeting, abgehalten in Krakau, Polen, 3.-5. November 1997.

  • PVM-Grafiken: Für den Augenschmaus ein paar Grafiken von PVM-T-Shirts und all sowas (Postscript)

URL http://www.csm.ornl.gov/pvm/
ORNL | CSM
Email-Kommentare an: pvm@msr.csm.ornl.gov
Letzte Überarbeitung am 9. Dezember 2010