Optimal Prediction of Synchronization-Preserving Races
Umang Mathur, Andreas Pavlogiannis, Mahesh Viswanathan

TL;DR
This paper introduces a new class of race prediction called sync-preserving races, providing a sound, complete, and nearly optimal algorithm for detecting them in concurrent programs, and establishing their computational complexity boundaries.
Contribution
It defines sync-preserving races, develops an optimal algorithm for predicting them, and proves the problem's computational complexity limits, advancing race detection techniques.
Findings
Algorithm runs in near-linear time and space for moderate parameters.
Predicting races with a single sync reversal is NP-complete.
The problem has a matching lower bound, indicating optimality.
Abstract
Concurrent programs are notoriously hard to write correctly, as scheduling nondeterminism introduces subtle errors that are both hard to detect and to reproduce. The most common concurrency errors are (data) races, which occur when memory-conflicting actions are executed concurrently. Consequently, considerable effort has been made towards developing efficient techniques for race detection. The most common approach is dynamic race prediction: given an observed, race-free trace of a concurrent program, the task is to decide whether events of can be correctly reordered to a trace that witnesses a race hidden in . In this work we introduce the notion of sync(hronization)-preserving races. A sync-preserving race occurs in when there is a witness in which synchronization operations (e.g., acquisition and release of locks) appear in…
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.
