These course materials are developed for those who wants to leark GPU programming with CUDA from the beginning. The course consists of lectures, type-along and hands-on sessions.
During the first day, we will cover the architecture of the GPU accelerators, basic usage of CUDA, and how to control data movement between CPUs and GPUs. The second day focuses on more advanced topics, such as how to optimize computational kernels for efficient execution on GPU hardware and how to explore the task-based parallelism using streams and events. We will also briefly go through profiling tools that can help one to identify the computational bottleneck of the applications.
After the course the participants should have the basic skills needed for using CUDA in new or existing applications.
This course is for students, researchers, engineers and programmers who would like to learn GPU programming with CUDA. The participants are assumed to have knowledge of C/C++ programming language. Since participants will be using HPC clusters to run the examples, fluent operation in a Linux/Unix environment is assumed. No prior knowledge of CUDA is needed.
For updated agenda please visit https://enccs.se/events/2021/10/cuda-workshop/