Stable Scheduling Constraints for Controlled Concurrency Testing
Year: 2026
Type: software
Abstract: A common method to eliminate false positives/negatives in case of concurrency testing methods is to derive scheduling constraints from a specific program run and then enforce these constraints in some rerun of the program. Scheduling constraints refer to concurrency objects, e.g.,~threads, locks, channels, which are generated dynamically and usually represented by memory addresses. These memory addresses may change in the rerun which then renders the scheduling constraints meaningless. We introduce an expressive scheduling abstraction where scheduling constraints are stable, i.e.~meaningful, across program runs. We have fully implemented the approach for the Go programming language via a patch of Go's runtime system and provide experiments on standard Go concurrency benchmarks and real-world Go libraries.
Author: Anonymous Authors
Language: English
Subfield: Software
Field: Computer Science
Domain: Physical Sciences
Open Access status: green
OpenAlex ID: W7165655029
