Effective State Exploration for Model Checking on a Shared Memory Architecture

Abstract In this paper we present results from experimental studies investigating implementation strategies for explicit-state temporal-logic model checking on a virtual shared-memory high-performance parallel machine architecture. In particular, a parallel state exploration algorithm using a two-queue structure for load balancing is proposed and its performance analysed at the hand of experimental studies. We then discuss implementation issues for parallel automata-theoretic model checking using this parallel state exploration algorithm.

[1]  Jan van Leeuwen,et al.  Handbook of Theoretical Computer Science, Vol. B: Formal Models and Semantics , 1994 .

[2]  Benedikt Bollig,et al.  Local Parallel Model Checking for the Alternation-Free µ-Calculus , 2002, SPIN.

[3]  Dragan Bosnacki,et al.  Symmetric Spin , 2002, International Journal on Software Tools for Technology Transfer.

[4]  Lubos Brim,et al.  Distributed LTL Model Checking Based on Negative Cycle Detection , 2001, FSTTCS.

[5]  Graham Horton,et al.  Parallel Shared-Memory State-Space Exploration in Stochastic Modeling , 1997, IRREGULAR.

[6]  Pierre Wolper,et al.  An Automata-Theoretic Approach to Automatic Program Verification (Preliminary Report) , 1986, LICS.

[7]  Alain Kerbrat,et al.  CADP - A Protocol Validation and Verification Toolbox , 1996, CAV.

[8]  Gerard J. Holzmann,et al.  An improvement in formal verification , 1994, FORTE.

[9]  Angelika Mader,et al.  Verification and Optimization of a PLC Control Schedule , 2000, SPIN.

[10]  Wolfgang Thomas,et al.  Automata on Infinite Objects , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[11]  Radu Mateescu,et al.  Parallel state space construction for model-checking , 2001, SPIN '01.

[12]  Lubos Brim,et al.  Distributed LTL model-checking in SPIN , 2001, SPIN '01.

[13]  Assaf Schuster,et al.  Achieving Scalability in Parallel Reachability Analysis of Very Large Circuits , 2000, CAV.

[14]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[15]  Dragan Bošnački,et al.  Proceedings of the 9th International SPIN Workshop on Model Checking of Software , 2002 .

[16]  Howard Barringer,et al.  Practical CTL* model checking: Should SPIN be extended? , 2000, International Journal on Software Tools for Technology Transfer.

[17]  Gerard J. Holzmann,et al.  Design and validation of computer protocols , 1991 .

[18]  Corporate Inmos Limited Communicating Process Architecture , 1989 .

[19]  A. J. M. van Gasteren,et al.  Derivation of a Termination Detection Algorithm for Distributed Computations , 1983, Inf. Process. Lett..

[20]  Flavio Lerda,et al.  Distributed-Memory Model Checking with SPIN , 1999, SPIN.

[21]  Pierre Wolper,et al.  An automata-theoretic approach to branching-time model checking , 2000, JACM.