skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: The UPC++ PGAS library for exascale computing. Extended Abstract

Abstract

We describe UPC++ V1.0, a C++11 library that supports APGAS programming. UPC++ targets distributed data structures where communication is irregular or fine-grained. The key abstractions are global pointers, asynchronous programming via RPC, and futures. Global pointers incorporate ownership information useful in optimizing for locality. Futures capture data readiness state, are useful for scheduling and also enable the programmer to chain operations to execute asynchronously as high-latency dependencies become satisfied, via continuations. The interfaces for moving non-contiguous data and handling memories with different optimal access methods are composable and closely resemble those used in modern C++. Communication in UPC++ runs at close to hardware speeds by utilizing the low-overhead GASNet-EX communication library.

Authors:
; ; ; ; ; ; ;
Publication Date:
Research Org.:
Lawrence Berkeley National Lab. (LBNL), Berkeley, CA (United States)
Sponsoring Org.:
USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC-21)
OSTI Identifier:
1456983
DOE Contract Number:  
AC02-05CH11231
Resource Type:
Conference
Resource Relation:
Conference: 2. Annual PGAS Applications Workshop - Held in conjunction with SC 2017: The International Conference for High Performance Computing, Networking, Storage and Analysis, Denver, CO (United States), 12-17 Nov 2017
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING

Citation Formats

Bachan, John, Bonachea, Dan, Hargrove, Paul H., Hofmeyr, Steve, Jacquelin, Mathias, Kamil, Amir, van Straalen, Brian, and Baden, Scott B. The UPC++ PGAS library for exascale computing. Extended Abstract. United States: N. p., 2017. Web. doi:10.1145/3144779.3169108.
Bachan, John, Bonachea, Dan, Hargrove, Paul H., Hofmeyr, Steve, Jacquelin, Mathias, Kamil, Amir, van Straalen, Brian, & Baden, Scott B. The UPC++ PGAS library for exascale computing. Extended Abstract. United States. doi:10.1145/3144779.3169108.
Bachan, John, Bonachea, Dan, Hargrove, Paul H., Hofmeyr, Steve, Jacquelin, Mathias, Kamil, Amir, van Straalen, Brian, and Baden, Scott B. Sun . "The UPC++ PGAS library for exascale computing. Extended Abstract". United States. doi:10.1145/3144779.3169108. https://www.osti.gov/servlets/purl/1456983.
@article{osti_1456983,
title = {The UPC++ PGAS library for exascale computing. Extended Abstract},
author = {Bachan, John and Bonachea, Dan and Hargrove, Paul H. and Hofmeyr, Steve and Jacquelin, Mathias and Kamil, Amir and van Straalen, Brian and Baden, Scott B.},
abstractNote = {We describe UPC++ V1.0, a C++11 library that supports APGAS programming. UPC++ targets distributed data structures where communication is irregular or fine-grained. The key abstractions are global pointers, asynchronous programming via RPC, and futures. Global pointers incorporate ownership information useful in optimizing for locality. Futures capture data readiness state, are useful for scheduling and also enable the programmer to chain operations to execute asynchronously as high-latency dependencies become satisfied, via continuations. The interfaces for moving non-contiguous data and handling memories with different optimal access methods are composable and closely resemble those used in modern C++. Communication in UPC++ runs at close to hardware speeds by utilizing the low-overhead GASNet-EX communication library.},
doi = {10.1145/3144779.3169108},
journal = {},
number = ,
volume = ,
place = {United States},
year = {2017},
month = {11}
}

Conference:
Other availability
Please see Document Availability for additional information on obtaining the full-text document. Library patrons may search WorldCat to identify libraries that hold this conference proceeding.

Save / Share:

Works referenced in this record:

PaStiX: a high-performance parallel direct solver for sparse symmetric positive definite systems
journal, February 2002


UPC++: A PGAS Extension for C++
conference, May 2014

  • Zheng, Yili; Kamil, Amir; Driscoll, Michael B.
  • 2014 IEEE International Parallel & Distributed Processing Symposium (IPDPS), 2014 IEEE 28th International Parallel and Distributed Processing Symposium
  • DOI: 10.1109/IPDPS.2014.115

A Fully Asynchronous Multifrontal Solver Using Distributed Dynamic Scheduling
journal, January 2001

  • Amestoy, Patrick R.; Duff, Iain S.; L'Excellent, Jean-Yves
  • SIAM Journal on Matrix Analysis and Applications, Vol. 23, Issue 1
  • DOI: 10.1137/S0895479899358194

The university of Florida sparse matrix collection
journal, November 2011

  • Davis, Timothy A.; Hu, Yifan
  • ACM Transactions on Mathematical Software, Vol. 38, Issue 1
  • DOI: 10.1145/2049662.2049663