2010
DOI: 10.1145/1735970.1736040
|View full text |Cite
|
Sign up to set email alerts
|

A randomized scheduler with probabilistic guarantees of finding bugs

Abstract: This paper presents a randomized scheduler for finding concurrency bugs. Like current stress-testing methods, it repeatedly runs a given test program with supplied inputs. However, it improves on stress-testing by finding buggy schedules more effectively and by quantifying the probability of missing concurrency bugs. Key to its design is the characterization of the depth of a concurrency bug as the minimum number of scheduling constraints required to find it. In a single run of a program with n … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

3
99
0

Year Published

2010
2010
2019
2019

Publication Types

Select...
6
2

Relationship

0
8

Authors

Journals

citations
Cited by 73 publications
(102 citation statements)
references
References 24 publications
3
99
0
Order By: Relevance
“…We show that delay-bounded depth-first state-reachability is an NPcomplete problem. 7 Though this exploration corresponds to an underapproximation of the program semantics, the complexity is lower than the precise EXPSPACE-complete explorations of Sen and Viswanathan [37] and Jhala and Majumdar [19] for non-preemptive asynchronous programs. Additionally, our underapproximation has a lower complexity than the PSPACE-hard underapproximation [5] used by Jhala and Majumdar [19]'s algorithm, which corresponds to our (non-preemptive) bounded bag semantics (see Scheduler 2).…”
Section: Complexity Of Depth-first Schedulingmentioning
confidence: 99%
See 1 more Smart Citation
“…We show that delay-bounded depth-first state-reachability is an NPcomplete problem. 7 Though this exploration corresponds to an underapproximation of the program semantics, the complexity is lower than the precise EXPSPACE-complete explorations of Sen and Viswanathan [37] and Jhala and Majumdar [19] for non-preemptive asynchronous programs. Additionally, our underapproximation has a lower complexity than the PSPACE-hard underapproximation [5] used by Jhala and Majumdar [19]'s algorithm, which corresponds to our (non-preemptive) bounded bag semantics (see Scheduler 2).…”
Section: Complexity Of Depth-first Schedulingmentioning
confidence: 99%
“…Finally, runtime-schedule "fuzzers" such as CONTEST [12] and CALFUZZER [20] introduce delays by adding sleep statements; PCT [7] introduces delays by randomly perturbing task priorities. These techniques share with delay-bounding the ability to scale to many tasks.…”
Section: Related Workmentioning
confidence: 99%
“…Our method is also different from the various testing techniques based on randomization, e.g. IBM's Contest [4] and [1], although randomization can be used to diversify the input to our HaPSet learning.…”
Section: Related Workmentioning
confidence: 99%
“…Therefore, it is expected that operating systems 1 The classification is not mean to be a complete list. 2 In the master-slave technology, a single core manages task assignments, whereas, in the dataflow-based core managements, the assignments are based on data dependencies. 3 A technology to hide the physical characteristic of computing platforms.…”
Section: Environmental Parametersmentioning
confidence: 99%
“…Eytani et al introduce a randomization algorithm which targets events causing interleaving defects. Burckhardt et al [2] state that interleaving bugs are usually caused by unanticipated interactions among a few instructions, which are shared by the threads. Burckhardt et al present a probabilistic concurrency testing scheduler that runs a test program several times with given inputs and computes the probability of finding bugs for each test run.…”
Section: Introductionmentioning
confidence: 99%