Verification of MPI programs via compilation into Petri nets
Book chapter
Authors | Guliak, R.N., Shmeleva, T.R. and Zaitsev, D. |
---|---|
Editors | Raj, P., Dutta, P. K., Chong, P. H. J., Song, H. and Zaitsev, D. A. |
Abstract | We study parallel Java programs that use an implementation of the MPI (Message-Passing Interface) standard MPJ with the goal of proving their liveness that can be formulated in a simplified form as absence of deadlocks. In the process of parsing a given program, we create the program MPI communication model in the form of a Petri net. A static code analyzer has been developed; among its current version limitations are: point-to-point MPI communication functions Send and Recv are considered; models are obtained for a given number of processes; unfolding of loops is implemented for loops with the number of repetition known on the compilation stage. The obtained Petri net model of the program MPI communication is analyzed by Tina modeling system using the state space and symbolic state space techniques; application of the symbolic state space tool tedd for finding deadlocks yields manifold speed-up that makes feasible analyzing big software systems. The results are illustrated with a case study that includes both sets of program examples: deadlock free and containing deadlocks. The verification kit is supplied with generators of MPJ programs for testing and benchmarking the analyzer on big programs with pre-defined patterns of communications such as a chain and a loop of a given size, etc. |
Keywords | High-performance computing; MPI; verification; deadlock; Petri net; clan |
Page range | 245-269 |
Year | 2025 |
Book title | Applied Graph Data Science : Graph Algorithms and Platforms, Knowledge Graphs, Neural Networks, and Applied Use Cases |
Publisher | Morgan Kaufmann; Elsevier Inc. |
ISBN | 9780443296543 |
Digital Object Identifier (DOI) | https://doi.org/10.1016/B978-0-443-29654-3.00005-3 |
Web address (URL) | https://www.sciencedirect.com/science/article/abs/pii/B9780443296543000053 |
File | File Access Level Restricted |
Output status | Published |
Publication dates | 31 Jan 2025 |
Publication process dates | |
Deposited | 31 Mar 2025 |
https://repository.derby.ac.uk/item/qw4zv/verification-of-mpi-programs-via-compilation-into-petri-nets
20
total views1
total downloads14
views this month0
downloads this month