Let's Learn CUDA Programming!
  • Welcome!
  • Why Get this Course?
  • Instructor
  • Interactive Shell for Practice C++
  • Heterogenous Computing and CUDA
  • GPGPU software layer
  • GPGPU Schema
  • GPU Technology - Comparison
  • CUDA device, thread, blocks and grids
  • Introduction to GPGPU -documentation
  • CUDA Threads and Blocks in 1D
  • CUDA Threads and Blocks in 2D
  • CUDA Memory Hierarchy
  • CUDA Threads Programming - documentation
  • CUDA "Hello World!" code example
  • CUDA variable addtion on the device (1 block and 1 thread)
  • CUDA vector addtion (N blocks and 1 Thread)
  • CUDA vector addition (1 Block and N threads)
  • CUDA variable addtion (N blocks and N threads)
  • Source Code (Vector Addition)
  • Matrix Multiplication (Revisited)
  • Matrix Multiplication (CPU code vs. GPU code)
  • Shared memory matrix muliplication (CUDA code)
  • How to execute the CUDA code (Matrix Multiplication)?
  • Source Code (Matrix Multiplication)
  • CUDA Quiz
CUDA Lessons
  • Concepts
  • Model
  • Parallel For-loop
  • Indexing
  • Memory
  • Synchronization
Additonal contents - Interactive Playgrounds
  • How to Get the Interactive Playgrounds?
  • Free CUDA interactive playgrounds