A Computational Science IDE for HPC Systems: Design and Applications
Software engineering studies have shown that programmer productivity is improved through the use of computational science integrated development environments (or CSIDE, pronounced “sea side”) such as MATLAB. Scientists often desire to use high-performance computing (HPC) systems to run their existing CSIDE scripts with large data sets. ParaM is a CSIDE distribution that provides parallel execution of MATLAB scripts on HPC systems at large shared computer centers. ParaM runs on a range of processor architectures (e.g., x86, x64, Itanium, PowerPC) and its MPI binding, known as bcMPI, supports a number of interconnect architectures (e.g., Myrinet and InfiniBand). On a cluster at Ohio Supercomputer Center, bcMPI with blocking communication has achieved 60% of the bandwidth of an equivalent C/MPI benchmark. In this paper, we describe goals and status for the ParaM project and the development of applications in signal and image processing that use ParaM.
KeywordsHigh-level language High performance computing MPI PGAS MATLAB
Unable to display preview. Download preview PDF.
- 1.Amdahl, G.: Validity of the single processor approach to achieving large-scale computing capabilities. In: AFIPS Conference Proceedings, vol. 30, pp. 483–485 (1967)Google Scholar
- 2.Bader, D., Madduri, K., Gilbert, J., Shah, V., Kepner, J., Meuse, T., Krishnamurthy, A.: Designing scalable synthetic compact applications for benchmarking high productivity computing systems. CTWatch Quarterly, vol. 2, no. 4B, November 2006Google Scholar
- 3.Bliss, N., Kepner, J.: pMatlab Parallel Matlab Library. In: Kepner, J., Zima, H. (eds.) International Journal of High Performance Computing Applications: special Issue on High Level Programming Languages and Models, Winter 2006 (November)Google Scholar
- 4.Carver, J.C., Hochstein, L.M., Kendall, R.P., Nakamura, T., Zelkowitz, M.V., Basili, V.R., Post, D.E.: Observations about software development for high end computing. CTWatch Quarterly, vol. 2, no. 4A, November 2006Google Scholar
- 5.Edelman, A.: Parallel MATLAB Survey. http://www.interactivesupercomputing.com/reference/ParallelMatlabsurvey.htm
- 6.Funk, A., Basili, V., Hochstein, L., Kepner, J.: Analysis of parallel software development using the relative development time productivity metric. CTWatch Quarterly, vol. 2, no. 4A, November 2006Google Scholar
- 8.Liu, J., Mamidala, A., Panda, D.K.: Fast and scalable MPI-level broadcast using InfiniBand’s hardware multicast support. In: Int’l Parallel and Distributed Processing Symposium (IPDPS 04), April 2004Google Scholar
- 9.Luszczek, P., Dongarra, J., Kepner, J.: Design and implementation of the HPC challenge benchmark suite. CTWatch Quarterly, vol. 2, no. 4A, November 2006Google Scholar
- 11.UPC language specifications, v1.2. Technical Report LBNL-59208, Berkeley National Lab (2005)Google Scholar
- 14.Wolter, N., McCracken, M.O., Snavely, A., Hochstein, L., Nakamura, T., Basili, V.: What’s working in HPC: investigating HPC user behavior and productivity. CTWatch Quarterly, vol. 2, no. 4A, November 2006Google Scholar
- 15.Yelick, K., Hilfinger, P., Graham, S., Bonachea, D., Su, J., Kamil, A., et al.: Parallel languages and compilers: perspective from the Titanium experience. Int. J. High Perform. Comput. Appl. 21(2) (2007)Google Scholar