受测 HEAD:2ed0535b23f764e6efbae7ded2d6d5513baa33dc;rebase 主仓 master:f53b52a3e7deaedca104d82c453c99900de60b25;本轮 CI 基线快照:f53b52a3e7deaedca104d82c453c99900de60b25。每仓相对 rebase 基点仅 1 个提交,squash 前后完整 diff 和 tree 一致,7 个 Golden 内容不变。
覆盖边界:下列定向 UT 阶段未执行用例(0 项或仅构建目标):opapi/ascend950、opgraph/ascend950、opapi/ascend910b、opgraph/ascend910b、opkernel/ascend910b。不将这些阶段的构建通过计为用例覆盖。
Describe the current behavior / 问题描述
AddV2、MulNoNan、TensorRedirect 的 Golden 同时声明 TF GPU provider,与固定 Torch GPU 标杆规范不符。MulNoNan 的 CPU kernel Golden 将所有浮点中间值转成 FP32,撤销 TTK 的 FP64 Promote;TF E2E 自定义 Golden 用 NumPy 并无条件手工升精度。
Environment Information / 环境信息
f53b52a3e7deaedca104d82c453c99900de60b25。72ab72bfbf624cae84305df9fff0dfffd107ca68。Steps to reproduce the issue / 重现步骤
tests/assets/golden.py,核对third_party与 Golden 编写规范。[1+2**-23],模式为 Promote。1+2**-22+2**-46,主线因 FP32 中间值丢掉2**-46。Describe the expected behavior / 预期结果
CPU 浮点 Promote 保留 TTK 下发类型;MulNoNan 已有 TF E2E,CPU 使用 TensorFlow;GPU 固定 Torch,低精度类型跟随 kernel 加宽再窄回。TensorRedirect 保持逐位拷贝,完整 dtype tolerance 和 legacy 注册保留。
Related log / screenshot / 日志 / 截图
3 个 Golden 的 CPU 回归 248/248 通过,包含修改前后对照、独立参考、全部声明 dtype、TF E2E CPU 默认通路及 TensorRedirect 逐位校验。代码格式、静态检查通过;不代表 NPU 算子精度或性能验收。
Special notes for this issue / 备注
仅整改三个 Golden 文件,不改 kernel、Host、Parser、TTK。MulNoNan int32 使用 TF 乘法与 Select 组合,保持原有整数溢出和第二输入零掩码语义。
关联 PR:https://gitcode.com/cann/ops-math/merge_requests/6247
输入输出自查
修复 MulNoNan 在标量输入下返回 NumPy scalar 的兼容问题,使用
np.asarray(output.numpy())保持原来的零维 ndarray,不转换 dtype 或改变数值。新增 legacy/Spec 的签名、返回容器、输出数量/顺序/shape/dtype、输入不被改写、Promote 元信息及真实 TTK 服务端 CPU 参数绑定检查。默认 TF E2E 标量输出另经真实 TTK 比对器验证兼容。两仓累计 Golden CPU 自查 447/447 通过,本仓 248/248。未执行 NPU/远程 GPU、算子性能或算子精度测试。当前受检 HEAD:
2ed0535b23f764e6efbae7ded2d6d5513baa33dc。本地 CI
统一入口
/workspace/CI-skills/ci_local_check.sh定向检查通过;pre-commit、隔离 oat-py 1.0.3、Ascend 950 与 A2(ascend910b)定向 package/UT 已通过。构建并行度最多 8,使用任务目录内 CANN_Revise 的 0923 Toolkit/ops。受测 HEAD:
2ed0535b23f764e6efbae7ded2d6d5513baa33dc;rebase 主仓 master:f53b52a3e7deaedca104d82c453c99900de60b25;本轮 CI 基线快照:f53b52a3e7deaedca104d82c453c99900de60b25。每仓相对 rebase 基点仅 1 个提交,squash 前后完整 diff 和 tree 一致,7 个 Golden 内容不变。覆盖边界:下列定向 UT 阶段未执行用例(0 项或仅构建目标):opapi/ascend950、opgraph/ascend950、opapi/ascend910b、opgraph/ascend910b、opkernel/ascend910b。不将这些阶段的构建通过计为用例覆盖。
线上 CI 触发凭据:https://gitcode.com/cann/ops-math/merge_requests/6247#note_193365306。仅记录已触发请求/现有任务,不表示线上 CI 已通过。