View on GitHub

OpenMP GPU offloading

Training material for the session 'OpenMP GPU offloading'.

Levering the compute power of GPU accelerators to scientific computing is becoming increasingly important. There are many programming models for GPU programming, but OpenMP is a vendor-agnostic approach that allows you to write code that can run on a wide variety of GPU hardware. In this training, we will cover GPU programming with OpenMP, and how to optimize performance.

Learning outcomes

When you complete this training you will

Schedule

Total duration: 4 hours.

Subject Duration
introduction and motivation 5 min.
GPU hardware/programming model 80 min.
OpenMP worksharing 25 min.
coffee break 10 min.
OpenMP data movements 30 min.
OpenMP kernes 10 min.
Examples 60 min.
wrap up 10 min.

Training materials

Slides are available in the GitHub repository as well as example code and hands-on material. The slides can be viewed online.

Target audience

This training is for you if you want to do GPU programming in C, C++ or Fortran and want a vendor-agnostic approach.

Prerequisites

You will need experience programming in C, C++ or Fortran and be familiar with the OpenMP programming model.

If you plan to do GPU programming in a Linux or HPC environment you should be familiar with these as well.

For following along hands-on, you need

Level

Trainer(s)