已合并
修复conv2d dx PreDilation PostDilation问题 #3953
jiangqi创建于 4月17日
修复conv2d dx PreDilation PostDilation问题 #3953
已合并
jiangqi创建于 4月17日
jiangqi
4月17日

描述

conv2d dx 在插入PreDilation/PostDilation时,当strides较大时,将stridesH/W调整为inputH/W,但是未考虑pad情况,导致部分场景存在精度问题,该PR修复了这个问题。

关联的Issue

#2155

测试

文档更新

类型标签

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 jiangqi 的贡献)
Jjiangqi
4月17日 创建了 pull request,commit 4a726176
Jjiangqi
4月17日 关联了issue:[Bug-Report|缺陷反馈]: conv2d dx PreDilation PostDilation代码存在问题
CANN-robot
CANN-robot成员
4月17日 评论:

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


PR Approval Progress

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

Module Approval Details

module lgtm status approve status
conv gcw_kUomxQ2l, 胡碧霞 (2/2) gcw_kUomxQ2l (1/1)
pooling gcw_kUomxQ2l, 胡碧霞 (2/2) gcw_kUomxQ2l (1/1)

💡 Tip:

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

CLA Signature Pass

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

likedislike
CANN-robotCANN-robot成员
4月17日 添加了label:cann-cla/yes
CANN-robotCANN-robot成员
4月17日 将crystalhu,yangyang016,fanqirui,zhou-qilong,chenqi317,liubo75,tangweiwei2,gcw_kUomxQ2l,Andy-lb,gcw_Dm2TsRUi设为评审人
CANN-robotCANN-robot成员
4月17日 将gcw_kUomxQ2l,Andy-lb,gcw_Dm2TsRUi设为审查人
jiangqi
4月17日 评论:

compile

likedislike
CANN-robotCANN-robot成员
4月17日 添加了label:ci-pipeline-running
CANN-robot
CANN-robot成员
4月17日 评论:

流水线任务触发成功
任务链接 [6224743abf914dddbbf874876fc527aa][流水线指导]

任务名称状态日志下载链接
Compile_Ascend_X86_mobile_station ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_ARM ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_single ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_experimental ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_X86_950 ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_ARM_950 ✅ SUCCESS >>>>> >>>>>
Pre_Compile ✅ SUCCESS
pre_comment ✅ SUCCESS >>>>>
Compile_Ascend_X86 ✅ SUCCESS >>>>> >>>>>
Compile_X86_monitor ✅ SUCCESS >>>>> >>>>>
Compile_ARM_monitor ✅ SUCCESS >>>>> >>>>>
UT_Test_ophost ✅ SUCCESS
UT_Test_opapi ✅ SUCCESS
UT_Test_kernel ✅ SUCCESS
UT_Test_opgraph ✅ SUCCESS
Smoke_A900_npupool ✅ SUCCESS >>>>>
ATK_Test_A2 ✅ SUCCESS

[2026-04-17 17:30:45]    CI执行结束

likedislike
Jjiangqi
4月17日 update merge request[project id: 7665709, iid: 3953, commit_id: 693f320fede88afa601c0e45fd6d5adbdcc80a42] virtual merging success
Jjiangqi
4月17日 强制推送  25 个提交:b200ad9a-24 commits from branch 9.0.02da97d1f-修复conv2d dx PreDilation PostDilation问题
Jjiangqi
4月17日 update merge request[project id: 7665709, iid: 3953, commit_id: 3a250ec17ea6ffad6a52cafba6ba7d9fad828b08] virtual merging success
CANN-robot
CANN-robot成员
4月17日 评论:

问题/功能描述

修复了卷积和平均池化(AvgPool)反向传播算子中,当输出特征图高度或宽度为1时,Dilation算子可能因接收到过大的膨胀(dilation)参数而执行超时的问题。原修正逻辑未考虑填充(padding)的影响,导致在特定参数组合(如步长stride大于特征图尺寸)下,仍会生成过大的dilation值,引发性能瓶颈。

修改方案描述

修改了PreDilationPostDilation函数中修正dilation值的核心条件判断逻辑。将原先仅与输入特征图尺寸比较的条件,更新为与“输入特征图尺寸 + 总填充值”进行比较。当步长大于该新计算值时,则将dilation值修正为此新计算值。此修改确保了在输出为1x1且步长或填充较大时,传递给底层Dilation算子的参数被合理限制,从而避免了超时。同时调整了代码顺序,确保填充值在条件判断前已正确初始化。

likedislike
CANN-robot
CANN-robot成员
4月17日 评论:

流水线任务触发成功
任务链接 [9cd9a2884c154cffae3ce4d1f23076fa][流水线指导]

任务名称状态日志下载链接
codecheck ✅ SUCCESS
anti_virus ✅ SUCCESS >>>>>
Check_Pr ✅ SUCCESS >>>>>
StaticCheck_codespell_check ✅ SUCCESS
StaticCheck_link_validity_check ✅ SUCCESS
StaticCheck_resource_existence_check ✅ SUCCESS
StaticCheck_tag_closed_check ✅ SUCCESS
StaticCheck_markdownlint ✅ SUCCESS
codecheck_style ✅ SUCCESS

[2026-04-17 17:26:56]    CI执行结束

likedislike
CANN-robotCANN-robot成员
4月17日 删除了label:ci-pipeline-running
CANN-robotCANN-robot成员
4月17日 添加了label:ci-pipeline-passed
jiangqi
4月21日 评论:

compile

likedislike
CANN-robotCANN-robot成员
4月21日 删除了label:ci-pipeline-passed
CANN-robotCANN-robot成员
4月21日 添加了label:ci-pipeline-running
CANN-robot
CANN-robot成员
4月21日 评论:

流水线任务触发成功
任务链接 [29cea74eaae64d22bd03bfeaad804149][流水线指导]

任务名称状态日志下载链接
Compile_Ascend_X86_mobile_station ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_ARM ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_single ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_experimental ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_X86_950 ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_ARM_950 ✅ SUCCESS >>>>> >>>>>
Pre_Compile ✅ SUCCESS
pre_comment ✅ SUCCESS >>>>>
Compile_Ascend_X86 ✅ SUCCESS >>>>> >>>>>
Compile_X86_monitor ✅ SUCCESS >>>>> >>>>>
Compile_ARM_monitor ✅ SUCCESS >>>>> >>>>>
UT_Test_ophost ✅ SUCCESS
UT_Test_opapi ✅ SUCCESS
UT_Test_kernel ✅ SUCCESS
UT_Test_opgraph ✅ SUCCESS
Smoke_A900_npupool ✅ SUCCESS >>>>>
ATK_Test_A2 ✅ SUCCESS

[2026-04-21 10:24:57]    CI执行结束

likedislike
CANN-robot
CANN-robot成员
4月21日 评论:

流水线任务触发成功
任务链接 [89dbd27474e34a668bb951f00d3329c9][流水线指导]

任务名称状态日志下载链接
codecheck ✅ SUCCESS >>>>>
anti_virus ✅ SUCCESS >>>>>
Check_Pr ✅ SUCCESS >>>>>
StaticCheck_codespell_check ✅ SUCCESS
StaticCheck_link_validity_check ✅ SUCCESS
StaticCheck_resource_existence_check ✅ SUCCESS
StaticCheck_tag_closed_check ✅ SUCCESS
StaticCheck_markdownlint ✅ SUCCESS
codecheck_style ✅ SUCCESS

[2026-04-21 10:23:09]    CI执行结束

likedislike
CANN-robotCANN-robot成员
4月21日 删除了label:ci-pipeline-running
CANN-robotCANN-robot成员
4月21日 添加了label:ci-pipeline-passed
CANN-robotCANN-robot成员
4月21日 添加了label:AscendC-SUCC
CANN-robotCANN-robot成员
4月21日 添加了label:BUILD-SUCC
胡碧霞成员
4月21日 评论:

/approve

likedislike
CANN-robot
CANN-robot成员
4月21日 评论:

The following users do not have permission to comment /lgtm or /approve on any module in this PR:
胡碧霞

likedislike
胡碧霞成员
4月21日 评论:

/lgtm

likedislike
liulun0308成员
4月21日 评论:

/approve

likedislike
CANN-robotCANN-robot成员
4月21日 添加了label:lgtmapproved
CANN-robot
CANN-robot成员
4月21日 评论:

Review Guide

This pull-request passes review.
Committers who wrote a comment of /approve are: gcw_kUomxQ2l.
Reviewers who wrote a comment of /lgtm are: 胡碧霞, gcw_kUomxQ2l.

likedislike
CANN-robotCANN-robot成员
4月21日 关闭了关联的issue
CANN-robotCANN-robot成员
4月21日 合入了pull request