Wolfram gridMathematica
Technical Computing mit Multicore-Technologie und Rechenclustern
Neue Version:
gridMathematica 12
Kompatibel zu Mathematica 12
Details zu den NeuerungengridMathematica führt Mathematica, eine der weltweit führendsten Umgebungen für technische Berechnungen, mit modernen Rechenclustern und -netzen zusammen, um den Herausforderungen in der Mathematik, in den Ingenieur- und Naturwissenschaften und in den Finanzwissenschaften zu begegnen. gridMathematica setzt die Mathematica-Technologie, die ursprünglich für Single-Prozessor-Maschinen entwickelt wurde, für komplexe Berechnungen mit hohem Datenaufkommen auf Clustern, Multiprozessormaschinen und Rechnernetzen um.
gridMathematica bietet einen schnellen Zugriff auf die Vorbereitung und Ausführung komplexer Berechnungen. Es verfügt über eine hochstehende Programmiersprache, eine große Sammlung schneller und verlässlicher mathematischer Algorithmen und benutzerfreundliche Konstrukte für das parallele Programmieren.
Typische Anwendungsbereiche von gridMathematica können in der Bioinformatik, der Verarbeitung und Analyse großer Datensätze, dem Data Mining und großen Berechnungen in der Physik, der Mathematik und den Life Sciences gesehen werden.
Jede Mathematica Einzelplatz oder Netzwerklizenz (ab V8) besitzt mindestens 4 x Mathematica-Compute-Kernels, so dass damit quasi jeder Nutzer von Beginn an "sein kleines Grid" zur Verfügung hat. Der Neuling in dieser Thematik kann sofort loslegen und der erfahrene Cluster-Experte kann über Konfigurationselemente in die Steuerung eingreifen. Mathematica lässt sich so auf beliebige viele Kernels erweitern, um z. B. auf einem HPC mit 512 Kernels zu rechnen.
gridMathematica ist verfügbar als Mathematica Core Extension (Einzelplatzlizenz) und als gridMathematica Server (Netzwerklizenz).
Prozessbeschleunigung
Beschleunigung von Prozessen mit gridMathematica
gridMathematica implementiert zahlreiche Primitive der Parallelprogrammierung und enthält höhere Kommandos für die parallele Ausführung von Matrixoperationen, Plotting u.v.a. gridMathematica wird mit Beispielapplikationen zahlreicher neuer populärer Programmieransätze, wie z. B. der parallelen Monte-Carlo-Simulation, Visualisierung, Datensuche und -optimierung ausgeliefert. Die Implementierung für alle höheren Kommandos zur Parallelverarbeitung sind als Mathematica-Sourcen enthalten, können also als Vorlagen für den Benutzer dienen, um eigene Parallelprogramme zu entwickeln.
Mit gridMathematica können jedoch nicht alle Berechnungen beschleunigt werden. Operationen wie "Integrate" oder "DSolve" wurden für die Verwendung auf einem Single-Prozessor-Rechner konzipiert. Eine Beschleunigung dieser Berechnungen kann dennoch erreicht werden, indem verschiedene “slave kernels”, d. h. untergeordneten Kernel im Netzwerk, die einzelnen Kalkulationen abarbeiten, anstatt sie durch einen Kernel sequentiell nacheinander zu berechnen.
Cluster Integration How To
CCS
Mathematica kann von Haus aus mit vielen verschiedenen Protokollen und Systemen Parallelberechnungen durchführen. Bei folgendem Beispiel muss immer das Cluster Integration Paket mitgeladen werden.
Needs["ClusterIntegration`"]
CCS["name"]
repräsentiert einen Windows Compute Cluster Server mit spezifiziertem Namen. Hier werden zwei Kernel gestartet.
HPC
Mathematica kann von Haus aus mit vielen verschiedenen Protokollen und Systemen Parallelberechnungen durchführen. Bei folgendem Beispiel muss immer das Cluster Integration Paket mitgeladen werden.
Needs["ClusterIntegration`"]
HPC["name"]
repräsentiert einen Windows High Performance Computing Server mit spezifiziertem Namen. Hier werden zwei Kernel gestartet.
LSF
Mathematica kann von Haus aus mit vielen verschiedenen Protokollen und Systemen Parallelberechnungen durchführen. Bei folgendem Beispiel muss immer das Cluster Integration Paket mitgeladen werden.
Needs["ClusterIntegration`"]
LSF["name"]
repräsentiert ein Platform Load Sharing Facility Cluster mit spezifiziertem Namen. Hier werden zwei Kernel gestartet.
PBS
Mathematica kann von Haus aus mit vielen verschiedenen Protokollen und Systemen Parallelberechnungen durchführen. Bei folgendem Beispiel muss immer das Cluster Integration Paket mitgeladen werden.
Needs["ClusterIntegration`"]
PBS["name"]
repräsentiert ein Altair Portable Batch System mit spezifiziertem Namen. Hier werden zwei Kernel gestartet.
SGE
Mathematica kann von Haus aus mit vielen verschiedenen Protokollen und Systemen Parallelberechnungen durchführen. Bei folgendem Beispiel muss immer das Cluster Integration Paket mitgeladen werden.
Needs["ClusterIntegration`"]
SGE["name"]
repräsentiert eine Sun Grid Engine mit spezifiziertem Namen. Hier werden zwei Kernel gestartet.
SSH
SSH - Secure Shell
Die Arbeit mit Mathematica und dem Parallel Computing Toolkit bzw. mit gridMathematica erfordert eine möglichst sichere Verbindung zwischen einem Master PC und mehreren Slave PC’s. Der Mathematica Master Kernel muss auf den Slave PC weitere Mathematica-Prozesse starten und beenden können, damit eine verteilte Berechnung möglich ist. Dafür gibt es für unterschiedliche Betriebssysteme diverse Ansätze. Unter Windows können Werkzeuge aus dem Windows Ressource Kit (rshsvc), Windows-Prozesstools (psexec) aber auch SecureShell (ssh) verwendet werden. Unter UNIX/LINUX/OSX verwendet man RSH oder SSH. Das nachfolgende Dokument erklärt:
- wie man mehrere LINUX PC mittels der freien Software Openssh verbindet
- wie man mehrere WindowsXP/2K PC mittels der freien Software cygwin per openssh verbindet
- wie man die bestehende Verbindung benutzt um Mathematica - Kernels auf bestimmten Ports zu verbinden
- wie man ohne Portangabe Mathematica - Kernels verbindet
- wie man mittels Windows-Prozesstools (psexec) ungesicherte Verbindungen erstellt
Das entsprechende APS-Paket ist über unseren ADDITIVE Professional Service erhältlich. Um das Paket zu erhalten, kontaktieren Sie unseren Support per E-Mail an
Grafische Einstellung
In allen obigen Pakten haben wir das Cluster Integration Paket per Needs["ClusterIntegration`"] nachgeladen. Mathematica bietet uns aber auch die Möglichkeit komfortabel per grafischer Oberfläche ein Cluster einzurichten. In Mathematica unter "Evaluation" "Parallel Kernel Configuration...""Parallel""Cluster Integration" findet man folgendes Menü.
Dies ermöglicht dem Benutzer schnell und einfach einen Rechencluster einzurichten.
Screencasts
Screencasts
Weitere Informationen
Features
gridMathematica bietet folgende Funktionen für parallele Berechnungen:
- Verteilten Speicher
- Master/Slave Parallelisierung
- Maschinenunabhängige Implementierung
- Quellcode für alle höheren Befehle
- Interkernel-Kommunikation mit MathLink
- Unterstützung für Multiprozessor-Rechner, heterogene Netzwerke, LAN und WAN
- Unterstützung von zeitgesteuerten virtuellen Prozessen oder Verteilung von Prozessen auf verfügbare Rechner
- Unterstützung von virtuellem gemeinsamem Speicher
- Unterstützung von Synchronisation, Locking und Latency Hiding
- Unterstützung von Prozess-Warteschleifen und Gleichzeitigkeit
- Unterstützung von paralleler funktionaler Programmierung
- Unterstützung von Fehlerbeseitigung und automatischer Neuordnung totgelaufener Prozesse
- Parallel Debugging und Profiling
Systemvoraussetzungen
gridMathematica ist unter Windows, Mac OS X, Linux und Unix verfügbar. Weitere Informationen entnehmen Sie bitte der Verfügbarkeitsliste von Mathematica. Computer innerhalb eines Rechenclusters müssen nicht mit demselben Betriebssystem arbeiten. Die Rechner eines Clusters müssen dann über TCP/IP vernetzt sein.
Weitere Anforderungen: Der Benutzer muss Mathematica auf den Rechnern im Cluster starten können, üblicherweise über RSH, REXEC oder SSH.
gridMathematica unterstützt desweitern gleichwertige and unheitliche Windows, Linux, Unix, und Mac OS X Cluster.
Mathematica Systemvoraussetzungen
Datenblätter und FAQ's
- Laden Sie hier das aktuelle Datenblatt zu gridMathematica herunter.
- Fragen und Antworten zu gridMathematica auf den Seiten des Herstellers.
- gridMathematica Online-Dokumentation auf den Seiten von Wolfram Research.