BOOTCAMP: Multi-GPU Programming

This Bootcamp will be held online with Zoom. Cluster Dry Run already on Fri, May 3.

This Bootcamp will cover scaling applications to multiple GPUs across multiple nodes. Doing so requires one to be adept at programming models and optimization techniques, and proficient at performing root-cause analysis using in-depth profiling to identify and minimize bottlenecks. The N-Ways to Multi-GPU Programming Bootcamp covers step-by-step ways to improve application performance using cues from profilers and provides an understanding of the underlying technologies and communication topology needed to leverage powerful NVIDIA® libraries to extract more performance from the system.

The Bootcamp is co-organised by HLRS, JSC, LRZ, VSC Vienna, RISE, LiU, and NVIDIA for EuroCC Austria, EuroCC@GCS and EuroCC Sweden, all National Competence Centres for High-Performance Computing.


Online course
Organizer: HLRS, University of Stuttgart, Germany

Start date

May 06, 2024

End date

May 07, 2024



Entry level


Course subject areas

Parallel Programming



Code Optimization

GPU Programming



Back to list

Prerequisites and content levels


Experience with C/C++, NVIDIA CUDA C++, and MPI  knowledge is required.

Content levels
  • Intermediate level: 3:30 hours
  • Advanced level: 6:30 hours

Learn more about course curricula and content levels.


Main lecturers: Paul Graham (NVIDIA)

Teaching Assistants:

  • Siegfried Höfinger (VSC Vienna)
  • Tobias Haas (HLRS)
  • Wei Li (LiU)


- preliminary -

All times in CEST:

Day 0 (Fri, May 3) : Cluster Dry Run

  • 11:00 - 12:00 Cluster Dry Run Session

Day 1 (Mon, May 6): Parallelizing a Single GPU Code

  • 09:00 - 09:05 Welcome
  • 09:05 - 09:30 Introduction to Nsight Systems and GPU Computing (Lecture and Read-only Lab)
  • 09:30 - 10:30 Overview of a Single GPU Code
  • 10:30 - 12:30 Parallelizing a Single GPU Code using CUDA memcpy, Streams, and an Introduction to Single Node Multi-GPU ( P2P ) (Lecture and Lab)
  • 12:30 - 13:00 Lunch
  • 13:00 - 15:00 Introduction to Multi-Node Multi-GPU (GPU Direct ) programming (Lecture and Lab)

Day 2 (Tue, May 7): Introduction to NCCL and NVSHMEM

  • 09:00 - 11:00 Introduction to NVIDIA Collectives Communications Library (NCCL) (Lecture and Lab)
  • 11:00 - 13:00 Introduction to NVSHMEM (Lecture and Lab)
  • 13:00 - 13:30 Demo of the Nsight Systems Profiler Report for a Multi-Node Application

Hands-on sessions

Attendees will be given access to a GPU cluster for the duration of the Bootcamp.

The code is publicly available on github.

Registration information

Please register at via the button at the top of this page with your institutional e-mail address to prove your affiliation.

The final participants will be selected and informed after the registration deadline has passed.

This course is offered in cooperation by HLRS, JSC, LRZ, VSC Vienna, RISE, LiU, and NVIDIA. Registration is done via hosted by Your registration data will be transferred to these partners. For legal notes see the Privacy Policy.

Registration closes on March 26, 2024 at 23:55.


  • Students without Master's degree or equivalent. Participants from EU or EuroCC countries only: 0 EUR
  • PhD students or employees at a German university or public research institute: 0 EUR
  • PhD students or employees at a university or public research institute in an EU or EuroCC country other than Germany: 0 EUR.
  • Other participants, e.g., from industry, other public service providers, or government. Participants from EU or EuroCC countries only: 0 EUR

Our course fee includes coffee breaks (in classroom courses only).

For lists of EU and EuroCC countries have a look at the Horizon Europe and EuroCC website.

Only participants from institutions belonging to these countries can take part in this course.


Maksym Deliyergiyev phone 0711 685 87261, maksym.deliyergiyev(at)

HLRS Training Collaborations in HPC

HLRS is part of the Gauss Centre for Supercomputing (GCS), together with JSC in Jülich and LRZ in Garching near Munich. EuroCC@GCS is the German National Competence Centre (NCC) for High-Performance Computing. HLRS is also a member of the Baden-Württemberg initiative bwHPC.

This course is provided within the framework of EuroCC2.

Official course URL(s) and course website at Open Hackathons.

Further courses

See the training overview and the Supercomputing Academy pages.

Related training

All training

July 15 - 19, 2024

Hybrid Event - Stuttgart, Germany

October 14 - 18, 2024

Stuttgart, Germany

October 23 - 25, 2024


November 04 - 08, 2024


December 02 - 05, 2024

Online by JSC

December 09 - 13, 2024