用途:面向 Ascend C 算子开发,提供精度问题的诊断思路与修复方向,覆盖精度验证失败(rtol/atol 不达标)、输出全为 0 或随机值、FP16 精度差于 FP32、Cast 后数据错误、流水线同步与 DataCopy 对齐等问题。
主要能力:给出调试前置要求(固定最小可复现用例、检索 asc-devkit、清理缓存)、快速决策树与症状-原因速查表,并针对“FP32 通过但 FP16/BF16 失败”“BF16 通过但 FP16/FP32 失败”等模式展开分析。
必要用法:进入调试前先固定 shape、dtype 与具体数值,优先简单、32 字节对齐、FP32 并覆盖边界值;检索 asc-devkit/examples/ 与 API 文档,禁止凭直觉改代码;清理缓存可执行 rm -rf build input output 与 mkdir -p build/input build/output,代码改动后输出不变时清理 build/ 和 $HOME/atc_data/kernel_cache/ 后重试。流水线同步须使用 EnQue/DeQue,DataCopy 非对齐改用 DataCopyPad,Cast 时 half→float 用 CAST_NONE,float→half 用 CAST_ROUND。
适用场景:算子精度验证与定位、半精度精度不足、数据搬运与同步错误排查。
限制:快速方法尝试达 7 次应立即切换二分调试;精度标准优先级依次为算子开发 Plan、官方文档、技能默认值。具体平台支持与工具细节暂未提供。