Closed
[Bug-Report|缺陷反馈]: CoalesceSparse tiling UT期望值未区分平台,ascend950上用例失败 #4438
WangJinChengAdd on  7 days agoClosed at  6 days ago
WangJinCheng
WangJinChengCollaborators
7 days ago Create

一、问题描述 (必填)

CoalesceSparse 的 op_host tiling UT(test_coalesce_sparse_tiling.cpp)中,test_coalesce_sparse_success 用例的期望值(tilingKey、tilingData)按基线平台硬编码(tilingKey=9、tilingData="1 2 3 256 10 4064 0 256 0 10 1 3 0 0 "),未区分平台。

ascend950 上该 tiling 走 isAscend950 分支,行为与基线平台不同:

  • tilingKey 额外加 ASCEND950_SIMT_TILING_OFFSET(100),实际产出为 109;
  • 任务切分改为 taskNum=(n+coreNum-1)/coreNum,tilingData 各字段随之不同。

因此在 ascend950 环境编译执行该 UT 时,期望值与实际产出不一致,用例断言失败。

二、环境信息 (可选)

  • 昇腾硬件型号:Atlas A3系列产品(ascend950)
  • 编译选项:ASCEND_COMPUTE_UNIT=ascend950,执行 op_host tiling UT

三、重现步骤 (可选)

  1. 以 ASCEND_COMPUTE_UNIT=ascend950 编译 CoalesceSparse op_host UT;
  2. 运行 test_coalesce_sparse_tiling 的 test_coalesce_sparse_success 用例;
  3. 期望 tilingKey=9 与实际 109 不匹配,用例失败。

四、预期结果 (可选)

期望值应按编译平台区分:ascend950 上期望 tilingKey=109(含 offset)及对应新任务切分的 tilingData(taskNum=1、usedCoreNum=10、taskTail=1);基线平台维持原期望值不变。

💡 备注

修复方式(详见关联 PR):用例内通过 BUILD_SOC_VERSION 宏(经 UT_SOC_STR 串化)在编译期分支期望值;CMake 在 ascend950 时通过 target_compile_definitions 注入 BUILD_SOC_VERSION=${ASCEND_COMPUTE_UNIT}(仓库惯例参考 stft/segsum)。

likedislike
WangJinChengWangJinChengCollaborators
7 days ago Added label: bug-report
WangJinChengWangJinChengCollaborators
7 days ago Assign Anthony0331 as responsible person
WangJinChengWangJinChengCollaborators
7 days ago Associated pull request
CANN-robotCANN-robotCollaborators
6 days ago Close issue
CANN-robotCANN-robotCollaborators
6 days ago Added label: resolved