Verification of MPI-Based Software for Scientific Computation

  • Stephen F. Siegel
  • George S. Avrunin
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2989)

Abstract

We explore issues related to the application of finite-state verification techniques to scientific computation software employing the widely-used Message-Passing Interface (MPI). Many of the features of MPI that are important for programmers present significant difficulties for model checking. In this paper, we examine a small parallel program that computes the evolution in time of a discretized function u defined on a 2-dimensional domain and governed by the diffusion equation. Although this example is simple, it makes use of many of the problematic features of MPI. We discuss the modeling of these features and use Spin and INCA to verify several correctness properties for various configurations of this program. Finally, we describe some general theorems that can be used to justify simplifications in finite-state models of MPI programs and that guarantee certain properties must hold for any program using only a particular subset of MPI.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Stephen F. Siegel
    • 1
  • George S. Avrunin
    • 1
  1. 1.Laboratory for Advanced Software Engineering, Dept. of Computer ScienceUniversity of MassachusettsAmherstUSA

Personalised recommendations