2015
DOI: 10.1145/2858788.2688519
|View full text |Cite
|
Sign up to set email alerts
|

Dynamic deadlock verification for general barrier synchronisation

Abstract: We present Armus, a dynamic verification tool for deadlock detection and avoidance specialised in barrier synchronisation. Barriers are used to coordinate the execution of groups of tasks, and serve as a building block of parallel computing. Our tool verifies more barrier synchronisation patterns than current state-of-the-art. To improve the scalability of verification, we introduce a novel event-based representation of concurrency constraints, and a graph-based technique for deadlock analysis. The implementat… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
14
0

Year Published

2015
2015
2021
2021

Publication Types

Select...
2
2
2

Relationship

1
5

Authors

Journals

citations
Cited by 8 publications
(14 citation statements)
references
References 58 publications
0
14
0
Order By: Relevance
“…This gave 48 different instances with 2 to 3 phasers and 2 to 4 tasks (except for the parameterized case). Our tool uses global phaser and task variables as in [5]. We have experimented with adapting the view abstraction technique [16] to verify phaser programs generating arbitrary many tasks, i.e., parameterized verification where the number of phasers is fixed.…”
Section: Resultsmentioning
confidence: 99%
See 2 more Smart Citations
“…This gave 48 different instances with 2 to 3 phasers and 2 to 4 tasks (except for the parameterized case). Our tool uses global phaser and task variables as in [5]. We have experimented with adapting the view abstraction technique [16] to verify phaser programs generating arbitrary many tasks, i.e., parameterized verification where the number of phasers is fixed.…”
Section: Resultsmentioning
confidence: 99%
“…Indeed, reachability of configuration (s F , 0, 0, 0) (three counters x, y, z with zero values at some control location s F ) is undecidable for reset-VASs. Figures (4)(5) in the appendix describe a phaser program where a main task t spawns three tasks {t 12 , t 23 , t 31 } s.t. t $a$b runs task$a$b for each $a$b ∈ {12, 23, 31}.…”
Section: Plain Reachability and Deadlocksmentioning
confidence: 99%
See 1 more Smart Citation
“…Unlike [93] which proposes an approach for verifying correct synchronization of static and dynamic barriers, we focus on fully automatic verification and consider the richer and more challenging phaser construct. The work of [40] considers the dynamic verification of phaser programs and can therefore only reason about particular program inputs and runs. The work in [10] uses Java Path Finder [68] to explore several runs, but still for only one concrete input at a time.…”
Section: Related Workmentioning
confidence: 99%
“…This is well beyond [9] and requires a more complex symbolic representation with a deeper termination argument. The work of [6] considers the dynamic verification of phaser programs and can therefore only be used to detect deadlocks at runtime. The work in [2] uses Java Path Finder [10] to explore all execution paths of the application.…”
Section: Introductionmentioning
confidence: 99%