Guide Hub

优化专题中心

按主题和学习阶段重新组织项目里的核心优化内容,不再直接面对零散的 Markdown 文件列表。 每个专题卡片说明覆盖范围与推荐阅读顺序,点击进入 GitHub 查看完整笔记。

Topics

五个核心专题

从基础访存到前沿 CUDA 特性,覆盖完整的 GPU 优化学习路径。

入门推荐 · 第 1 周

访存优化

帮助你建立对全局内存访问模式、共享内存复用、向量化加载和 cache 行为的基本直觉。 对很多 CUDA kernel 来说,访存模式往往比算术本身更早成为瓶颈。

  • 理解为什么合并访问是多数 kernel 的第一优先级
  • 掌握 float4 等向量化加载在吞吐上的价值与边界
  • 知道何时引入 shared memory 做数据复用、何时会带来 bank conflict
基础到进阶 · 第 1-2 周

归约优化

归约是理解 CUDA 并行协作的最佳练习之一,集中暴露线程分工、同步成本、 分支发散与共享内存布局等关键问题。

  • 理解 block 内归约与 warp 内归约的职责边界
  • 掌握 warp shuffle 降低同步成本的常见路径
  • 建立对 occupancy 和实际吞吐之间关系的感觉
核心主线 · 第 2-4 周

GEMM 优化

GEMM 不只是矩阵乘法,它还是理解卷积、attention、Tensor Core、寄存器阻塞与 tile 设计的中枢问题。适合在具备访存与归约基础后深入阅读。

  • 7 步优化路径:naive → shared memory tiling → 寄存器阻塞 → Tensor Core
  • 理解 CUTLASS 式 tile 设计思路
  • 与 cuBLAS 对标性能分析
架构专题 · 进阶

FlashAttention

聚焦 attention 的 IO-aware 设计与在线 softmax 思路。当前仓库实现支持 float / head_dim=64。

  • 理解标准 attention 的访存瓶颈与 FlashAttention 的核心思路
  • 在线 softmax 的推导与实现
  • tiling 策略如何将中间矩阵保持在 SRAM
前沿 · 实验性

CUDA 13 与 Hopper 新特性

探索 TMA、Cluster、FP8 GEMM 等新能力。当前仓库中这些路径使用兼容 fallback, 不代表完整的 Hopper/Blackwell 特性覆盖。

  • TMA:理解硬件异步数据搬运的编程模型
  • Cluster:跨 SM 的线程块协作
  • FP8 GEMM:低精度矩阵乘的实验路径
Cheatsheet

实战速查

推荐学习顺序

Week 1    访存优化 → 归约优化
Week 2-3  GEMM Step 1-4 → Step 5-7
Week 3-4  FlashAttention
持续      CUDA 13 新特性 + CUTLASS 源码

参考资源

CUDA C++ Programming Guide
  docs.nvidia.com/cuda

FlashAttention 论文
  arxiv.org/abs/2205.14135

How to Optimize a CUDA Matmul Kernel
  siboehm.com/articles/22/CUDA-MMM

CUTLASS
  github.com/NVIDIA/cutlass