Fundamentals of Accelerated Computing with CUDA C/C++

On-Site at NHR@FAU

On-Site at NHR@FAU

The course will take place in room 00.001 (Casa Huber CIP-Pool) located in Martensstr. 5a, 91058 Erlangen.


  • Basic C/C++ competency, including familiarity with variable types, loops, conditional statements, functions, and array manipulations
  • No previous knowledge of CUDA programming is assumed


Learning Objectives

At the conclusion of the workshop, participants will have an understanding of the fundamental tools and techniques for GPU- accelerating C/C++ applications with CUDA and be able to:

  • Write code to be executed by a GPU accelerator
  • Expose and express data and instruction-level parallelism in C/C++ applications using CUDA
  • Utilize CUDA-managed memory and optimize memory migration using asynchronous prefetching
  • Leverage command-line and visual profilers to guide your work
  • Utilize concurrent streams for instruction-level parallelism
  • Write GPU-accelerated CUDA C/C++ applications, or refactor existing CPU-only applications, using a profile-driven approach



This course is based on the materials for the corresponding NVIDIA DLI course. Since it is not an official DLI course, however, certification by NVIDIA is not possible at this point.



Module 1 -- Accelerating Applications with CUDA C/C++

  • Writing, compiling, and running GPU code
  • Controlling the parallel thread hierarchy
  • Allocating and freeing memory for the GPU

Module 2 -- Managing Accelerated Application Memory with CUDA C/C++

  • Profiling CUDA code with the command-line profiler
  • Details on unified memory
  • Optimizing unified memory management

Module 3 -- Asynchronous Streaming and Visual Profiling for Accelerated Applications with CUDA C/C++

  • Profiling CUDA code with NVIDIA Nsight Systems
  • Using concurrent CUDA streams



The program can be found here.



The course will be held in English.



Dr. Sebastian Kuckuk, certified NVIDIA DLI Ambassador.

The course is organised by NHR@FAU.


Prices and Eligibility

The course is open and free of charge for people from academia from the Member States (MS) of the European Union (EU) and Associated/Other Countries to the Horizon 2020 programme.


Withdrawal Policy

Please only register for the course if you are really going to attend. No-shows will be blacklisted and excluded from future events. If you want to withdraw your registration, please send an e-mail to


Wait List

To be added to the wait list after the course has reached its maximum number of registrations send an e-mail to with your name and university affiliation.

    • 09:00 09:15
      Welcome and Introduction 15m
    • 09:15 10:15
      Module 1 -- Accelerating Applications with CUDA C/C++ 1h
    • 10:15 10:30
      Coffee Break 15m
    • 10:30 11:30
      Module 1 continued 1h
    • 11:30 12:30
      Module 2 -- Managing Accelerated Application Memory 1h
    • 12:30 13:30
      Lunch Break 1h
    • 13:30 14:30
      Module 2 continued 1h
    • 14:30 15:30
      Module 3 -- Asynchronous Streaming and Visual Profiling 1h
    • 15:30 15:45
      Coffee Break 15m
    • 15:45 16:45
      Module 3 continued 1h
    • 16:45 17:00
      Closing 15m
Your browser is out of date!

Update your browser to view this website correctly. Update my browser now