Fundamentals of Accelerated Computing with Modern CUDA C++

This course teaches GPU acceleration of C++ applications using CUDA, with an emphasis on modern C++ idioms rather than low-level GPU APIs. Starting from library-provided parallel algorithms that execute transparently on the GPU, it progresses through custom CUDA kernels, thread hierarchies, shared memory, and concurrent streams – covering the full range from high-level abstractions to fine-grained GPU control. No prior CUDA or GPU programming experience is required.

Further information about this tutorial can be found on the NVIDIA DLI course page.

Level: Beginner

Language: English (German upon request for bespoke courses)

Price and Eligibility: Refer to the registration page for each event (generally free of charge for members of academia from Europe).

Knowledge

  • C++ programming experience, including lambda expressions and standard library algorithms

Technical

  • A free NVIDIA developer account
  • A local installation of NVIDIA Nsight Systems is recommended

After completing this course, you will be able to:

  • Accelerate C++ applications by writing, compiling, and running GPU code with CUDA
  • Apply parallel algorithms to GPU workloads without writing custom kernels
  • Manage CPU-GPU data movement and optimize memory access patterns
  • Write custom CUDA kernels and manage thread hierarchies and shared memory
  • Overlap computation with data transfers using concurrent CUDA streams
  • Profile GPU code and identify performance bottlenecks with NVIDIA Nsight Systems

  • GPU programming fundamentals: writing and launching CUDA-accelerated C++ code; applying parallel algorithms on the GPU
  • Concurrency and profiling: CUDA streams, asynchronous data transfers, and code analysis with NVIDIA Nsight Systems
  • Custom kernel development: thread hierarchies, shared memory, and cooperative parallel algorithms

  • 2026, Oct 27-29: three half-day online course (Register)

  • 2026, Apr 8-10: three half-day online course
  • 2026, Jan 14: full-day online tutorial, as part of NVIDIA DLI Virtual Workshop Series for Higher Education
  • 2025, Oct 28: full-day online course in collaboration with LRZ; part 2 of GPU Programming Workshop
  • 2025, Sep 10-12: three half-day online course
  • 2025, May 27: full-day online tutorial, as part of NVIDIA DLI Virtual Workshop Series for Higher Education

For an overview of all NHR@FAU courses, visit the course overview page.