GPU Programming Workshop @ LRZ June 2026
Overview
In this 3.5-day online workshop you will learn how to accelerate your applications with OpenACC, OpenMP, Kokkos, and CUDA C++ on NVIDIA GPUs.
The lectures are interleaved with many hands-on sessions using the JupyterHub at NHR@FAU to access the Alex cluster.
The workshop is co-organised by Leibniz Supercomputing Centre (LRZ) and Erlangen National High Performance Computing Center (NHR@FAU).
TRAINING SETUP
Exercises will be done on the Alex system at NHR@FAU using the JupyterHub.
- Open https://hub.nhr.fau.de/jupyter-training-gpu-access.php
- Enter the email you used to register for the course and click on "SUBMIT".
- You will then get an e-mail with your personal access link to the Jupyterhub instance used during the course.
- Click on the link in the e-mail to get access to the Jupyterhub.
To be able to visualise Nsight System profiler output during the course, please install Nsight System latest version on your local system before the course. Due to the software environment used for the hands-on exercises, your local installation of Nsight Systems needs to be at least version *2026.1*. The software can be downloaded from https://developer.nvidia.com/nsight-systems.
1st day Fundamentals of Accelerated Computing with OpenACC
Lecturer: Dr. Volker Weinberg (LRZ)
AGENDA (all times in CEST)
09:00-09:30 Welcome
09:30-11:00 Introduction and Profiling
11:00-12:00 OpenACC Directives
12:00-13:00 Lunch Break
13:00-14:00 GPU Programming
14:00-15:15 Data Management
15:15-15:45 Optimisations
15:45-16:00 Q&A, Final Remarks
SLIDES
LABS
DOCUMENTATION
2nd day: Fundamentals of Accelerated Computing with OpenMP and Kokkos
Lecturer: Dr. Volker Weinberg & Dr. Sajjad Azizi (both LRZ)
AGENDA (all times in CEST)
09:00-12:00 Fundamentals of Accelerated Computing with OpenMP
12:00-13:00 Lunch Break
13:00-16:00 Fundamentals of Accelerated Computing with Kokkos
OpenMP SLIDES
OpenMP LABS
OpenMP DOCUMENTATION
Kokkos LABS
Kokkos DOCUMENTATION
- Kokkos Lecture Series — https://github.com/kokkos/kokkos-tutorials/wiki/Kokkos-Lecture-Series
- Tutorials — https://github.com/kokkos/kokkos-tutorials/tree/main/LectureSeries
- Intro talk (video) — https://www.youtube.com/watch?v=MBOO6OYoy2A
- GPU-programming course — https://github.com/gjbex/GPU-programming
3rd day: Fundamentals of Accelerated Computing with CUDA C/C++ Part I
Lecturer: Dr. Sebastian Kuckuk (NHR@FAU) & Dr. Momme Allalen (LRZ)
AGENDA (all times in CEST)
09:00-12:00 Fundamentals of Accelerated Computing with CUDA C/C++
- Introduction – learn about course structure, tools used and how to navigate code examples
- First GPU Application – experience the fundamentals of GPU programming with CUDA
- Porting Applications – extend previous knowledge with methods for data handling, CPU-GPU transfers, using managed memory and setting up simplistic performance models
12:00-13:00 Lunch Break
13:00-16:00 Fundamentals of Accelerated Computing with CUDA C/C++
- GPU Architecture – connect your programming skills with the characteristics of GPU hardware and examine the influence of parameter choices
- Reductions – deep dive into an ubiquitous computational pattern – reductions – and apply incremental optimizations
- Summary & Outlook – step back for a moment to summarize what you have learned so far
LABS
4th day: Fundamentals of Accelerated Computing with CUDA C/C++ Part II
Lecturer: Dr. Sebastian Kuckuk (NHR@FAU) & Dr. Momme Allalen (LRZ)
AGENDA (all times in CET)
09:00-11:45 Fundamentals of Accelerated Computing with CUDA C/C++
- Debugging – discover how to debug your parallel GPU applications in practice
- Streams – apply new dimensions of concurrency to maximize performance
11:45-12:00 Q&A, Final Remarks
LABS
SLIDES
DOCUMENTATION
- https://docs.nvidia.com/cuda/cuda-programming-guide/
- https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/
Survey
- Please fill out the online survey under https://survey.lrz.de/index.php/175475?lang=en
- This helps us to
- increase the quality of the courses,
- design the future training programme at LRZ and GCS according to your needs and wishes,
- get future funding for training events.