Abstract
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.
Similar content being viewed by others
References
Amdahl, G.: Validity of the single processor approach to achieving large-scale computing capabilities. In: AFIPS Conference Proceedings, vol. 30, pp. 483–485 (1967)
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 2006
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)
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 2006
Edelman, A.: Parallel MATLAB Survey. http://www.interactivesupercomputing.com/reference/ParallelMatlabsurvey.htm
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 2006
Kepner J., Ahalt S.: MatlabMPI. J. Parallel Distrib. Comput 64(8), 997–1005 (2004) doi:10.1016/j.jpdc.2004.03.018
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 2004
Luszczek, P., Dongarra, J., Kepner, J.: Design and implementation of the HPC challenge benchmark suite. CTWatch Quarterly, vol. 2, no. 4A, November 2006
Numrich R., Reid J.: Co-array fortran for parallel programming. ACM Fortran Forum 17(2), 1–31 (1998)
UPC language specifications, v1.2. Technical Report LBNL-59208, Berkeley National Lab (2005)
Webb P.: Response to Wilson: teach science and software engineering with Matlab. IEEE Comput. Sci. Eng. 4(2), 4–5 (1997) doi:10.1109/MCSE.1997.609824
Wilson G.: What should computer scientists teach to physical scientists and engineers? IEEE Comput. Sci. Eng. 3(2), 46–55 (1996) doi:10.1109/99.503313
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 2006
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)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Hudak, D.E., Ludban, N., Krishnamurthy, A. et al. A Computational Science IDE for HPC Systems: Design and Applications. Int J Parallel Prog 37, 91–105 (2009). https://doi.org/10.1007/s10766-008-0084-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10766-008-0084-3