Dr. Yuko Matsuda, Tokyo Institute of Technology:

“I proudly endorse SEM for its remarkable flexibility and scalability.”

Dr. Vineer Bhansali, Managing Director, PIMCO:

“We contracted SEM for development of a new parallel computation platform, and found it to be very efficient in terms of the stability and use for financial engineers who do not have the time to optimize load balancing issues but want to focus on modeling.”

Mathematica Supercomputing at your desktop. Simple.

 

SEM Unprecedented Features:

  1. Problems that take too long (days or weeks to perform) on one node can be performed in less time.

  2. Problems that require more RAM than one node can hold become possible to perform using all the RAM on the cluster.

  3. Cluster computing is not just for numerics anymore.

  4. Symbolic manipulation and processing inconvenient or impractical to do in Fortran and C at a scale only clusters can handle.

  5. Use the approachable environment of Mathematica to learn how to program clusters and supercomputers.

  6. Develop new codes and algorithms for parallel computing faster combining Mathematica's rich feature set with MPI.

  Downloads:

SEM (Supercomputing Engine for Mathematica*)

SEM_files/math6mpibasics.nb

Math6mpibasics.nb

Basic examples of using MPI within Mathematica including remote function calls, list manipulation, and graphics generation in a cluster.

 
SEM_files/math6plasma.nb

math6plasma.nb

An electrostatic plasma simulation implemented in Mathematica along with with a parallelized version using MPI. This approach to plasma physics is well-published, for example: • V. K. Decyk, C. D. Norton, Comp. Phys. Communications 164 (2004) 80-85

 
SEM_files/SEM_User_Manual.pdf

SEM User’s Manual

Explanations, code examples, MPI reference, and installation instructions.

 

SEM Video presented by

Dr. Dean Dauger of Dauger Research, Inc.

A result of a collaboration between Advanced Cluster Systems, LLC and Dauger Research, Inc., the new Supercomputing Engine for Mathematica (SEM) enables Wolfram Research's Mathematica to be combined with the easy-to-use, supercomputer-compatible Pooch clustering technology of Dauger Research. This fusion applies the parallel computing paradigm of today's supercomputers and the ease-of-use of Pooch to Mathematica, enabling possibilities none of these technologies could do alone.


Closely following the supercomputing industry-standard Message-Passing Interface (MPI), the Supercomputing Engine creates a standard way for every Mathematica kernel in the cluster to communicate with each other directly. In contrast to typical grid implementations that are solely master-slave or server-client, this solution instead has all kernels communicate with each other directly and collectively the way modern supercomputers do.



















As they do for other cluster applications, Pooch and Open MPI provide the support infrastructure to enable this supercomputing-style parallel startup and inter-kernel communication. After locating, launching, and coordinating Mathematica kernels on a cluster, the Supercomputing Engine creates and supports an "all-to-all" communication topology, which high-performance computing practitioners find necessary to address the largest problems in scientific computing since the earliest large supercomputers, all within the Mathematica computing environment.


Besides locating, launching, and coordinating Mathematica kernels on a cluster, the Supercomputing Engine provides an API that closely follows the MPI standard appropriate for use in Mathematica. Enabling Mathematica kernels to be harnessed together the way supercomputers are, this fusion of Mathematica, Pooch, and Open MPI makes enables access to problems never accessible before with Mathematica.


Click here for additional in-depth technical details.

For the first time ever, an electrostatic plasma simulation is implemented in Mathematica, thanks to SEM.


SEM - See how we provided supercomputer-style parallelization to Wolfram Research Mathematica. We did not have access to Mathematica’s source code.


SEM - Mathematica kernels communication patterns compared with gridMathematica.