Parameterized model checking of fine grained concurrency

  • Authors:
  • Divjyot Sethi;Muralidhar Talupur;Daniel Schwartz-Narbonne;Sharad Malik

  • Affiliations:
  • Princeton University;Strategic CAD Labs, Intel Corporation;Princeton University;Princeton University

  • Venue:
  • SPIN'12 Proceedings of the 19th international conference on Model Checking Software
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Concurrent data structures are provided in libraries such as Intel Thread Building Blocks and Java.util.concurrent to enable efficient implementation of multi-threaded programs. Their efficiency is achieved by using fine grained synchronization which creates less constrained interaction between the threads. This leads to a large number of possible interleavings and makes concurrent data structures hard to verify. In this paper, we describe our key insights from Murphi based parameterized model checking of these data structures. In particular, we describe the first model checking based framework to handle an unbounded number of threads for these data structures. This framework uses the CMP (CoMPositional) method which has been used in verifying cache coherence protocols. The CMP method requires the user to supply lemmas for abstraction refinement. A further contribution of our work is to show how a significant subset of these lemmas can be generated automatically.