Abstract
SHMEM is an important and popular Partitioned Global Address Space (PGAS) programming model. The OpenSHMEM API Specification Version 1.2 defines a SHMEM programming model and there are many implementations of at least most of the specification. This paper presents extensions to this API that can improve ease of programming and provide more opportunities for implementors to improve performance. Some of these features are particularly important for performance on heterogeneous system architectures with architectural features such as multi-core processors, processor accelerators, distributed memory, and heterogeneous memories. The new features described in this paper are: Alltoall Collectives, Flexible PE Subsets, Thread-Safety, Local Shared Memory Pointers, Put With Signal, and Non-blocking Put and Get. The benefits of each of these features in terms of ease of programming or program performance are also described.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Cray - Message Passing Toolkit. http://docs.cray.com/books/004-3689-001/html-004-3689-001/zfixedsllc0bet.html
HPCTools PGAS-Microbenchmarks. https://github.com/uhhpctools/pgas-microbench
OpenSHMEM - API Standard Specification 1.2. http://bongo.cs.uh.edu/site/sites/default/site_files/openshmem-specification-1.2.pdf
OSU Microbenchmarks. http://mvapich.cse.ohio-state.edu/benchmarks/
SGI - Message Passing Toolkit. http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&srch=&fname=/SGI_Developer/MPT_MPI_PM/sgi_html/front.html
UPC Collectives Library 2.0. http://upc.lbl.gov/publications/UPC-Collectives-PGAS11.pdf
Namashivayam, N., Ghosh, S., Khaldi, D., Eachempati, D., Chapman, B.: Native mode-based optimizations of remote memory accesses in openshmem for intel xeon phi. In: Proceedings of the 8th International Conference on Partitioned Global Address Space Programming Models, PGAS 2014 (2014)
Preissl, R., Wichmann, N., Long, B., Shalf, J., Ethier, S., Koniges. A.: Multithreaded global address space communication techniques for Gyrokinetic fusion applications on ultra-scale platforms. In: 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC), pp. 1–11, November 2011
Acknowledgement
The authors wish to acknowledge the Cray Inc. employees who worked on the design and implementation of these proposed extensions to OpenSHMEM: Monika ten Bruggencate, Kim McMahon, Steve Oyanagi, and Nick Radcliffe.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Knaak, D., Namashivayam, N. (2015). Proposing OpenSHMEM Extensions Towards a Future for Hybrid Programming and Heterogeneous Computing. In: Gorentla Venkata, M., Shamis, P., Imam, N., Lopez, M. (eds) OpenSHMEM and Related Technologies. Experiences, Implementations, and Technologies. OpenSHMEM 2014. Lecture Notes in Computer Science(), vol 9397. Springer, Cham. https://doi.org/10.1007/978-3-319-26428-8_4
Download citation
DOI: https://doi.org/10.1007/978-3-319-26428-8_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-26427-1
Online ISBN: 978-3-319-26428-8
eBook Packages: Computer ScienceComputer Science (R0)