This course is an introduction to GPU programming using the directive-based OpenACC paradigm and language-extension-based CUDA. The course consists of lectures, type-along and hands-on exercises. Topics covered in the course include the architecture of the GPU acccelerators, basic usage of OpenACC and CUDA, how to control data movement between CPUs and GPUs. Basic optimization of the code will also be covered.
After the course, the participants should have the basic skills needed for utilizing OpenACC or CUDA with new or existing programs.
The participants are assumed to have knowledge of Fortran and/or C programming languages. Since participants will be using HPC clusters to run the examples, fluent operation in a Linux/Unix environment is assumed.
Tentative schedule can be found on https://enccs.se/events/2021/05/openacccuda-training-for-beginners/