Speaker
Dr
Olivier Mattelaer
(UCLouvain/CISM)
Description
CUDA is NVIDIA's parallel computing platform and programming model for GPUs. It allows developers to exploit the massive parallelism available on modern NVIDIA accelerators and achieve performance levels that are often impossible to reach on CPUs alone. This session introduces the fundamentals of GPU architecture, teaches the basics of CUDA programming, and shows how to analyze and optimize applications using NVIDIA's profiling tools.
| Contents | Information |
|---|---|
| • Fundamentals of GPU hardware and architecture • Differences between CPU and GPU computing • CUDA programming model and execution hierarchy • Writing and launching CUDA kernels • Managing memory transfers between CPU and GPU • Optimizing memory access patterns • Basic performance optimization techniques • Profiling applications with NVIDIA Nsight tools • Identifying bottlenecks and tuning GPU performance |
Prerequisite: • Being able to use SSH with private keys • Being familiar with a text editor • Mastering the Linux command line and GNU utilities (mkdir, cp, scp, etc.) • Basic knowledge of C Type: Hands-on Target audience: Rookie programmers Must: This session is a nice-to-have for those who need to develop highly parallel scientific software |