Predicting and Witnessing Data Races Using CSP
- Cite this paper as:
- Carril L.M., Tichy W.F. (2015) Predicting and Witnessing Data Races Using CSP. In: Havelund K., Holzmann G., Joshi R. (eds) NASA Formal Methods. NFM 2015. Lecture Notes in Computer Science, vol 9058. Springer, Cham
Detecting and debugging data races is a complex task due to the large number of interleavings possible in a parallel program. Most tools can find the data races reliably in an observed execution, but they miss errors in alternative reorderings of events. In this paper we describe an automated approach to generate, from a single program trace, a model in CSP with alternative interleavings. We check for data races patterns and obtain a witness that allows the reproduction of errors. Reproduction reduces the developer effort to correct the error.
KeywordsData race Concurrent programs Debug CSP
Unable to display preview. Download preview PDF.