Parallel and distributed model checking in Eddy

被引:18
|
作者
Melatti I. [1 ]
Palmer R. [1 ]
Sawaya G. [1 ]
Yang Y. [1 ]
Kirby R.M. [1 ]
Gopalakrishnan G. [1 ]
机构
[1] School of Computing, University of Utah, Salt Lake City, UT
基金
美国国家科学基金会;
关键词
Model Check; Shared Memory; Hash Table; Message Passing; Work Thread;
D O I
10.1007/s10009-008-0094-x
中图分类号
学科分类号
摘要
Model checking of safety properties can be scaled up by pooling the CPU and memory resources of multiple computers. As compute clusters containing 100s of nodes, with each node realized using multi-core (e.g., 2) CPUs will be widespread, a model checker based on the parallel (shared memory) and distributed (message passing) paradigms will more efficiently use the hardware resources. Such a model checker can be designed by having each node employ two shared memory threads that run on the (typically) two CPUs of a node, with one thread responsible for state generation, and the other for efficient communication, including (1) performing overlapped asynchronous message passing, and (2) aggregating the states to be sent into larger chunks in order to improve communication network utilization. We present the design details of such a novel model checking architecture called Eddy. We describe the design rationale, details of how the threads interact and yield control, exchange messages, as well as detect termination. We have realized an instance of this architecture for the Murphi modeling language. Called EddyΜrphi, we report its performance over the number of nodes as well as communication parameters such as those controlling state aggregation. Nearly linear reduction of compute time with increasing number of nodes is observed. Our thread task partition is done in such a way that it is modular, easy to port across different modeling languages, and easy to tune across a variety of platforms. © Springer-Verlag 2008.
引用
收藏
页码:13 / 25
页数:12
相关论文
共 50 条
  • [1] Parallel and distributed model checking in Eddy
    Melatti, I
    Palmer, R
    Sawaya, G
    Yang, Y
    Kirby, RM
    Gopalakrishnan, G
    MODEL CHECKING SOFTWARE, PROCEEDINGS, 2006, 3925 : 108 - 125
  • [2] Using Parallel and Distributed Reachability in Model Checking
    Allal, Lamia
    Belalem, Ghalem
    Dhaussy, Philippe
    Teodorov, Ciprian
    AMBIENT COMMUNICATIONS AND COMPUTER SYSTEMS, RACCCS 2017, 2018, 696 : 143 - 154
  • [3] Special issue on parallel and distributed model checking - Foreword
    Brim, Lubos
    Leucker, Martin
    FORMAL METHODS IN SYSTEM DESIGN, 2006, 29 (02) : 115 - 116
  • [4] Parallel and Distributed Algorithms for Model Checking Problems (Doctoral Consortium)
    Wu, Zhimin
    Liu, Yang
    2015 20TH INTERNATIONAL CONFERENCE ON ENGINEERING OF COMPLEX COMPUTER SYSTEMS (ICECCS), 2015, : 210 - 213
  • [5] From Distributed Memory Cycle Detection to Parallel LTL Model Checking
    Barnat, J.
    Brim, L.
    Chaloupka, J.
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 133 : 21 - 39
  • [6] Parallel and Distributed Bounded Model Checking of Multi-threaded Programs
    Inverso, Omar
    Trubiani, Catia
    PROCEEDINGS OF THE 25TH ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING (PPOPP '20), 2020, : 202 - 216
  • [7] Parallel and Distributed Invariant Checking of Microcontroller Software
    Brauer, Joerg
    Schlich, Bastian
    Kowalewski, Stefan
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2009, 254 : 45 - 63
  • [8] Tutorial: Parallel model checking
    Brim, Lubos
    Barnat, Jiri
    MODEL CHECKING SOFTWARE, PROCEEDINGS, 2007, 4595 : 2 - +
  • [9] Distributed CTL model checking
    Bourahla, M
    IEE PROCEEDINGS-SOFTWARE, 2005, 152 (06): : 297 - 308
  • [10] Distributed bounded model checking
    Chatterjee, Prantik
    Roy, Subhajit
    Diep, Bui Phi
    Lal, Akash
    FORMAL METHODS IN SYSTEM DESIGN, 2022, 64 (1) : 50 - 72