5 research outputs found
Analysing the Performance of GPU Hash Tables for State Space Exploration
In the past few years, General Purpose Graphics Processors (GPUs) have been
used to significantly speed up numerous applications. One of the areas in which
GPUs have recently led to a significant speed-up is model checking. In model
checking, state spaces, i.e., large directed graphs, are explored to verify
whether models satisfy desirable properties. GPUexplore is a GPU-based model
checker that uses a hash table to efficiently keep track of already explored
states. As a large number of states is discovered and stored during such an
exploration, the hash table should be able to quickly handle many inserts and
queries concurrently. In this paper, we experimentally compare two different
hash tables optimised for the GPU, one being the GPUexplore hash table, and the
other using Cuckoo hashing. We compare the performance of both hash tables
using random and non-random data obtained from model checking experiments, to
analyse the applicability of the two hash tables for state space exploration.
We conclude that Cuckoo hashing is three times faster than GPUexplore hashing
for random data, and that Cuckoo hashing is five to nine times faster for
non-random data. This suggests great potential to further speed up GPUexplore
in the near future.Comment: In Proceedings GaM 2017, arXiv:1712.0834
On the Scalability of the GPUexplore Explicit-State Model Checker
The use of graphics processors (GPUs) is a promising approach to speed up
model checking to such an extent that it becomes feasible to instantly verify
software systems during development. GPUexplore is an explicit-state model
checker that runs all its computations on the GPU. Over the years it has been
extended with various techniques, and the possibilities to further improve its
performance have been continuously investigated. In this paper, we discuss how
the hash table of the tool works, which is at the heart of its functionality.
We propose an alteration of the hash table that in isolated experiments seems
promising, and analyse its effect when integrated in the tool. Furthermore, we
investigate the current scalability of GPUexplore, by experimenting both with
input models of varying sizes and running the tool on one of the latest GPUs of
NVIDIA.Comment: In Proceedings GaM 2017, arXiv:1712.0834