2013
DOI: 10.1007/978-3-642-41202-8_16
|View full text |Cite
|
Sign up to set email alerts
|

Verification of Static and Dynamic Barrier Synchronization Using Bounded Permissions

Abstract: Abstract. Mainstream languages such as C/C++ (with Pthreads), Java, and .NET provide programmers with both static and dynamic barriers for synchronizing concurrent threads in fork/join programs. However, such barrier synchronization in fork/join programs is hard to verify since programmers must not only keep track of the dynamic number of participating threads, but also ensure that all participants proceed in correctly synchronized phases. As barriers are commonly used in practice, verifying correct synchroniz… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
6
0

Year Published

2013
2013
2021
2021

Publication Types

Select...
4
3
2

Relationship

1
8

Authors

Journals

citations
Cited by 9 publications
(6 citation statements)
references
References 28 publications
0
6
0
Order By: Relevance
“…Java Phasers have similar semantics to named barriers, but are implemented in software [23]. Other (non-exhaustive) work on simple barriers such as those used for distributed programming include [2,17]. While there are some similarities, the fundamental implications of named barriers being a hardware resource instead of a software object give them a much stricter semantics which is therefore important to verify.…”
Section: Discussion and Related Workmentioning
confidence: 99%
“…Java Phasers have similar semantics to named barriers, but are implemented in software [23]. Other (non-exhaustive) work on simple barriers such as those used for distributed programming include [2,17]. While there are some similarities, the fundamental implications of named barriers being a hardware resource instead of a software object give them a much stricter semantics which is therefore important to verify.…”
Section: Discussion and Related Workmentioning
confidence: 99%
“…We are not aware of automatic formal verification works other than ours (presented in Chapters 4 and 5) that focus on a dynamic synchronization construct that allows tasks to register with and deregister from the construct in runtime. 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.…”
Section: Related Workmentioning
confidence: 99%
“…Saraswat and Jagadeesan [59] formalise the concurrency primitives of X10. Le et al [42] devise a verification for the correct use of a cyclic barrier in a fork/join programming language. Vasudevan et al [68] perform static analysis to improve performance of synchronisation mechanisms.…”
Section: Related Workmentioning
confidence: 99%