Complexity of Consistency Testing for the Release-Acquire Semantics
R. Govind, S. Krishna, Sanchari Sil, B. Srivathsan

TL;DR
This paper investigates the complexity of consistency testing under the release-acquire memory model, showing polynomial-time algorithms under certain restrictions and NP-hardness in others.
Contribution
It provides the first polynomial-time algorithm for consistency testing when each memory location is written by at most one thread, and establishes tight hardness results for other cases.
Findings
Polynomial-time testing when each location has at most one writer.
NP-hardness when two threads may write to the same location.
No subexponential algorithms for three or more writers under ETH.
Abstract
In a seminal work, Gibbons and Korach studied the complexity of deciding whether an observed sequence of reads and writes of a multi-threaded program admits a sequentially consistent interleaving. They showed the problem to be NP-hard even under strong syntactic restrictions. More recently, Chakraborty et al. considered the problem for weak memory models and proved that NP-hardness remains even when the number of threads, the number of memory locations, and the value domain are all bounded. In this paper we revisit the problem for the release-acquire variants of the C11 memory model. Our main positive result is that consistency testing can be done in polynomial-time when each memory location is written by at most one thread (multiple readers are allowed). Notably, this restriction is already NP-hard for sequential consistency. We complement this upper bound with tight hardness…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
