NERSCPowering Scientific Discovery Since 1974

ECP UPC++ Training, November 1

November 1, 2019

In collaboration with ECP, NERSC is hosting a one-day training event on UPC++ on November 1, 2019.

UPC++ is a C++11 library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. UPC++ provides mechanisms for low-overhead one-sided communication, moving computation to data through remote-procedure calls, and expressing dependencies between asynchronous computations and data movement. It is particularly well-suited for implementing elaborate distributed data structures where communication is irregular or fine-grained. The UPC++ interfaces are designed to be composable and similar to those used in conventional C++. The UPC++ programmer can expect communication to run at close to hardware speeds.

In this tutorial we will introduce basic concepts and advanced optimization techniques of UPC++. We will discuss the UPC++ memory and execution models and walk through implementing basic algorithms in UPC++. We will also look at irregular applications and how to take advantage of UPC++ features to optimize their performance.


The workshop will be held on site at NERSC, in room 3101 at Shyh Wang Hall, Building 59, Berkeley Lab. Remote participation via Zoom will also be available.


A detailed agenda is forthcoming.


For more information and to register, please see the ECP UPC++ Tutorial Registration Page.

In person and Remote Connection Information