Treffer: UPC++ v1.0 Specification, Revision 2023.9.0

Title:
UPC++ v1.0 Specification, Revision 2023.9.0
Publisher Information:
eScholarship, University of California
Publication Year:
2023
Collection:
University of California: eScholarship
Document Type:
Fachzeitschrift article in journal/newspaper
File Description:
application/pdf
Language:
unknown
DOI:
10.25344/S4J592
Rights:
CC-BY
Accession Number:
edsbas.147118DC
Database:
BASE

Weitere Informationen

UPC++ is a C++ library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The key communication facilities in UPC++ are one-sided Remote Memory Access (RMA) and Remote Procedure Call (RPC). All communication operations are syntactically explicit and default to non-blocking; asynchrony is managed through the use of futures, promises and continuation callbacks, enabling the programmer to construct a graph of operations to execute asynchronously as high-latency dependencies are satisfied. A global pointer abstraction provides system-wide addressability of shared memory, including host and accelerator memories. The parallelism model is primarily process-based, but the interface is thread-safe and designed to allow efficient and expressive use in multi-threaded applications. The interface is designed for extreme scalability throughout, and deliberately avoids design features that could inhibit scalability.