Wolfram – gridMathematica

gridMathematica Logo

Wolfram gridMathematica

Technical Computing mit Multicore-Technologie und Rechenclustern

Aktuelle Version: gridMathematica 11
Kompatibel zu Mathematica 11.3
Revisionshistorie

gridMathematica führt Mathematica, die weltweit führende Umgebung 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).

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.

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.

ccs

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.

hpc

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.

lsf

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.

pbs

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.

sge

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 muß 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 Betriebsysteme 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

webpaketDas entsprechende APS-Paket ist über unseren ADDITIVE Professional Service erhältlich. Um das Paket zu erhalten, kontaktieren Sie unseren Support per E-Mail an Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! oder per Telefon unter +49 6172 5905 20 jeweils unter Angabe der APS-Paketnummer 370.

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" sw_mkt_pfeil_rot"Parallel Kernel Configuration..."sw_mkt_pfeil_rot"Parallel"sw_mkt_pfeil_rot"Cluster Integration" findet man folgendes Menü.

5

Dies ermöglicht dem Benutzer schnell und einfach einen Rechencluster einzurichten.

 

Screencasts

Parallel Computing in Mathematica
David Morrison
(06:13)

Using the Wolfram Lightweight Grid System
Jon McLoone
(02:30)


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 mit Wolfram Workbench.

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 muß 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

freeSeminars

© ADDITIVE GmbH. Alle Rechte, Irrtümer und Änderungen vorbehalten.

Impressum  /  Datenschutz  /  AGB