Fundamentals of Accelerated Computing with CUDA Python

Content

This workshop teaches you the fundamental tools and techniques for running GPU-accelerated Python applications using CUDA® GPUs and the Numba compiler. You’ll work though dozens of hands-on coding exercises and, at the end of the training, implement a new workflow to accelerate a fully functional linear algebra program originally designed for CPUs, observing impressive performance gains. After the workshop ends, you’ll have additional resources to help you create new GPUaccelerated applications on your own.

Further course information

Note: This course is run on external system resources, for which an account must be created with NVIDIA by the GWDG. Please note the data protection information for external courses.

Requirements

  • Basic Python competency, including familiarity with variable types, loops, conditional statements, functions, and array manipulations. NumPy competency, including the use of ndarrays and ufuncs. No previous knowledge of CUDA programming is required.
  • Desktop or laptop computer capable of running the latest version of Chrome or Firefox. Each participant will be provided with dedicated access to a fully configured, GPU-accelerated workstation in the cloud.
  • Further information for course preparation

Learning goal

At the conclusion of the workshop, you’ll have an understanding of the fundamental tools and techniques for GPU-accelerated Python applications with CUDA and Numba:

  • GPU-accelerate NumPy ufuncs with a few lines of code
  • Configure code parallelization using the CUDA thread hierarchy
  • Write custom CUDA device kernels for maximum performance and flexibility
  • Use memory coalescing and on-device shared memory to increase CUDA kernel bandwidth

Skills

Trainer

Next appointment

DateLink
27.05.2024
Last modified: 2025-06-04 14:55:05