ParaM: Parallelizing MATLAB
ParaM (pronounced per-um) is a project aimed at automatic parallelization of MATLAB programs for cluster-based parallel environments.
MATLAB has become the programming environment of choice for scientists and engineers for prototype application development in several domains. Unfortunately, the lack of acceptable performance continues to hinder its use beyond prototyping. Additionally, scientific and engineering applications frequently demand very high performance that can only be achieved by utilizing modern parallel architectures.
We focus on the MATLAB language and take a compilation-based approach to achieve automatic parallelization. In our program development model, users develop and debug their code within the MATLAB environment and then compile it with ParaM for final execution.
The project, funded by the Ohio Supercomputing Center, will utilize the telescoping MATLAB compiler from Rice University and the Global Array library from the Pacific Northwest National Lab. Deliverables include a MATLAB interface to the Global Array library to enable development of parallel programs within the MATLAB environment, and ParaM, a MATLAB-to-C parallelizing compiler that will use Global Arrays as the communication mechanism.
For more information, visit: http://www.cs.indiana.edu/~achauhan/ParaM/
