Distributed binary decision diagrams for symbolic reachability



\textbf{Best paper award.}

Published in: SPIN pp 21–30

DOI: 10.1145/3092282.3092284



Decision diagrams are used in symbolic verification to concisely represent state spaces. A crucial symbolic verification algorithm is reachability: systematically exploring all reachable system states. Although both parallel and distributed reachability algorithms exist, a combined solution is relatively unexplored. This paper contributes BDD-based reachability algorithms targeting compute clusters: high-performance networks of multi-core machines. The proposed algorithms may use the entire memory of every machine, allowing larger models to be processed while increasing performance by using all available computational power. To do this effectively, a distributed hash table, cluster-based work stealing algorithms, and several caching structures have been designed that all utilise the newest networking technology. The approach is evaluated extensively on a large collection of models, thereby demonstrating speedups up to 51,1x with 32 machines. The proposed algorithms not only benefit from the large amounts of available memory on compute clusters, but also from all available computational resources.

BibTeX entry:

 author = {Wytse Oortwijn and Tom van Dijk and Jaco van de Pol},
 booktitle = {SPIN},
 doi = {10.1145/3092282.3092284},
 pages = {21--30},
 publisher = {ACM},
 title = {Distributed binary decision diagrams for symbolic reachability},
 year = {2017}