@inproceedings{4c9aeb7ceeda4bdfabd3fd1fe37fcbe2,
title = "Dynamic race prediction in linear time",
abstract = "Writing reliable concurrent software remains a huge challenge for today's programmers. Programmers rarely reason about their code by explicitly considering different possible inter-leavings of its execution. We consider the problem of detecting data races from individual executions in a sound manner. The classical approach to solving this problem has been to use Lamport's happens-before (HB) relation. Until now HB remains the only approach that runs in linear time. Previous efforts in improving over HB such as causallyprecedes (CP) and maximal causal models fall short due to the fact that they are not implementable efficiently and hence have to compromise on their race detecting ability by limiting their techniques to bounded sized fragments of the execution. We present a new relation weak-causally-precedes (WCP) that is provably better than CP in terms of being able to detect more races, while still remaining sound. Moreover, it admits a linear time algorithm which works on the entire execution without having to fragment it.",
keywords = "Concurrency, Online algorithm, Race prediction",
author = "Dileep Kini and Umang Mathur and Mahesh Viswanathan",
note = "Publisher Copyright: {\textcopyright} 2017 ACM.; 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2017 ; Conference date: 18-06-2017 Through 23-06-2017",
year = "2017",
month = jun,
day = "14",
doi = "10.1145/3062341.3062374",
language = "English (US)",
series = "Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)",
publisher = "Association for Computing Machinery",
pages = "157--170",
editor = "Albert Cohen and Martin Vechev",
booktitle = "PLDI 2017 - Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation",
}