Synchronization Debugging of Hybrid Parallel Programs
Research output: Contribution to book/conference proceedings/anthology/report › Conference contribution › Contributed › peer-review
Contributors
Abstract
In this paper we address the problem of locating race conditions among synchronization primitives in execution traces of hybrid parallel programs. In hybrid parallel programs collective and point-to-point synchronization can’t be analyzed separately. We introduce a model for synchronization primitives and formally define synchronization races with respect to the model. Based on these concepts we present an algorithm which accurately detects synchronization races and yields a task graph of the execution trace. The task graph represents the guaranteed ordering of events across thread and process boundaries. It is an essential core element for the further analysis (e.g. a data race detection) of a program. Depending on the synchronization model task graph construction can be an NP-hard problem. Our model allows to construct an algorithm with sub-quadratic time complexity. Thus programs adhering to the principles of our model are provable against race conditions. Therefore we argue, that our model should be used as a foundation for the design and implementation of synchronization functions.
Details
Original language | English |
---|---|
Title of host publication | Euro-Par 2016: Parallel Processing |
Editors | Pierre-François Dutot, Denis Trystram |
Place of Publication | Cham |
Publisher | Springer International Publishing AG |
Pages | 37-50 |
Number of pages | 14 |
ISBN (print) | 978-3-319-43659-3 |
Publication status | Published - 2016 |
Peer-reviewed | Yes |
External IDs
Scopus | 84984799156 |
---|