GPGPU — General-purpose programming on GPU
48h — 6 CFU
Lecture notes
Course introduction
C and C++ programming basics (
C part 1
,
C part 2
,
C++
)
History of graphic cards and GPGPU (
part 1
,
part 2
)
GPGPU programming basics; introduction to CUDA (
first step
,
launching kernels
)
High-level CUDA programming: the CUDA runtime (
working with vectors
,
textures and multi-dimensional data
)
Benchmarking, optimization and debugging (
benchmarking and optimization
,
GDB and CUDA-GDB
,
asynchronous CUDA commands
)
Introduction to
multi-GPU programming
Low-level CUDA programming:
the CUDA driver interface
OpenCL basics and heterogeneous GPGPU programming:
an introduction
,
OpenCL images and samplers