已关闭
[Bug-Report|缺陷反馈]: mhc_pre_sinkhorn_backward算子,CeilDiv替换为Ops::Base::CeilDiv #3392
kdy18482276080创建于  6月29日关闭于  6月29日
kdy18482276080成员
6月29日 创建

问题描述

mhc_pre_sinkhorn_backward 算子 mhc_pre_grad_kernel.h 中使用 AscendC 内置 CeilDiv,混合 int64_t/int32_t 类型时存在精度隐患。

环境

  • 算子:mhc_pre_sinkhorn_backward
  • 文件:mhc/mhc_pre_sinkhorn_backward/op_kernel/mhc_pre_grad_kernel.h

重现步骤

Kernel 中 int64_t 与 int32_t 常量(如 ELEMENTS_SIZE_PER_BLOCK)混用 CeilDiv 计算对齐值。

预期结果

统一使用 Ops::Base::CeilDiv(opbase math_util.h),混合类型升精度至 int64_t 后再计算。

修复方案

  • 引入 op_kernel/math_util.h
  • 将所有 CeilDiv 替换为 Ops::Base::CeilDiv
  • 异类型参数 static_cast 至 int64_t

关联 PR:

likedislike
Kkdy18482276080成员
6月29日 添加了label:bug-report
Kkdy18482276080成员
6月29日 关联了pull request:mhc_pre_sinkhorn_backward: 替换CeilDiv为Ops::Base::CeilDiv
Kkdy18482276080成员
6月29日 关联了pull request:mhc_pre_sinkhorn_backward: 替换CeilDiv为Ops::Base::CeilDiv
Kkdy18482276080成员
6月29日 将 kdy18482276080 设为负责人
Kkdy18482276080成员
6月29日 修改了issue 的描述
CANN-robotCANN-robot成员
6月29日 关闭了 issue
CANN-robotCANN-robot成员
6月29日 添加了label:resolved