Parallel symbolic state-space exploration is difficult, but what is the alternative?

@inproceedings{Ciardo2009ParallelSS,
  title={Parallel symbolic state-space exploration is difficult, but what is the alternative?},
  author={Gianfranco Ciardo and Yang Zhao and Xiaoqing Jin},
  booktitle={PDMC},
  year={2009}
}
State-space exploration is an essential first step in many modeling and analys is problems. Its goal is to find and store all the states reachable from the initial state(s) of a discre te-state high-level model described, for example, using pseudocode or Petri nets. The state space can then be used to answer important questions, such as “Is there a dead state?” and “Can variable n ever become negative?”, or as the starting point for sophisticated investigations expressed in temporal logic… 

Figures from this paper

Distributed Symbolic Reachability Analysis

An RDMA-based distributed hash table and private deque work stealing algorithms are designed and used to implement distributed BDD operations that scale efficiently along all processing units and memory connected via a high-performance network.

Distributed binary decision diagrams for symbolic reachability

BDD-based reachability algorithms targeting compute clusters: high-performance networks of multi-core machines are contributed, allowing larger models to be processed while increasing performance by using all available computational power.

Symbolic Model Checking with Partitioned BDDs in Distributed Systems

This work presents a design for multi-core distributed reachability analysis based on the model checking tool Sylvan and combines this with a BDD partitioning approach and tries to minimize communication between machines.

Multi-Core OnThe-Fly Saturation

This work demonstrates for the first time that on-the-fly symbolic saturation can be successfully parallelized at a large scale, and implemented saturation in Sylvan’s multi-core decision diagrams used by the LTSmin model checker.

Evaluating Machine-Independent Metrics for State-Space Exploration

This study presents a study of the commonly used machine-independent metrics for two different exploration frameworks for Java by revisiting and extending a previous study and evaluating the correlation of the metrics with real time both on a single machine and on a high-performance cluster of machines.

Sylvan: multi-core decision diagrams

This work implements parallel operations on list decision diagrams, a variant of multi-valued decision diagrams that is useful for symbolic model checking, andCombining parallel operations with parallelization on a higher level results in an improved speedup using the model checking toolset ltsmin.

Simpler multi-threaded model checking via new foundations for implicit encodings C + + template metaprogramming rocks !

The novel library interface, defined through C++ metaprogramming, will allow the writing of C++ algorithm code in a significantly less cluttered style, while automatically generating code having the performance of existing hand-optimized DD code and the compactness of fully-identity-reduced DDs (FIDDs).

Multi-core On-The-Fly Saturation

It is demonstrated for the first time that on-the-fly symbolic saturation can be successfully parallelized at a large scale in Sylvan’s multi-core decision diagrams used by the LTSmin model checker.

( Generalized Decision ) Diagrams supersede existing decision diagrams and are closed over { ∪ , ∩ , \ , ×

GDDs appear to have the compactness advantages of each of these encodings for those cases where the previous encoding had an advantage, and this research hopes to provide a basis for recommending the use of GDDs in practical model checking.

References

SHOWING 1-10 OF 48 REFERENCES

Symbolic CTL Model Checking of Asynchronous Systems Using Constrained Saturation

A new "constrained saturation" algorithm is introduced which constrains state exploration to a set of states satisfying given properties, and which can achieve orders-of-magnitude reduction in runtime and memory consumption with respect to methods based on breath-first search.

A dynamic firing speculation to speedup distributed symbolic state-space generation

  • Ming-Ying ChungG. Ciardo
  • Computer Science
    Proceedings 20th IEEE International Parallel & Distributed Processing Symposium
  • 2006
An implicit method to encode the firing history of decision diagram nodes, where patterns can be shared by nodes, is suggested, which reduces the memory requirements and enables dynamic speculation schemes that further improve runtime.

Saturation: An Efficient Iteration Strategy for Symbolic State-Space Generation

This paper presents a novel algorithm for generating state spaces of asynchronous systems using Multi-valued Decision Diagrams, and introduces a new elegant strategy, called saturation, and implements it in the tool SMART.

Saturation-Based Symbolic Reachability Analysis Using Conjunctive and Disjunctive Partitioning

A new saturation-based symbolic state-space generation algorithm for finite discrete-state systems, based on the structure of the high-level model specification, which can now be applied to completely general asynchronous systems, while requiring similar or better run-times and peak memory than previous saturation algorithms.

Symbolic State-Space Generation of Asynchronous Systems Using Extensible Decision Diagrams

We propose a new type of canonical decision diagrams, which allows a more efficient symbolic state-space generation for general asynchronous systems by allowing on-the-fly extension of the possible

Distributed State Space Generation of Discrete-State Stochastic Models

This article reports on the implementation of a distributed state space generator that may be linked to a number of existing system modeling tools and reports on performance observed on a network of workstations, as well as on a distributed memory multicomputer.

A Scalable Parallel Algorithm for Reachability Analysis of Very Large Circuits

This paper presents a scalable method for parallelizing symbolic reachability analysis on a distributed-memory environment of workstations. We have developed an adaptive partitioning algorithm that

Automated Parallelization of Discrete State-Space Generation

This work considers the problem of generating a large state-space in a distributed fashion and explores heuristic methods that completely automate the process, finding that remapping is extremely beneficial.

Speculative Image Computation for Distributed Symbolic Reachability Analysis

A history-based approach is introduced to dynamically recognize image computation (event firing) patterns and explore only firings that conform to these patterns and employ an implicit encoding for the patterns, so that the actual image computation history can be efficiently preserved.