2013
DOI: 10.1145/2499368.2451121
|View full text |Cite
|
Sign up to set email alerts
|

Cooperative empirical failure avoidance for multithreaded programs

Abstract: Concurrency errors in multithreaded programs are difficult to find and fix. We propose Aviso, a system for avoiding scheduledependent failures. Aviso monitors events during a program's execution and, when a failure occurs, records a history of events from the failing execution. It uses this history to generate schedule constraints that perturb the order of events in the execution and thereby avoids schedules that lead to failures in future program executions. Aviso leverages scenarios where many instances of t… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
5
0

Year Published

2015
2015
2022
2022

Publication Types

Select...
3
2
1

Relationship

1
5

Authors

Journals

citations
Cited by 8 publications
(5 citation statements)
references
References 33 publications
(25 reference statements)
0
5
0
Order By: Relevance
“…Request permissions from Permissions@acm.org. ically, Symbiosis produces a DSP from a single failing schedule, enabling its use for failures observed rarely (i.e., in production) and does not require repeated program executions like prior work [31]. Our evaluation in Section 5 shows that DSPs have, on average, 81% fewer events than full schedules and shows qualitatively, with case studies, that DSPs help understand failures and fix bugs.…”
Section: Introductionmentioning
confidence: 88%
See 3 more Smart Citations
“…Request permissions from Permissions@acm.org. ically, Symbiosis produces a DSP from a single failing schedule, enabling its use for failures observed rarely (i.e., in production) and does not require repeated program executions like prior work [31]. Our evaluation in Section 5 shows that DSPs have, on average, 81% fewer events than full schedules and shows qualitatively, with case studies, that DSPs help understand failures and fix bugs.…”
Section: Introductionmentioning
confidence: 88%
“…in the chain to prevent that failure. This phenomenon is called the Avoidance-Testing Duality, and is detailed in previous work [31]. We now use some case studies to illustrate how differential schedule projections focus on relevant operations and help understand each failure.…”
Section: Differential Schedule Projection Efficacymentioning
confidence: 99%
See 2 more Smart Citations
“…The concurrency error is one of the well-known errors of software [2][3][4][5][6][7][8] and it is famous for its irreproducibility, which makes it very difficult to debug the error [4][5][6][7][8]. In a real-world application, about 70% of all concurrency errors are caused by atomicity violations [3]; it is a concurrent execution of a specific code region, i.e., critical section, that unexpectedly violates that region's atomicity.…”
Section: Introductionmentioning
confidence: 99%