Normalized to: Ahalt, S.
[1]
oai:arXiv.org:astro-ph/0305090 [pdf] - 1048511
MatlabMPI
Submitted: 2003-05-06
The true costs of high performance computing are currently dominated by
software. Addressing these costs requires shifting to high productivity
languages such as Matlab. MatlabMPI is a Matlab implementation of the Message
Passing Interface (MPI) standard and allows any Matlab program to exploit
multiple processors. MatlabMPI currently implements the basic six functions
that are the core of the MPI point-to-point communications standard. The key
technical innovation of MatlabMPI is that it implements the widely used MPI
``look and feel'' on top of standard Matlab file I/O, resulting in an extremely
compact (~250 lines of code) and ``pure'' implementation which runs anywhere
Matlab runs, and on any heterogeneous combination of computers. The performance
has been tested on both shared and distributed memory parallel computers (e.g.
Sun, SGI, HP, IBM, Linux and MacOSX). MatlabMPI can match the bandwidth of C
based MPI at large message sizes. A test image filtering application using
MatlabMPI achieved a speedup of ~300 using 304 CPUs and ~15% of the theoretical
peak (450 Gigaflops) on an IBM SP2 at the Maui High Performance Computing
Center. In addition, this entire parallel benchmark application was implemented
in 70 software-lines-of-code, illustrating the high productivity of this
approach. MatlabMPI is available for download on the web
(www.ll.mit.edu/MatlabMPI).
[2]
oai:arXiv.org:astro-ph/0207389 [pdf] - 50532
300x Faster Matlab using MatlabMPI
Submitted: 2002-07-18
The true costs of high performance computing are currently dominated by
software. Addressing these costs requires shifting to high productivity
languages such as Matlab. MatlabMPI is a Matlab implementation of the Message
Passing Interface (MPI) standard and allows any Matlab program to exploit
multiple processors. MatlabMPI currently implements the basic six functions
that are the core of the MPI point-to-point communications standard. The key
technical innovation of MatlabMPI is that it implements the widely used MPI
``look and feel'' on top of standard Matlab file I/O, resulting in an extremely
compact (~250 lines of code) and ``pure'' implementation which runs anywhere
Matlab runs, and on any heterogeneous combination of computers. The performance
has been tested on both shared and distributed memory parallel computers (e.g.
Sun, SGI, HP, IBM and Linux). MatlabMPI can match the bandwidth of C based MPI
at large message sizes. A test image filtering application using MatlabMPI
achieved a speedup of ~300 using 304 CPUs and ~15% of the theoretical peak (450
Gigaflops) on an IBM SP2 at the Maui High Performance Computing Center. In
addition, this entire parallel benchmark application was implemented in 70
software-lines-of-code (SLOC) yielding 0.85 Gigaflop/SLOC or 4.4 CPUs/SLOC,
which are the highest values of these software price performance metrics ever
achieved for any application. The MatlabMPI software will be available for
download.