Implementing Split-Mode Barriers in OpenSHMEM
Barriers synchronize the state of many processing elements working in parallel. No worker may leave a barrier before all the others have arrived. High performance applications hide latency by keeping a large number of operations in progress asynchronously. Since barriers synchronize all these operations, maximum performance requires that barriers have as little overhead as possible. When some workers arrive at a barrier much later than others, the early arrivers must sit idle waiting for them. Split-mode barriers provide barrier semantics while also allowing the early arrivers to make progress on other tasks. In this paper we describe the process and several challenges in developing split-mode barriers in the OpenSHMEM programming environment.
KeywordsOpenSHMEM barrier split-mode
Unable to display preview. Download preview PDF.
- 1.OpenSHMEM, http://www.openshmem.org/
- 2.MPI Forum: MPI: A Message Passing Interface. In: Proceedings of Supercomputing (1993) Google Scholar
- 3.UPC Consortium, UPC Language Specifications, v1.2. Lawrence Berkeley National Lab, Tech. Rep. LBNL-59208 (2005) Google Scholar
- 5.Message Passing Interface Forum: MPI: A Message-Passing Interface Standard Version 3.0 (2012)Google Scholar
- 7.Hoefler, T., Siebert, C., Lumsdaine, A.: Scalable Communication Protocols for Dynamic Sparse Data Exchange. In: Principles and Practice of Parallel Programming. ACM (2010)Google Scholar