已关闭
[Bug-Report|缺陷反馈]: ExtendConvTranspose算子L1 地址未按 64B 对齐导致 AIC error #4695
sunlesheng创建于  8月11日关闭于  8月11日
sunlesheng
sunlesheng
8月11日 创建

Thanks for sending an issue! Please fill in the following template to help quickly solve your problem.

Describe the current behavior / 问题描述 (Mandatory / 必填)

算子 ExtendConvTranspose在带 bias 的场景下,L1 中 bias 数据的偏移量与元素个数未按 64 字节对齐,导致后续 scale 数据起始地址未对齐,触发 AIC error。

Environment / 环境信息 (Mandatory / 必填)

  • 算子:conv3d_backprop_input_v2
  • 场景:带 bias / scale 的 quant 场景

Steps to reproduce the issue / 重现步骤 (Mandatory / 必填)

  1. 执行运行 ExtendConvTranspose 算子,开启 bias(及 scale)场景。
  2. 当 singleCoreCin * sizeof(biasType) 不是 64 的整数倍时,bias 在 L1 中占用的字节数未做 64B 对齐。
  3. GetScaleL1OffBytes() 返回的 scale 起始偏移未对齐到 64B,LoadChannelWiseL1 在尾部未对齐块残留脏数据,触发 AIC error。

Describe the expected behavior / 预期结果 (Mandatory / 必填)

  • bias 在 L1 中的占用字节数统一按 64 字节向上对齐:DivCeil(singleCoreCin * sizeof(biasType), 64) << 6。
  • LoadChannelWiseL1 中 rightPadding 计算简化为 DivCeil(blockBytes, ONE_BLK_SIZE) * ONE_BLK_SIZE / sizeof(channelWiseType) - loadNum。
  • 按对齐后的块数条件性执行 InitL1ZeroValue(仅 blockBytes == 0 或 32B 块数为奇数时清零),避免尾部未对齐块残留脏数据。

aicore error

Special notes for this issue/备注 (Optional / 选填)

likedislike
sunlesheng
sunlesheng
8月11日 评论:

/assign

likedislike
CANN-robotCANN-robot成员
8月11日 将 sunlesheng 设为负责人
sunleshengsunlesheng
8月11日 修改了issue 的描述
sunleshengsunlesheng
8月11日 修改了issue 的描述
sunleshengsunlesheng
8月11日 修改标题为 “[Bug-Report|缺陷反馈]: L1 地址未按 64B 对齐导致 AIC error”,原标题为“[Bug-Report|缺陷反馈]: ”
sunleshengsunlesheng
8月11日 修改标题为 “[Bug-Report|缺陷反馈]: ExtendConvTranspose算子L1 地址未按 64B 对齐导致 AIC error”,原标题为“[Bug-Report|缺陷反馈]: L1 地址未按 64B 对齐导致 AIC error”
CANN-robotCANN-robot成员
8月11日 关闭了 issue
CANN-robotCANN-robot成员
8月11日 添加了label:resolved