已关闭
[Bug-Report|缺陷反馈]: bias 算子 infershape 未显式处理 unknown rank;golden tolerance 误用 stat_rel_err 致三方精度默认不可达 #3207
shengle创建于  20 天前关闭于  19 天前
shengle
shengle
20 天前 创建

一、问题描述 (必填)

bias 算子(math/bias)存在两处缺陷:

  1. math/bias/op_host/bias_infershape.cpp:bias_def 声明了 DynamicRankSupportFlag(true),但 InferShape4Bias 未显式处理 unknown rank(x dimNum==0)分支,动态 shape 场景下 unknown rank 未显式传播。
  2. math/bias/tests/assets/golden.py:_TOL 浮点容差声明为 {"standard": "stat_rel_err", "level": "L1"}:
    • 仓内浮点算子精度标准惯例为 cross_check(add_v2 / ragged_bin_count / segsum 等),stat_rel_err 声明为仓内唯一异类;
    • level 键在 stat_rel_err 标准下为无效配置,声明存在歧义;
    • 后果:kernel/GEIR 通路默认路由走 stat_rel_err 单标杆判据,三方(NPU / golden / GPU 竞品)cross_check 精度判据默认不生效,三方精度腿静默失效。

二、环境信息 (可选)

  • 昇腾硬件型号:Ascend 950DT
  • CANN 版本:cann-9.1.0(vendor 部署)

三、重现步骤 (可选)

  1. 在未修复版本上,不带 --compare 运行 python3 -m ttk kernel -i <bias_cases>.csv --plugin tests/assets/golden.py -b release:precision_metrics 显示 standard=stat_rel_err,无三方数据;
  2. 构造 unknown rank 输入(x dimNum==0)经 GE 图调用:infershape 未显式传播 unknown rank。

四、预期结果 (可选)

  1. infershape 对 x dimNum==0 显式 SetDimNum(0) 传播 unknown rank,与仓内 addr/dot 等算子风格一致;
  2. golden _TOL 浮点条目为 cross_check/L1,默认路由即三方判据(L1: mare<=5 / mere<=1.5 / rmse<=1.5)。

💡 备注:修复后抽样验证(Ascend 950DT,TTK kernel,release binary):6/6 PASS,cross_check/L1 三方比值 mare/mere/rmse 均为 1.0。

关联 PR:https://gitcode.com/cann/ops-math/merge_requests/5746

likedislike
shengleshengle
20 天前 添加了label:bug-report
shengle
shengle
20 天前 评论:
likedislike
CANN-robotCANN-robot成员
20 天前 将 SeanDictionary 设为负责人
CANN-robotCANN-robot成员
19 天前 关闭了 issue
CANN-robotCANN-robot成员
19 天前 添加了label:resolved