TVM、TileLang、Triton、cuTile 是四代 GPU 算子编程方案,核心区别在于抽象层级:TVM 管得最全但上手最重,Triton 用“块”编程最流行,TileLang 在 TVM 基础上主打性能与多硬件,cuTile 则是 NVIDIA 原生新出的“Tile”入口,深度绑定自家生态。
各方案定位
- TVM:Apache 顶级项目,陈天奇团队开发,定位是“图级 + 算子级 + runtime 级”的端到端编译框架,类似 AI 界的 LLVM。支持多硬件后端,但上手门槛高,需要手动写 schedule 原语(split、reorder 等),对新手不友好。
- TileLang:2025 年开源的 AI 高性能内核 DSL,编译基础构建在 TVM 之上。它继承了 TVM 的多硬件能力(如昇腾 910B 已深度适配),同时提供更简洁的 tile 编程接口,能精细控制 shared memory 和流水线,性能接近 NVIDIA 原生方案。
- Triton:OpenAI 打造的算子 DSL,全球社区公认最主流的第三方加速方案。核心思想是“块级编程”,用类似 NumPy 的方式写 GPU Kernel,编译器自动处理线程映射。开发效率高(5-10 倍于 CUDA),性能通常能达到 CUDA 的 90-95%,但极致性能场景仍有约 20% 差距。
- cuTile:NVIDIA 在 2025 年 12 月随 CUDA 13.1 推出的新编程模型,基于 Tile IR,让开发者以 Tile 为单位描述计算,编译器自动映射到 Tensor Core 和内存层级。代码最简洁,深度绑定 CUDA 生态,被社区解读为 NVIDIA 针对 Triton 的防御性布局。
性能对比(B100 GEMM 1024³,float16)
| 方案 |
|---|