跳到正文

Session 01|GPU Programming Model

为什么 GPU 上的一个线程不比 CPU 更快,却能完成更大规模的并行计算?

CUDA 为何要把线程组织成 Thread、Block 和 Grid?Warp 又是什么?

当我们从 CUDA 转向 Triton、TileLang,编程视角为什么会从“一个线程”变成“一块数据”?

  • MLSys on GPU: SIMD 与 SIMT、Throughput 与 Latency,以及 GPU 为何适合大规模并行计算
  • CUDA Programming Model: Host 与 Device、Kernel Launch、Thread / Block / Grid、Warp,以及线程之间的执行与协作
  • Triton / TileLang: Program、Block 与 Tile Level 编程

本次课将简单介绍上述内容,帮助大家建立后续学习所需的基本视角,为后续深入学习打下基础。

课前阅读 & 参考资料