Location Pairs: A Test Coverage Metric for Shared-Memory Concurrent Programs

We present a coverage metric targeted at shared memory concurrent programs: the Location Pairs (LP) coverage metric. The goals of this metric are (i) to measure how thoroughly a program has been tested from a concurrency standpoint, i.e., whether enough qualitatively different thread interleavings have been explored, and (ii) to guide testing towards unexplored concurrency scenarios. This metric was inspired by an access pattern known to lead to high-level concurrency errors. We built a tool for measuring LP coverage and used the LP metric for interactive debugging. We also compared LP coverage with other concurrency coverage metrics on Java benchmarks. Using mutations and manually-inserted bugs, we demonstrated that LP coverage corresponds better to concurrency errors, is a better measure of how well a program is exercised concurrency-wise by a test set, reaches saturation later than other coverage metrics, and is viable and useful as an interactive testing and debugging tool.

Speaker Details

Serdar Tasiran received his BS in Electrical Engineering from Bilkent University in 1991, and his MS and PhD from UC Berkeley in Electrical Engineering and Computer Sciences in 1995 and 1998, respectively. He was a researcher at the Gigascale Systems Research Center , a multi-university, multi-company consortium until 2000. From 2000 to 2003, he was a research scientist at the Systems Research Center (part of DEC, Compaq and later HP Labs) in Palo Alto, CA. Since 2003, he has been at Koc University, Istanbul, Turkey. While at Koc University, he has had visiting appointments at MIT, EPFL, Microsoft Research, USA and India. His research interests are the specification, verification, performance estimation and optimization of concurrent systems.

Date:
Speakers:
Serdar Tasiran
Affiliation:
Koc University