HPC5: Introduction to GPU programming with CUDA
Booking for this course is through the IT Training Unit. Click here to book
Workshop content
In this workshop, you will learn the fundamentals of parallel computing with GPUs and the CUDA programming environment. Our latest HPC cluster (ARC3) has 24 NVIDIA P100 GPUs and 4 NVIDIA K80 GPUs which can be used to run existing code optimised for GPUs, run new code developed using the CUDA or OpenCL programming models or to run applications on top of GPU optimised frameworks, such as machine learning or deep learning models. Programming examples in this workshop will be in C with some later examples in Python.
At the end of the workshop, attendees will be able to:
An introduction to the GPU hardware model
Multithreading and the concept of the ‘Streaming Multiprocessor’
GPU memory and launching CUDA kernels
CUDA C programming examples with vectors and matrices
Hints and tips to CUDA parallelise existing serial code
Optimising code
PyCUDA: CUDA programming for Python
Prerequisites
Familiarity with the Linuc command line.Familiarity with Fortran and/or C and/or Python.
Duration
1 day
Frequency
This workshop usually runs twice each academic year. If you would like a bespoke version of this course run in your department then please contact us.
Suitability
All research staff and students.