Swarm model checking on the GPU

Richard DeFrancisco, Shenghsun Cho, Michael Ferdman, Scott A. Smolka

Research output: Contribution to journalArticlepeer-review

11 Scopus citations

Abstract

We present Grapple, a new and powerful framework for explicit-state model checking on GPUs. Grapple is based on swarm verification (SV), a model-checking technique wherein a collection or swarm of small, memory- and time-bounded verification tests (VTs) are run in parallel to perform state-space exploration. SV achieves high state-space coverage via diversification of the search strategies used by constituent VTs. Grapple represents a swarm implementation for the GPU. In particular, it runs a parallel swarm of internally parallel VTs, which are implemented in a manner that specifically targets the GPU architecture and the SIMD parallelism its computing cores offer. Grapple also makes effective use of the GPU shared memory, eliminating costly inter-block communication overhead. We conducted a comprehensive performance analysis of Grapple focused on various design parameters, including the size of the visited-state queue structure, implementation of guard statements, and nondeterministic exploration order. Tests are run with multiple hardware configurations, including on the Amazon cloud. Our results show that Grapple performs favorably compared to the SPIN swarm and a prior non-swarm GPU implementation. Although a recently debuted FPGA swarm is faster, the deployment process to the FPGA is much more complex than Grapple ’s.

Original languageEnglish (US)
Pages (from-to)583-599
Number of pages17
JournalInternational Journal on Software Tools for Technology Transfer
Volume22
Issue number5
DOIs
StatePublished - Oct 1 2020
Externally publishedYes

Keywords

  • GPU
  • Grapple
  • Model checking
  • Swarm verification

ASJC Scopus subject areas

  • Software
  • Information Systems

Fingerprint

Dive into the research topics of 'Swarm model checking on the GPU'. Together they form a unique fingerprint.

Cite this