DocumentCode :
2550093
Title :
Predictive analysis for detecting serializability violations through Trace Segmentation
Author :
Sinha, Arnab ; Malik, Sharad ; Wang, Chao ; Gupta, Aarti
fYear :
2011
fDate :
11-13 July 2011
Firstpage :
99
Lastpage :
108
Abstract :
We address the problem of detecting serializability violations in a concurrent program using predictive analysis, where a violation is detected either in an observed trace or in an alternate interleaving of events in that trace. Under the widely used notion of conflict-serializability, checking whether a given execution is serializable can be done in polynomial time. However, when all possible interleavings are considered, the problem becomes intractable. We address this in practice through a graph-based method, which for a given atomic block and trace, derives a smaller segment of the trace, referred to as the Trace Atomicity Segment (TAS), for further systematic exploration. We use the observed write-read pairs of events in the given trace to consider a set of events that guarantee feasibility, i.e., each interleaving of these events corresponds to some real execution of the program. We call this set of interleavings the almost view-preserving (AVP) interleavings. We show that the TAS is sufficient for finding serializability violations among all AVP interleavings. Further, the TAS enables a simple static check that can prove the absence of a violation. This check often succeeds in practice. If it fails, we perform a systematic exploration over events in the TAS, where we use dynamic partial order reduction with additional pruning to reduce the number of interleavings considered. Unlike previous efforts that are less precise, when our method reports a serializability violation, the reported interleaving is guaranteed to correspond to an actual execution of the program. We report experimental results that demonstrate the effectiveness of our method in detecting serializability violations for Java and C/C++ benchmark programs.
Keywords :
C++ language; Java; concurrency control; Java; almost view-preserving interleavings; concurrent program; dynamic partial order reduction; graph-based method; predictive analysis; serializability violation detection; trace atomicity segmentation; Image edge detection; Indexes; Instruction sets; Java; Predictive models; Synchronization; Systematics;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Formal Methods and Models for Codesign (MEMOCODE), 2011 9th IEEE/ACM International Conference on
Conference_Location :
Cambridge
Print_ISBN :
978-1-4577-0117-7
Electronic_ISBN :
978-1-4577-0118-4
Type :
conf
DOI :
10.1109/MEMCOD.2011.5970516
Filename :
5970516
Link To Document :
بازگشت