已合并
refactor: 简化 convolution_backward 空指针防御性校验并清理冗余空行 #9309
Nice try创建于 8月27日
refactor: 简化 convolution_backward 空指针防御性校验并清理冗余空行 #9309
已合并
Nice try创建于 8月27日
Nice try
Nice try成员
8月27日

描述

对 conv/convolution_backward/op_api/aclnn_convolution_backward.cpp 中 aclnnConvolutionBackwardGetWorkspaceSize 与 aclnnConvTbcBackwardGetWorkspaceSize 的空指针检查进行代码清理(cleancode):

  • 原实现对 input/weight/gradOutput(ConvTbc 为 self/input/weight/bias)使用 if (x != nullptr) 条件包裹 Contiguous 调用,现改为在参数检查后统一执行防御性空指针校验(CHECK_RET(..., ACLNN_ERR_PARAM_NULLPTR)),随后无条件调用 Contiguous,消除条件嵌套,使返回值判断紧随函数调用;
  • 新增校验在运行时不可达:CheckParams()/CheckTbcParams() 内部第一步即通过 CheckNotNull()/CheckTbcNotNull() 强制上述入参非空(否则返回 ACLNN_ERR_PARAM_NULLPTR 并提前退出),因此本改动不改变任何运行时行为,仅提升代码可读性与可维护性;
  • 同时清理 conv/conv3d_backprop_filter_v2/op_host/op_tiling/arch22/conv3d_backprop_filter_v2_basic_block_tiling.cpp 中 AdjustSingleNForStreamK() 函数内的多余空行。

关联的Issue

测试

  • 本改动为纯代码清理,不改变运行时行为,未新增测试用例。

文档更新

无

类型标签

AI/Agent生成声明

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 Nice try 的贡献)
Nice tryNice try成员
8月27日 创建了 pull request,commit 90996c3e
atomgit-bot
atomgit-bot
8月27日 评论:

变更摘要

该 PR 旨在修复返回值判断应与函数调用紧密衔接的问题。改动仅发生在 conv3d_backprop_filter_v2_basic_block_tiling.cpp 的 Conv3DDWV2BasicBlockTiling::AdjustSingleNForStreamK 函数中:删除了 maxStreamKDim = std::max(maxStreamKDim, batchDoutDim); 赋值语句与其后 if (maxStreamKDim <= STREAM_K_DIM_MIN ...) 返回值判断之间的一个空行,使判断语句紧随函数调用之后。本次改动不涉及任何逻辑变更,纯为代码排版调整。

主要改动

  • 删除函数调用与判断之间的空行: 在 AdjustSingleNForStreamK 中移除 std::max 调用与 if (maxStreamKDim <= STREAM_K_DIM_MIN || tailCnt + STREAM_K_TAIL_TOLERANCE >= targetCoreNum) 判断之间的空行,使返回值判断紧跟函数调用,与 PR 标题所述意图一致。
  • 无功能影响: 改动仅删除 1 行空白,maxStreamKDim 的计算、STREAM_K_DIM_MIN 及 STREAM_K_TAIL_TOLERANCE 相关判断逻辑均保持不变,对外部行为无影响。
likedislike
不准确?
atomgit-bot
atomgit-bot
8月27日 评论:

代码审查

✅ 未发现问题

likedislike
不准确?
CANN-robotCANN-robot成员
8月27日 添加了label:cann-cla/yes
CANN-robot
CANN-robot成员
8月27日 评论:

Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
For more, you also can visit HICANN.


PR Approval Progress

✅ Congratulations! All modules have met the lgtm and approve requirements.

Module Approval Details

module lgtm status approve status
conv ✅ 柳宗谷, 汤平川 (2/2) ✅ 柳宗谷 (1/1)

💡 Tip:

  • Committer can comment /approve or /lgtm
  • Commenting /approve implies both code review (lgtm) and intent to merge (approve)

CLA Signature Pass

Nice_try, thanks for your pull request. All authors of the commits have signed the CLA. 👍

likedislike
此处折叠了62条消息 查看更多
TangPC
TangPC成员
8月27日 评论:

/lgtm
/approve

likedislike
LiuZonggu成员
8月27日 评论:

/approve

likedislike
CANN-robotCANN-robot成员
8月27日 添加了label:lgtmapproved
CANN-robotCANN-robot成员
8月27日 关闭了关联的issue
CANN-robotCANN-robot成员
8月27日 合入了pull request