Probabilistic Concurrency Testing for Weak Memory Programs

Conference Paper (2023)
Author(s)

Mingyu Gao (Student TU Delft)

Soham Chakraborty (TU Delft - Programming Languages)

Burcu Külahçıoğlu Kulahcioglu Ozkan (TU Delft - Software Engineering)

Research Group
Programming Languages
Copyright
© 2023 Mingyu Gao, S.S. Chakraborty, Burcu Kulahcioglu Ozkan
DOI related publication
https://doi.org/10.1145/3575693.3575729
More Info
expand_more
Publication Year
2023
Language
English
Copyright
© 2023 Mingyu Gao, S.S. Chakraborty, Burcu Kulahcioglu Ozkan
Research Group
Programming Languages
Pages (from-to)
603-616
ISBN (electronic)
978-1-4503-9916-6
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

The Probabilistic Concurrency Testing (PCT) algorithm that provides theoretical guarantees on the probability of detecting concurrency bugs does not apply to weak memory programs. The PCT algorithm builds on the interleaving semantics of sequential consistency, which does not hold for weak memory concurrency. It is because weak memory concurrency allows additional behaviors that cannot be produced by any interleaving execution. In this paper, we generalize PCT to address weak memory concurrency and present Probabilistic Concurrency Testing for Weak Memory (PCTWM). We empirically evaluate PCTWM on a set of well-known weak memory program benchmarks in comparison to the state-of-the-art weak memory testing tool C11Tester. Our results show that PCTWM can detect concurrency bugs more frequently than C11Tester.