已关闭
simt c++ 数学类api与c api实现保持一致 #1485
zhangshunwei2创建于  28 天前关闭于  27 天前
zhangshunwei2成员
28 天前 创建

问题背景

SIMT C API 的部分实现已经更新,但对应的 C++ API 未同步调整,导致同一能力在 C API 与 C++ API 间存在实现差异。需要以现有 C API 为基准,同步 C++ API 的实现、类型支持和测试,确保两套接口行为一致。

涉及接口

数学类 API

  • CopySign:同步符号判断逻辑。
  • NextAfter:同步 NaN 判断和零起点处理。
  • Norm:同步四元素分组、最大绝对值缩放及 FMA 累加实现。
  • Rnorm:复用同步后的 Norm 结果计算倒数。
  • Yn:同步参数判断顺序、三路循环展开及缩放处理。

Warp API

  • WarpShflSync
  • WarpShflUpSync
  • WarpShflDownSync
  • WarpShflXorSync

上述 Warp API 需要与 C API 保持一致,补充 bfloat16_tbfloat16x2_t 支持,并正确传递 width 参数。

预期结果

  • C API 实现保持不变。
  • C++ API 与现有 C API 的实现和行为保持一致。
  • C++ API 测试与 C API 测试保持文件隔离,并覆盖同步后的关键路径和边界场景。
  • 补充 atanhflog1pf 返回值说明中缺失的特殊输入场景。
  • 相关接口通过编译、UT 和 NPU 功能验证。

关联 PR

likedislike
Li-JianLi-Jian成员
28 天前 将 zhangshunwei2 设为负责人
CANN-robotCANN-robot成员
27 天前 关闭了 issue
CANN-robotCANN-robot成员
27 天前 添加了label:resolved