SuperAPI AI 工具集

external-gitcode-ascend-triton-operator-design

编程与开发

查看项目

更新于 10-15 17:19

技能介绍

该技能用于生成适用于 Ascend NPU 的 Triton 算子需求文档,适用于设计新 Triton 算子、编写算子需求文档、进行算子性能优化设计的场景。

工作流分为四个阶段:需求分析(产出功能定义、数学公式、竞品对比)、原型设计(产出 API 接口定义)、规格约束(产出输入输出约束、硬件限制)、特性实现(产出 Tiling 策略、Kernel 实现方案)。

参考资源按阶段加载:需求分析阶段必须加载 ascend-terminology.md,不要加载 template、tiling-strategies;原型设计阶段加载 triton-api-reference.md,不要加载 tiling-strategies;特性实现阶段加载 tiling-strategies.md、triton-operator-template.md,不要加载 ascend-terminology。阶段 4 前必须完整阅读 tiling-strategies.md 和 triton-operator-template.md,不设行数限制,并按模板格式输出文档。

关键术语:GM 为全局内存(DDR),UB 为 Vector Core 高速缓存(192KB),L1 为 Cube Core 缓存(约 1MB);AI Core 在 A2/A3 上为 24 个,每个含 1 个 Cube 与 2 个 Vector;归约操作必须升精度到 FP32。

限制与禁忌:不要使用模糊术语,必须给出具体计算方法;不可忽略 UB 大小(192KB)与对齐要求(32B);需区分 Vector Core 与 Cube Core;数据流图需标注数据类型及 GM↔UB 传输;归约操作需说明升精度策略。常见问题包括 UB 超限、内存未对齐、精度损失与 Tiling 不合理,对应需控制缓冲区总大小、按 32B 对齐、归约前升 FP32 后降精度、按维度切分并避免跨 Core 数据依赖。