Efficient Linearizability Monitoring for Sets, Stacks, Queues and Priority Queues

📅 2024-10-06
🏛️ arXiv.org
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This work addresses the automatic verification of linearizability for concurrent objects—including sets, stacks, queues, and priority queues—under the distinct-value insertion constraint. We present the first polynomial-time algorithm that *exactly* decides linearizability under this constraint. Unlike prior approaches—limited to read-write registers or yielding unsound results for stacks/queues—we provide the first rigorous proof that linearizability checking for these classic data structures is polynomial-time solvable under distinct values, correcting critical flaws in earlier work. Our method leverages constraint propagation and partial-order reconstruction to build a lightweight online monitoring framework, integrating event dependency graph modeling with an efficient linearization point search strategy. Experimental evaluation demonstrates 100% verification accuracy and throughput improvements of 3.2×–8.7× over state-of-the-art tools, enabling real-time, high-concurrency linearizability validation.

Technology Category

Application Category

📝 Abstract
In this paper, we consider the problem of automatically monitoring linearizability. Here, one observes an execution of a concurrent program that interacts with a concurrent object and determines if the execution witnesses the violation of linearizability with respect to the sequential specification of the underlying data structure of the concurrent object. This problem has been extensively studied in the past for read-write registers, and both tight upper and lower bounds have been proposed in this case. While this problem has also been studied for the case of other prominent data structures such as stacks and queues, we find that these results are either not extensive or in some cases incorrect. In this paper, we study the problem under the restriction where values inserted in the data types are distinct (in the execution observed). We then show that under such a restriction, the linearizability problem is solvable in polynomial time for these data types. Beyond theoretical soundness and completeness, the algorithms proposed are empirically proven to outperform all state-of-the-art linearizability monitors.
Problem

Research questions and friction points this paper is trying to address.

Automated linearizability monitoring for concurrent objects
Polynomial-time solution for distinct value insertions
Empirical superiority over existing linearizability monitors
Innovation

Methods, ideas, or system contributions that make the work stand out.

Polynomial-time linearizability monitoring
Distinct value restriction
Outperforms state-of-the-art monitors
🔎 Similar Papers