Skip to content

Triton-Ascend

什么时候读:你熟悉 Triton(Python 化 GPU 算子开发),想把算子迁移到昇腾,或想用低门槛方式开发昇腾算子。

Triton-AscendTriton 编译栈适配到昇腾 NPU,让用 Triton 语法写的算子能在昇腾高效运行。对熟悉 Triton 的开发者,学习成本大幅降低。

一、核心价值

  • Python 化开发:只需关注 Tile/Block 切分与运算逻辑,编译器自动处理内存分配、数据搬运与流水。
  • 生态打通:vLLM、SGLang 等仓库中的重点 Triton 算子已在昇腾适配。
  • 加速比接近 Ascend C:在 FA、MM、Softmax 等关键算子上,Triton-Ascend 性能逼近 Ascend C。

二、版本配套(以官方为准)

版本(示例)CANN 版本
Triton-Ascend 3.2.0CANN 8.5.0(商用/社区)
3.2.0rc4CANN 8.3.RC2 / 8.3.RC1
  • Python API 支持度持续提升(当前较高版本支持 85%+ Triton Python API,详见官方)。
  • 支持访存(连续访存)、部分非连续访存等。

三、硬件支持范围

系列产品
A3 训练Atlas 800T A3 超节点、900 A3 SuperPoD 等
A3 推理Atlas 800I A3 超节点等
A2 训练Atlas 800T A2、900 A2 PoD 等
A2 推理Atlas 800I A2、300I A2 等

支持的操作系统与 CANN 一致,选包时参考 CANN 支持范围。

四、安装

bash
# 安装 Triton-Ascend(以 PyPI 为例)
pip install triton-ascend

具体安装与配套以 官方 README(中文) 为准。

五、开始开发

  1. 用 Triton 语法写 Kernel(@triton.jit)。
  2. 在昇腾上用 Triton-Ascend 编译运行。
  3. 精度对比:用 msDebug / 与 CPU 或 Ascend C 结果对比(见 精度调试)。
  4. 性能调优:用 Profiling 定位(见 性能调优)。

官方提供「快速开始」「算子开发指南」「算子迁移指南(从 GPU)」「算子调试指南」「性能调优指南」等文档,在仓库 docs/zh/ 目录下。

六、从 GPU Triton 迁移到昇腾

  • 迁移指南见官方 docs/zh/migration_guide/migrate_from_gpu.md
  • 注意算子 API 支持度、访存方式与数据类型的差异。

七、与 Ascend C 的选择

Triton-AscendAscend C
学习成本低(Python)高(C++)
性能上限高(逼近 Ascend C)最高(可极致调优)
适用快速开发、生态迁移核心热点算子、极致性能

TIP

建议先用 Triton-Ascend 快速跑通,再用 Ascend C 优化真正热点的算子。

相关

许可证

Triton-Ascend 采用 MIT 许可证;使用与二次开发请遵守其许可证与安全声明。

AscendMate · AscendLA · GitHub 统计(近14天):仓库访问 次 · 独立访客 人 · 克隆