Print Email Facebook Twitter Probabilistic Testing for Weak Memory Concurrency Title Probabilistic Testing for Weak Memory Concurrency Author Gao, Mingyu (TU Delft Electrical Engineering, Mathematics and Computer Science) Contributor Özkan, B. (mentor) Chakraborty, S.S. (mentor) van Deursen, A. (mentor) Degree granting institution Delft University of Technology Programme Computer Science Date 2022-09-05 Abstract The Probabilistic Concurrency Testing (PCT) algorithm provides theoretical guarantees for the probability of detecting concurrency bugs in a sequential consistency memory model, but its theoretical guarantees do not apply to weak memory concurrency. The weak memory concurrency refers to the modern compiler’s optimization that relaxes the sequential consistency requirements. The PCT approach is based on the sequential consistency interleaving semantics, 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.Based on the PCT algorithm transforming the concurrency bug to the ordering constraints(bug depth), this thesis presents Probabilistic Concurrency Testing for Weak Memory (PCTWM) to capture the concurrency behavior in weak memory programs, further revising the notion of the bug depth to the constraints of communication relations between events.We implement both the PCT and PCTWM algorithms on top of the state-of-the-art weak memory testing tool - C11Tester. We empirically evaluate the bug detection ability of the PCTWM on a set of well-known weak memory program benchmarks. Our results show that PCTWM can detect concurrency bugs more frequently than C11Tester. Subject concurrency bugprobabilistic testingweak memory model To reference this document use: http://resolver.tudelft.nl/uuid:28878472-f58d-42ad-b889-ef5e23d3d129 Part of collection Student theses Document type master thesis Rights © 2022 Mingyu Gao Files PDF pctwm_thesis_MingyuGao.pdf 6.86 MB Close viewer /islandora/object/uuid:28878472-f58d-42ad-b889-ef5e23d3d129/datastream/OBJ/view