Title
An On-the-Fly Method to Exchange Vector Clocks in Distributed-Memory Programs
Abstract
Vector clocks are logical timestamps used in correctness tools to analyze the happened-before relation between events in parallel program executions. In particular, race detectors use them to find concurrent conflicting memory accesses, and replay tools use them to reproduce or find alternative execution paths. To record the happened-before relation with vector clocks, tool developers have to consider the different synchronization concepts of a programming model, e.g., barriers, locks, or message exchanges. Especially in distributed-memory programs, various concepts result in explicit and implicit synchronization between processes. Previously implemented vector clock exchanges are often specific to a single programming model, and a translation to other programming models is not trivial. Consequently, analyses relying on the vector clock exchange remain model-specific. This paper proposes an abstraction layer for on-the-fly vector clock exchanges for distributed-memory programs. Based on the programming models MPI, OpenSHMEM, and GASPI, we define common synchronization primitives and explain how model-specific procedures map to our model-agnostic abstraction layer. The exchange model is general enough also to support synchronization concepts of other parallel programming models. We present our implementation of the vector clock abstraction layer based on the Generic Tool Infrastructure with translators for MPI and OpenSHMEM. In an overhead study using the SPEC MPI 2007 benchmarks, the slowdown of the implemented vector clock exchange ranges from 1.1x to 12.6x for runs with up to 768 processes.
Year
DOI
Venue
2022
10.1109/IPDPSW55747.2022.00093
2022 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)
Keywords
DocType
ISSN
Vector clock,distributed memory,synchronization,correctness tools,MPI,OpenSHMEM,GASPI
Conference
2164-7062
ISBN
Citations 
PageRank 
978-1-6654-9748-0
0
0.34
References 
Authors
7
5
Name
Order
Citations
PageRank
Simon Schwitanski100.34
Felix Tomski200.34
Joachim Protze300.68
Christian Terboven400.34
Matthias S. Müller500.34