pMATLAB: Parallel MATLAB Library for Signal Processing Applications

MATLAB® is one of the most commonly used languages for scientific computing with approximately one million users worldwide. At MIT Lincoln Laboratory, MATLAB is used by technical staff to develop sensor processing algorithms. MATLAB's popularity is based on availability of high-level abstractions leading to reduced code development time. Due to the compute intensive nature of scientific computing, these applications often require long running times and would benefit greatly from increased performance offered by parallel computing. pMatlab (www.ll.mit.edu/pMatlab) implements partitioned global address space (PGAS) support via standard operator overloading techniques. The core data structures in pMatlab are distributed arrays and maps, which simplify parallel programming by removing the need for explicit message passing. This paper presents the pMatlab design and results for the HPC Challenge benchmark suite. Additionally, two case studies of pMatlab use are described.

[1]  M. E. Zosel High performance Fortran: an overview , 1993, Digest of Papers. Compcon Spring.

[2]  Guy L. Steele,et al.  The High Performance Fortran Handbook , 1993 .

[3]  Michael Metcalf,et al.  High performance Fortran , 1995 .

[4]  Cecelia DeLuca,et al.  A Portable, Object-Based Parallel Library and Layered Framework for Real-Time Radar Signal Processing , 1997, ISCOPE.

[5]  Yutaka Ishikawa,et al.  Scientific Computing in Object-Oriented Parallel Environments , 1997, Lecture Notes in Computer Science.

[6]  Scott W. Haney,et al.  Rapid Application Development and Enhanced Code Interoperability using the POOMA Framework , 1998 .

[7]  Robert A. van de Geijn,et al.  A Parallel Linear Algebra Server for Matlab-like Environments , 1998, Proceedings of the IEEE/ACM SC98 Conference.

[8]  Robert W. Numrich,et al.  Co-array Fortran for parallel programming , 1998, FORF.

[9]  Katherine Yelick,et al.  UPC: Distributed Shared-Memory Programming , 2003 .

[10]  Jeremy Kepner,et al.  MatlabMPI , 2004, J. Parallel Distributed Comput..

[11]  Jeremy Kepner,et al.  LLgrid: Enabling On-Demand Grid Computing with gridMatlab and pMatlab , 2004 .

[12]  Alan Edelman,et al.  Parallel MATLAB: Doing it Right , 2005, Proceedings of the IEEE.

[13]  John Y. N. Cho,et al.  Enhanced radar data acquisition system and signal processing algorithms for the Terminal Doppler Weather Radar , 2005 .

[14]  Jack Dongarra,et al.  Introduction to the HPCChallenge Benchmark Suite , 2004 .

[15]  Henry Hoffmann,et al.  Parallel VSIPL++: An Open Standard Software Library for High-Performance Parallel Signal Processing , 2005, Proceedings of the IEEE.

[16]  Jeremy Kepner,et al.  'pMATLAB Parallel MATLAB Library' , 2007, Int. J. High Perform. Comput. Appl..