已合并
添加bmmv3 vector kernel拦截条件 #7264
zhang-junming21创建于 7月9日
添加bmmv3 vector kernel拦截条件 #7264
已合并
zhang-junming21创建于 7月9日
zhang-junming21
zhang-junming21成员
7月9日

描述

左矩阵transpose的情况下,不会走入该模板

关联的Issue

Issue #3972

测试

rdv通过,ci无问题,本地测试精度通过
image.png
image.png

文档更新

类型标签

AI/Agent生成声明

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 zhang-junming21 的贡献)
zhang-junming21zhang-junming21成员
7月9日 创建了 pull request,commit aba4af6c
zhang-junming21zhang-junming21成员
7月9日 关联了issue:[Bug-Report|缺陷反馈]: 910C环境 aclnnAddmm 16in32out场景 报错,MatMulV3 部分 kernel未找到
atomgit-bot
atomgit-bot
7月9日 评论:

变更摘要

本次变更针对 batch_mat_mul_v3 的 vector kernel 优化路径增加了矩阵转置条件的拦截检查,修复了左矩阵转置(transA = true)时错误进入 vector kernel 模板的问题。修改在两个层面同时进行:一是在外部场景判断 CheckAscendCScenario 中收紧条件,二是在 tiling 内部 CheckVectorComputationCondition 中新增专门的转置检查函数,确保只有左矩阵不转置、右矩阵转置的场景才能命中 vector 优化路径。

主要改动

  • 新增 CheckVectorTranspose() 检查函数:在 batch_mat_mul_v3_base_tiling.cpp 中新增 BatchMatMulV3BaseTiling::CheckVectorTranspose(),要求 args_.isATrans == falseargs_.isBTrans == true,否则拒绝进入 vector 优化版本,并输出日志提示。
  • CheckVectorComputationCondition() 加入转置拦截:在 CheckVectorComputationCondition() 的检查链中,于 CheckVectorNpuArch() 之后插入 CheckVectorTranspose() 调用,形成逐层拦截。
  • batch_matmul_util.cpp 中收紧 vector kernel 命中条件:在 CheckAscendCScenario 的条件判断中新增 adjX1 == 0(即左矩阵不转置)约束,与原来的 adjX2 == 1(右矩阵转置)共同构成完整的转置条件限制。
  • 头文件声明同步:在 batch_mat_mul_v3_base_tiling.h 的私有成员区域添加 CheckVectorTranspose() 函数声明。
likedislike
atomgit-bot
atomgit-bot
7月9日 评论:

代码审查

Closing Summary

文件 审查结果
matmul/batch_mat_mul_v3/op_host/op_tiling/batch_mat_mul_v3_base_tiling.cpp 1 个 P0 问题:第 1162 行类名拼写错误
matmul/batch_mat_mul_v3/op_host/op_tiling/batch_mat_mul_v3_base_tiling.h 无问题
matmul/common/op_host/op_api/batch_matmul_util.cpp 无问题
  • P0: 1 个(类名拼写错误导致编译/链接失败)
  • P1: 0 个
  • P2: 0 个
  • P3: 0 个

整体风险判断:本次变更的核心逻辑(为 vector kernel 增加 transpose 拦截条件)正确且与 CheckAscendCScenario 一致,但 .cpp 文件中存在一个类名拼写错误(BatchMatMulV3BaseTiling 多了一个大写 M),这将导致编译失败,属于阻塞性问题。修复后即可合入。

类型 数量
🔴 阻塞 1
🟡 建议 0

⛔ 需要修改

likedislike
CANN-robotCANN-robot成员
7月9日 添加了label:cann-cla/yes
此处折叠了43条消息 查看更多
CANN-robotCANN-robot成员
7月9日 添加了label:approved
chenqi317成员
7月9日 评论:

/lgtm
/approve

likedislike
CANN-robotCANN-robot成员
7月9日 添加了label:lgtm
CANN-robotCANN-robot成员
7月9日 合入了pull request
CANN-robot
CANN-robot成员
7月9日 评论:

Pull Request 已合并或已关闭。

If you want to solve this problem, you can click here to do it in the FAQs.

likedislike