An Introduction to CUDA Programming
Description: Through a combination of lectures and practicals this course provides an introduction to the development of CUDA programs for execution on NVIDIA GPUs. Topics covered in the lectures will include: an overview of GPU hardware and in particular SIMT multithreading and the different kinds of memory; thread blocks and warps; launching CUDA kernels; efficient use of shared memory; conditional code and warp divergence; parallel reductions; profiling program execution; availability of libraries; resources for further study.
Aimed at: Anyone interested in writing CUDA programs for NVIDIA GPUs.
Prerequisites:Attendees should be competent in programming in C and be familiar with working in a UNIX environment (i.e., you should be able to connect to a machine remotely, use basic UNIX commands, edit a source file and understand the elementary steps in compiling object files and creating executables). No prior experience of parallel computing is required.
Duration: 2 days.
After Course Attendees Will: Be able to develop simple CUDA programs, and further develop their skills by studying the CUDA example codes provided by NVIDIA.
Registration: To register for HECToR courses go to the booking form.
