Become an AI engineer
GPU programming
GPU programming is a unit of 16 lessons in Rabbithole's Become an AI engineer course, at levels 4 to 5.
Lessons
- CUDA cluster launch control: cancelling thread blocks safelyLevel 4
- Compute Fabric Transport: Reaching a Peer by Endpoint ID and OffsetLevel 4
- How a GPU runs your threads: warps, independent scheduling, clusters and ABILevel 4
- Matrix multiplication on acceleratorsLevel 4
- GPU memory hierarchy: what sits where, and what it limitsLevel 4
- The roofline model: math-limited or memory-limitedLevel 4
- TPUs: the chip, its vector unit, and the numbers you can compute from itLevel 4
- Unified memory: virtual addresses and access-counter migrationLevel 4
- CUDA: architecture targets, memory ordering and what the device runtime does not promiseLevel 5
- CUDA Tile: programming the GPU a tile at a timeLevel 5
- CuTe layouts: hierarchical coordinates and generalized stridesLevel 5
- FpSan: checking kernels with payload algebraLevel 5
- Formal Kernel Verification: Proving a Kernel CorrectLevel 5
- Kernel fusion: one kernel, fewer trips to memoryLevel 5
- TMA: Bulk Copies Between Global and Shared MemoryLevel 5
- Triton: Block-Based Compilation for GPU KernelsLevel 5
Sources
These lessons draw on 10 sources. The most used: