跳转到内容

CUDA Kernel AcademySystematic CUDA kernel engineering

从 SGEMM 基础到可复用推理组件的仓库级学习地图,而不只是项目简介。

4
核心模块
3
阅读视角
2
构建系统
1
完整学习路径

这个首页是给谁看的

这不是一个“仓库简介页”,而是帮助你快速建立阅读顺序的入口页。

  • CUDA 新读者 可以先确定学习顺序,而不是随机点开目录。
  • 正在做性能优化的工程师 可以直接找到最相关的模块和 benchmark 证据。
  • 关心系统集成的读者 可以快速看清教程 kernel、可复用基础设施和推理引擎之间的关系。

把这个仓库当成 academy 来读,而不是 brochure

建议把仓库分成三个互相补充的视角:

  1. 模块文档:告诉你每个目录在教什么、先看哪些代码。
  2. 白皮书:解释为什么仓库要这样拆分,以及模块之间怎样衔接。
  3. Benchmarks 与路线图:说明性能证据意味着什么,以及下一步该读什么。

推荐的第一遍阅读顺序

如果你是第一次接触这个仓库,建议先看 快速开始,再读 01-SGEMM 教程,之后回到更高层的 系统架构白皮书

按目标选择第一站

你的目标建议先读为什么从这里开始下一步
理解 CUDA 性能优化基础01-SGEMM 教程它用最小但完整的教学面展示 kernel 优化阶梯。BenchmarksSGEMM 白皮书
设计可复用 CUDA 算子库02-TensorCraft Core它把“单个 kernel”提升为接口、资源管理和库边界设计。系统架构TensorCraft 设计
学习更高级的 kernel 技术03-HPC 进阶这里才开始讨论 CUTLASS、FlashAttention、寄存器分块和新 CUDA 特性。高级技术展示Benchmarks
理解端到端推理系统形态04-Inference Engine它说明优化后的 kernel 如何进入 stream、memory pool 和推理执行链路。推理引擎设计路线图

模块之间如何技术衔接

模块关系图

SGEMM
01-SGEMM 教程
TENSORCRAFT
02-TensorCraft Core
HPC
03-HPC 进阶
INFERENCE
04-Inference Engine

点击模块查看说明

这个仓库的层次是刻意设计的。

  • 模块 01 用最直接的方式讲清楚一个高性能 kernel 的基本机制。
  • 模块 02 提炼出教程里真正可复用、可维护的工程模式。
  • 模块 03 把关注点从“能跑且正确”推进到“逼近架构上限”。
  • 模块 04 则回答一个更系统的问题:前面这些优化如果不能接入完整推理流程,还有多少工程价值?

深入之前先确认构建边界

  • 根目录 CMake 覆盖 02-tensorcraft-core03-hpc-advanced04-inference-enginecommonexamples
  • 01-sgemm-tutorial 有意保持为独立 Makefile 教程模块。
  • GitHub 托管自动化只做 CPU-safe 检查;真实 CUDA 编译与运行验证仍应在本地 GPU 机器上完成。

文档不同区域分别解决什么问题

文档区域最适合什么时候看它回答的核心问题
模块文档需要贴近代码阅读时“这个目录教什么?我应该先打开哪些代码?”
白皮书需要跨模块理解时“仓库为什么这样组织?模块之间如何互相供给?”
Benchmarks需要判断证据强弱时“这些性能结果到底说明了什么,又没说明什么?”
路线图需要安排学习顺序时“按我当前目标,下一步应该看哪里?”

第一轮阅读最重要的外部参考

  1. [1]Volkov, V. and Demmel, J. W.. Benchmarking GPUs to Tune Dense Linear Algebra.SC, 2008.
  2. [2]Boehm, Simon. How to Optimize a CUDA Matmul Kernel. Technical article, 2022.
  3. [3]Dao, Tri et al.. FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness. NeurIPS, 2022.
  4. [4]NVIDIA. CUDA C++ Programming Guide. CUDA Toolkit documentation, 2024.

接下来读什么

Released under the MIT License.