Closed
[Bug-Report|缺陷反馈]: RaggedBinCount V1 修改输入 shape 及 MulNoNan 图 dtype 注册缺失 #3697
raoliang_sacAdd on  21 days agoClosed at  5 days ago
raoliang_sacCollaborators
21 days ago Create

一、问题描述

RaggedBinCount 自带 V1 推导修改 values/weights 输入 shape,使已有 V2 的输入不可变约束不能生效;MulNoNan dtype 推导应随图注册迁移至 op_graph,同时保留输入 dtype 一致性校验。

二、环境信息

  • Ascend950PR_9579、Ascend910_9362;任务目录独立 CANN_Master / CANN_Revise。
  • Toolkit 9.3.0、现有 ops version.info 9.2.0(20260923);不是 CANN 9.0.0 验证。
  • 本仓基点:79b137ed89ff59cf2fc3405a6e41d91995254471。
  • TTK 9e74ae65ec9dd7e2ed9fbb5432f4e6b1d8ee72be,GEIR、--pc=1、单设备。

三、重现步骤

  1. 构建对应原生算子包,使用静态和动态 GEIR 冻结输入执行。
  2. 对照 GE 推导日志和回调所属动态库,检查是否仍进入 V1 或 canndev 中与原生实现竞争的 V2。
  3. Relu6Grad 对照 gradient 标量、交叉广播;RaggedBinCount 在注册 UT 中检查 values/weights 输入 shape 不被推导改写。
  4. 同时保留 A3 canndev 注册进行存量输入回归,避免用 A5 的扩展输入契约替代 A3 约束。

四、预期结果

现有隔离名单产品由原生 V2 接管 shape/dtype,必要的输入及原始图描述校验保留。定义 TILING_REG_FLAG 的产品保持 canndev 原注册;算法、kernel、tiling 不变。

五、验证与未完成项

  • 基点 79b137ed89ff59cf2fc3405a6e41d91995254471;任务目录独立 CANN_Master / CANN_Revise,Toolkit 9.3.0。
  • 基线与修改版 A5 包实际构建、安装成功:bash build.sh --pkg --ops=ragged_bin_count,mul_no_nan --soc=ascend950 --vendor_name=registry_migration -j8。
  • Host/Graph UT:112 + 6 = 118 全部通过。
  • TTK 9e74ae65ec9dd7e2ed9fbb5432f4e6b1d8ee72be、GEIR、--pc=1、单设备、冻结输入/仓库 golden,Promote/stat_rel_err。A5 修改版 MulNoNan 16 条、RaggedBinCount 6 条,静态与动态共 44 次执行通过。
  • MulNoNan 覆盖 FP16/FP32/BF16/INT32、等形/两种单边标量/交叉广播;RaggedBinCount 覆盖 int32/int64、values/weights 形状不同但元素数一致的三种组合。修改版未进入目标 V1,V2 shape/dtype 回调指针来源为本次原生图推导库。
  • A5 基线两算子各 2 条对照用例均通过。A3 Ascend910_9362 两算子各 2 条,基线/修改版静态动态共 16 次执行通过;A3 使用符合存量约束的向量输入并保留 canndev V1。RaggedBinCount 首次因诊断库未处理 RTLD_LOCAL 加载而失败,修复诊断解析后重跑通过,未改生产实现。
  • 提交前 clang-format 仅调整 3 个文件空白/换行,未改变语义。

验证边界:A5 为真实原生算子包加旧 V1 注册省略诊断;A3 为当前源码编译的 ARM 图推导库搭配存量 kernel。canndev 正式整包受本地内部构建依赖缺失阻塞,仍需正式产品包集成验证。本轮未跑全量本地 CI、GPU 三方精度或性能对比。

关联 PR

https://gitcode.com/cann/ops-math/pull/6548

配套 PR:

likedislike
陈思
陈思Collaborators
21 days ago Comments:

/assign @raoliang_sac

likedislike
CANN-robotCANN-robotCollaborators
21 days ago Assign raoliang_sac as responsible person
Rraoliang_sacCollaborators
5 days ago changed custom state from 进行中 to 已完成
Rraoliang_sacCollaborators
5 days ago Close issue