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.