DocumentCode
3108351
Title
The role of MPI in development time: A case study
Author
Hochstein, Lorin ; Shull, Forrest ; Reid, Lynn B.
Author_Institution
Inf. Sci. Inst., USC, Los Angeles, CA, USA
fYear
2008
fDate
15-21 Nov. 2008
Firstpage
1
Lastpage
10
Abstract
There is widespread belief in the computer science community that MPI is a difficult and time-intensive approach to developing parallel software. Nevertheless, MPI remains the dominant programming model for HPC systems, and many projects have made effective use of it. It remains unknown how much impact the use of MPI truly has on the productivity of computational scientists. In this paper, we examine a mature, ongoing HPC project, the Flash Center at the University of Chicago, to understand how MPI is used and to estimate the time that programmers spend on MPI-related issues during development. Our analysis is based on an examination of the source code, version control history, and regression testing history of the software. Based on our study, we estimate that about 20% of the development effort is related to MPI. This implies a maximum productivity improvement of 25% for switching to an alternate parallel programming model.
Keywords
application program interfaces; message passing; parallel programming; software engineering; Flash Center; HPC systems; MPI; development time; parallel software development; programming model; regression testing history examination; source code examination; version control history examination; Computer science; Costs; Debugging; Explosives; History; Large-scale systems; Parallel programming; Productivity; Programming profession; Software testing; MPI; case study; debugging; effort; productivity;
fLanguage
English
Publisher
ieee
Conference_Titel
High Performance Computing, Networking, Storage and Analysis, 2008. SC 2008. International Conference for
Conference_Location
Austin, TX
Print_ISBN
978-1-4244-2834-2
Electronic_ISBN
978-1-4244-2835-9
Type
conf
DOI
10.1109/SC.2008.5213771
Filename
5213771
Link To Document