Parallel Programming with MatlabMPI
Jeremy Kepner (MIT Lincoln Laboratory)

TL;DR
MatlabMPI provides a simple, portable implementation of MPI in Matlab, enabling parallel processing with high performance and ease of use for Matlab programs on various hardware architectures.
Contribution
It introduces a compact, pure Matlab implementation of MPI using file I/O, making parallel programming accessible within Matlab without external dependencies.
Findings
MatlabMPI matches C MPI bandwidth at large message sizes.
Achieved a speedup of approximately 70 in image filtering application.
Runs efficiently on shared and distributed memory systems.
Abstract
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 (~100 lines) and ``pure'' implementation which runs anywhere Matlab runs. The performance has been tested on both shared and distributed memory parallel computers. MatlabMPI can match the bandwidth of C based MPI at large message sizes. A test image filtering application using MatlabMPI achieved a speedup of ~70 on a parallel computer.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques
