Runtime Refinement Checking of Concurrent Data Structures

  • Authors:
  • Serdar Tasiran;Shaz Qadeer

  • Affiliations:
  • Koç University, Istanbul, Turkey;Microsoft Research, USA

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a runtime technique for checking that a concurrent implementation of a data structure conforms to a high-level executable specification with atomic operations. The technique consists of two phases. In the first phase, the implementation code is instrumented in order to record informa- tion about its execution into a log. In the second phase, a verification thread runs concurrently with the implementation and uses the logged information to check that the execution conforms to the high-level specification. We pay special attention to reducing the impact of the runtime analysis on the concurrency characteristics and performance of the implementation. We are currently applying our technique to Boxwood [http://research.microsoft.com/research/sv/Boxwood], a distributed implementation of a B-link tree data structure.