GPU Programming with CUDA: Foundations

Europe/Berlin
Bldg. 16.3. Rm.213a (AB1) (Jülich Supercomputing Centre)

Bldg. 16.3. Rm.213a (AB1)

Jülich Supercomputing Centre

Forschungszentrum Jülich, Jülich, Germany
Andreas Herten (Forschungszentrum Jülich), Jan Meinke (Forschungszentrum Jülich)
Description

GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GPUs offers high application performance by offloading compute-intensive portions of the code to a GPU.

The course will cover aspects of GPU architectures and programming. Focus is on the usage of the parallel programming language CUDA C++, which allows maximum control of NVIDIA GPU hardware. Examples of increasing complexity are used to demonstrate optimization and tuning of scientific applications.

This course is a basic course covering the foundations of GPU programming including an introduction to GPU/parallel computing, programming with CUDA, GPU libraries, tools for debugging and profiling, and performance optimizations.

In addition, an advanced course is available with modules providing more in-depth coverage of multi-GPU programming, modern CUDA concepts, CUDA Fortran, and portable programming models such as OpenACC and C++ parallel STL algorithms. The advanced modules will be taught from 19-23 June 2023, see the dedicated announcement for registration.

 

Topics covered will include

  • Introduction to GPUs and GPU Computing
  • Programming Model CUDA
  • Tools for Debugging and Profiling
  • GPU Libraries (like cuBLAS, cuFFT)
  • Introduction to Multi-GPU Programming

 

Prerequisites: Some knowledge about Linux, e.g. make, command line editor, Linux shell, experience in C/C++

 

Dates:
17-19 April 2022, 09:00-16:30 each day

 

Location: Forschungszentrum Jülich, Jülich, Germany

 

Language: This course is given in English.

 

Instructors: Dr. Jan Meinke, Dr. Kaveh Haghighi-Mood, Dr. Andreas Herten, JSC; Jiri Kraus, Markus Hrywniak, NVIDIA
 

Contact 
For any questions concerning the course, please send an e-mail to j.meinke@fz-juelich.de