NERSCPowering Scientific Discovery for 50 Years

OpenMP Offload 2023 training, Part 2: Optimization and Data Movement, Oct 6, 2023

October 6, 2023

This is part 2 of a four-part OpenMP Offload training that will enable application teams and developers to accelerate their code with the use of GPUs, as well as exploit the latest OpenMP functionality to program multi-core platforms like Perlmutter and Frontier. This session, offered by OLCF and NERSC, is also part of the Performance Portability training series.

Part 2: Optimization and Data Movement

9 - 11:30 a.m. (Pacific Daylight Time/UTC -7), Friday, October 6 (online only)

The OpenMP API is a scalable model that gives parallel programmers a simple and flexible interface for developing portable parallel applications in C/C++ and Fortran. In its inception it was targeted for shared memory parallelism, however current versions of OpenMP also enable data and program execution to offload from the host CPU to target GPUS and their associated memory on the same node.

For part 2 OLCF/NERSC staff will cover optimization strategies and show how efficient data movement and a better understanding of the hierarchy of parallelism available can lead to improved performance. We will also cover best practices for OpenMP Offload.

Hands-on exercises will follow the lectures. The hands-on sessions will be performed on OLCF Frontier and NERSC Perlmutter. Participants without existing accounts will be provided training accounts on Perlmutter.

Agenda 

Time (Pacific Time) Topic Presenter
9 - 9:45 a.m. Introduction to OpenMP Offload: Data Movement Swaroop Pophale, Computer Scientist, CSMD, ORNL
9:45 - 9:50 a.m. Break  
9:50 - 10:20 a.m. Best Practices for OpenMP Rahul Gayatri, Application Performance Specialist, NERSC
10:20 - 10:40 a.m. Hands-on Introduction Wael Elwasif, Computer Scientist, ORNL
10:40 - 11:30 a.m. Hands-on Time  

Registration

This event will be presented online only using Zoom. Registration is required for remote participation. 

Presentation Materials