The Parallel Computing Toolkit

Solving problems with Mathematica in parallel
on a heterogeneous network

A Presentation at the Parallel Symbolic Computing Workshop, October 1-3, 1998 at Mathematical Sciences Research Institute, Berkeley, California.

[Graphics:Images/MSRI98_gr_1.gif] Roman E. Maeder

MathConsult Dr. R. Mäder
Samstagernstraße 58a
8832 Wollerau
Switzerland
http://www.mathconsult.ch


 

The MathLink communication protocol can be used to control several Mathematica kernel processes from within Mathematica. This feature allows the implementation of a distributed-memory environment for parallel programming. Parallel language constructs, such as a parallel version of Map, can easily be implemented on top of these primitive operations.

We describe a library for parallel programming in Mathematica and give several examples of its use, including virtual shared memory and synchronization methods.

The library is written completely in Mathematica and is, therefore, machine-independent, allowing its use in heterogeneous networks and without common file systems. All library and application code is distributed through MathLink.

© 1998 MathConsult Dr. R. Mäder. All rights reserved.

Introduction

MathLink

Process Queues and Concurrency

Parallel Evaluation

Virtual Shared Memory

Parallel Programming

Performance Measurements

Conclusions

I am excited that one can now do interactive parallel symbolic, numeric and graphic computation entirely within Mathematica.

This toolkit should make serious parallel computing accessible to a wide range of workgroups, labs and classrooms." It is basically ready for all existing Mathematica users.

Document converted by Mathematica of Wolfram Research