Repository with talks and exercises of our Efficient GPU Programming for Exascale tutorial, to be held at SC26.
- Date: 15 November 2026
- Occasion: SC26 Tutorial (Full Day)
- Tutors: Simon Garcia de Gonzalo (SNL), Oded Green (NVIDIA), Andreas Herten (JSC), Lena Oden (Uni Hagen)
- Support: David Appelhans (NVIDIA), Markus Hrywniak (NVIDIA), and Jiri Kraus (NVIDIA)
The tutorial is an interactive tutorial with introducing lectures and practical exercises to apply knowledge. The exercises have been derived from the Jacobi solver implementations available in NVIDIA/multi-gpu-programming-models.
Overview (only possible on-site at SC26!):
- Sign up at JuDoor
- Open Jupyter JSC: https://jupyter.jsc.fz-juelich.de
- Create new Jupyter instance on JUPITER, using training26XX account, on LoginNode 1
- Source course environment:
source $PROJECT_training26XX/env.sh - Sync material:
jsc-material-sync - Locally install NVIDIA Nsight Systems: https://developer.nvidia.com/nsight-systems
- Lecture: Tutorial Overview, Introduction to System + Onboarding Andreas
- Lecture: Introduction to MPI-Distributed Computing with GPUs Simon
- Lecture: Optimization techniques for multi-GPU applications Simon
- Hands-on: Overlap communication and computation with MPI
- Lecture: Performance / Debugging Tools
- Lecture: Overview of NCCL and NVSHMEN in MPI Lena
- Hands-on: Using NCCL and NVSHMEM
- Lecture: CUDA Graphs and Device-initiated Communication with NCCL and NVSHMEM Oded
- Hands-on: Device-initiated Communication with NVSHMEM and NCCL
- Lecture: Conclusion and Outline of Advanced Topics Andreas
Footnotes
-
JUPITER is the default. In the case the tutors tell to move to the backup (JUWELS Booster), launch a new Jupyter instance here. ↩