Model checking
Modern Operating Systems
Using MPI-2: Advanced Features of the Message Passing Interface
Using MPI-2: Advanced Features of the Message Passing Interface
SPINning Parallel Systems Software
Proceedings of the 9th International SPIN Workshop on Model Checking of Software
Optimizing the Synchronization Operations in Message Passing Interface One-Sided Communication
International Journal of High Performance Computing Applications
Concurrency and Computation: Practice & Experience
Using model checking with symbolic execution to verify parallel numerical programs
Proceedings of the 2006 international symposium on Software testing and analysis
Spin model checker, the: primer and reference manual
Spin model checker, the: primer and reference manual
An evaluation of implementation options for MPI one-sided communication
PVM/MPI'05 Proceedings of the 12th European PVM/MPI users' group conference on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Semantics driven dynamic partial-order reduction of MPI-based parallel programs
Proceedings of the 2007 ACM workshop on Parallel and distributed systems: testing and debugging
Formal Methods for MPI Programs
Electronic Notes in Theoretical Computer Science (ENTCS)
ISP: a tool for model checking MPI programs
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming
Combining symbolic execution with model checking to verify parallel numerical programs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Conflict Detection Algorithm to Minimize Locking for MPI-IO Atomicity
Proceedings of the 16th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Model checking nonblocking MPI programs
VMCAI'07 Proceedings of the 8th international conference on Verification, model checking, and abstract interpretation
An approach to formalization and analysis of message passing libraries
FMICS'07 Proceedings of the 12th international conference on Formal methods for industrial critical systems
Formal specification of MPI 2.0: Case study in specifying a practical concurrent programming API
Science of Computer Programming
Open issues in MPI implementation
ACSAC'07 Proceedings of the 12th Asia-Pacific conference on Advances in Computer Systems Architecture
Verification of halting properties for MPI programs using nonblocking operations
PVM/MPI'07 Proceedings of the 14th European conference on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Practical model-checking method for verifying correctness of MPI programs
PVM/MPI'07 Proceedings of the 14th European conference on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Hi-index | 0.00 |
We used formal-verification methods based on model checking to analyze the correctness properties of one existing and two new distributed-locking algorithms implemented by using MPI's one-sided communication. Model checking exposed an overlooked correctness issue with the first algorithm, which had been developed by relying only on manual reasoning. Model checking helped confirm the basic correctness properties of the two new algorithms, while also identifying the remaining problems in them. Our experience is that MPI-based programming, especially the tricky and relatively poorly understood one-sided communication features, stand to gain immensely from model checking. Considering that many other areas of concurrent hardware and software design now routinely employ model checking, our experience confirms that the MPI community can benefit greatly from the use of formal verification.