用途:在 AscendC 算子项目中生成完整设计文档(design.md),供后续 code-gen skill 使用;通常在 ascendc-operator-project-init 创建骨架后、ascendc-operator-code-gen 生成代码前调用。
主要能力:进行算子需求分析(确认算子名称、功能描述/数学公式、支持数据类型,并检查 PyTorch/NumPy 是否存在同名接口以对齐签名与语义);推荐实现路径(AscendC Kernel、CATLASS 模板库、ACLNN 封装);生成包含接口定义、计算逻辑设计、Tiling 策略、Workspace 需求、性能优化、Kernel 端实现要点与实现检查清单的设计文档。
关键产出:数学公式到 AscendC API 的调用伪代码(如 Mul/Adds/Sqrt/Add/Ln 等),两级 Tiling 设计(Block 级核间切分、UB 级核内切分),UB 分配表与 bufferCoefficient,Tiling 参数结构体,FP16/BF16 升精度 Cast 流程。
使用方式:被调度 skill 调用时接收算子名称与功能描述后自动生成;独立调用时先收集需求、推荐方案、生成设计、确认要点,再输出到 csrc/ops/<op_name>/design.md。生成前需读取 templates/design-template.md 等参考文档。
限制:需对齐 UB 32 字节、Cache Line 512 字节;FP16/BF16 需升精度到 FP32 计算;具体 UB_SIZE_LIMIT 需运行时接口获取;接口签名与语义须与同名 PyTorch/NumPy 接口对齐;有效输入范围需在设计文档注明。其余细节资料未提供。