Title :
Boosting multi-core reachability performance with shared hash tables
Author :
Laarman, Alfons ; Van de Pol, Jaco ; Weber, Michael
Author_Institution :
Formal Methods & Tools, Univ. of Twente, Enschede, Netherlands
Abstract :
This paper focuses on data structures for multi-core reachability, which is a key component in model checking algorithms and other verification methods. A cornerstone of an efficient solution is the storage of visited states. In related work, static partitioning of the state space was combined with thread-local storage. This solution leaves room for improvements. This paper presents a solution with a shared state storage. It is based on a lockless hash table implementation and scales better. The solution is specifically designed for the cache architecture of modern CPUs. Because model checking algorithms impose loose requirements on the hash table operations, their design can be streamlined substantially compared to related work on lockless hash tables. The resulting speedups are analyzed and compared with related tools. Our implementation outperforms two state-of-the-art multi-core model checkers, SPIN (presented at FMCAD 2006) and DiVinE, by a large margin, while placing fewer constraints on the load balancing and search algorithms.
Keywords :
cache storage; data structures; formal verification; resource allocation; DiVinE; SPIN; cache architecture; data structures; load balancing; lockless hash table; model checking; multicore model checkers; multicore reachability performance; search algorithm; shared hash tables; shared state storage; state space; static partitioning; thread-local storage; verification method; Algorithm design and analysis; Arrays; Computational modeling; Load management; Load modeling; Synchronization;
Conference_Titel :
Formal Methods in Computer-Aided Design (FMCAD), 2010
Conference_Location :
Lugano
Print_ISBN :
978-1-4577-0734-6
Electronic_ISBN :
978-0-9835678-0-6