ACM Home Page
Please provide us with feedback. Feedback
Semantics driven dynamic partial-order reduction of MPI-based parallel programs
Full text PdfPdf (218 KB)
Source
International Symposium on Software Testing and Analysis archive
Proceedings of the 2007 ACM workshop on Parallel and distributed systems: testing and debugging table of contents
London, United Kingdom
SESSION: Formal and healing table of contents
Pages: 43 - 53  
Year of Publication: 2007
ISBN:978-1-59593-748-3
Authors
Robert Palmer  University of Utah, Salt Lake City, UT
Ganesh Gopalakrishnan  University of Utah, Salt Lake City, UT
Robert M. Kirby  University of Utah, Salt Lake City, UT
Sponsors
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 50,   Citation Count: 3
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1273647.1273657
What is a DOI?

ABSTRACT

Most distributed parallel programs in the high performance computing (HPC) arena are written using the MPI library. There is growing interest in using model checking for debugging these MPI programs. In this context, partial-order reduction has considerable potential for containing state explosion, given the distributed memory nature of MPI programs. This potential is largely unmet. In this paper, we first define the formal semantics for a non-trivial subset of MPI. We then prove independence theorems based on theformal semantics, paving the way to a semantically clear and general partial-order reduction approach for MPI. Our work describes, for the first time, the exact dependencies between MPI non-blocking send operations and their tests for completion, namely wait and test. We also offer a cleaner solution than in previous works for MPI wildcard receives,a proper handling of which requires knowledge of the future course of computations. We show that Flanagan and Godefroid's dynamic patial-order reduction algorithm offers a natural way to handle the need for future information. Our initial experimental results are encouraging.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
T. Andrews, S. Qadeer, S. K. Rajamani, J. Rehof, and Y. Xie. Zing: A model checker for concurrent software. In CAV 2004:16th International Conference on Computer Aided Verification, Boston, Massachusetts, July 2004, LNCS. Springer-Verlag, 2004.
 
2
Steven Barrus, Ganesh Gopalakrishnan, Robert M. Kirby, and Robert Palmer. Verification of MPI programs using SPIN. Technical Report UUCS-04-008, The University of Utah, 2004.
 
3
 
4
5
6
 
7
Philippe Georgelin, Laurence Pierre, and Tin Nguyen. A formal specification of the MPI primitives and communication mechanisms. Technical report, LIM, 1999.
 
8
9
 
10
 
11
 
12
MPI: A Message-Passing Interface Standard. http://www.mpi-forum.org/docs/mpi-11-html/mpi-report.html.
 
13
Robert Palmer, Steven Barrus, Yu Yang, Ganesh Gopalakrishnan, and Robert M. Kirby. Gauss: A framework for verifying scientific computing software. In SoftMC: Workshop on Software Model Checking, number 953 in ENTCS, August 2005.
 
14
Robert Palmer, Ganesh Gopalakrishnan, and Robert M. Kirby. The communication semantics of the message passing interface. Technical Report UUCS-06-012, The University of Utah, October 2006.
 
15
Robert Palmer, Ganesh Gopalakrishnan, and Robert M. Kirby. Semantics Driven Dynamic Partial-order Reduction of MPI-based Parallel Programs (full version). Technical Report UUCS-07-011, University of Utah, School of Computing, 2007.
 
16
Salman Pervez, Ganesh Gopalakrishnan, Robert M. Kirby, Rajeev Thakur, and William Gropp. Formal verification of programs that use mpi one-sided communication. In Recent Advances in Parallel Virtual Machine and Message Passing Interface, volume 4192/2006 of LNCS, pages 30{39, Berlin/Heidelberg, 2006. Springer.
 
17
18
 
19
Stephen F. Siegel. Efficient verification of halting properties for mpi programs with wildcard receives. In Radhia Cousot, editor, Verification, Model Checking, and Abstract Interpretation: 6th International Conference, VMCAI 2005, pages 413{429, Paris, January 2005. Springer-Verlag.
 
20
Stephen F. Siegel. Model checking nonblocking mpi programs. In B. Cook and A. Podelski, editors, VMCAI 07, number 4349 in LNCS, pages 44{58. Springer-Verlag, 2007.
 
21
Stephen F. Siegel and George Avrunin. Analysis of mpi programs. Technical Report UM-CS-2003-036, Department of Computer Science, University of Massachusetts Amherst, 2003.
 
22
Stephen F. Siegel and George S. Avrunin. Verification of mpi-based software for scientific computation. In Proceedings of the 11th International SPIN Workshop on Model Checking Software, volume 2989 of LNCS, pages 286{303, Barcelona, April 2004. Springer.
23
 
24


Collaborative Colleagues:
Robert Palmer: colleagues
Ganesh Gopalakrishnan: colleagues
Robert M. Kirby: colleagues