Title
Concurrency testing using schedule bounding: an empirical study
Abstract
We present the first independent empirical study on schedule bounding techniques for systematic concurrency testing (SCT). We have gathered 52 buggy concurrent software benchmarks, drawn from public code bases, which we call SCTBench. We applied a modified version of an existing concurrency testing tool to SCTBench to attempt to answer several research questions, including: How effective are the two main schedule bounding techniques, preemption bounding and delay bounding, at bug finding? What challenges are associated with applying SCT to existing code? How effective is schedule bounding compared to a naive random scheduler at finding bugs? Our findings confirm that delay bounding is superior to preemption bounding and that schedule bounding is more effective at finding bugs than unbounded depth-first search. The majority of bugs in SCTBench can be exposed using a small bound (1-3), supporting previous claims, but there is at least one benchmark that requires 5 preemptions. Surprisingly, we found that a naive random scheduler is at least as effective as schedule bounding for finding bugs. We have made SCTBench and our tools publicly available for reproducibility and use in future work.
Year
DOI
Venue
2014
10.1145/2555243.2555260
PPOPP
Keywords
Field
DocType
future work,existing code,public code base,bug finding,systematic concurrency testing,main schedule,buggy concurrent software benchmarks,existing concurrency testing tool,naive random scheduler,concurrency testing,independent empirical study,concurrency
Preemption,Programming language,Computer science,Concurrency,Theoretical computer science,Software,Empirical research,Distributed computing,Bounding overwatch
Conference
Volume
Issue
ISSN
49
8
0362-1340
Citations 
PageRank 
References 
15
0.54
21
Authors
3
Name
Order
Citations
PageRank
Paul Thomson11225.85
Alastair F. Donaldson266152.35
Adam Betts325113.81