已关闭
[Bug]: BroadcastRegApiCall 在前置 stride 全为 0 时尾轴尺寸计算错误 #239
wei_shi创建于 8月13日关闭于 8月17日
8月13日 关联了pull request:fix: BroadcastRegApiCall 尾轴尺寸修复
8月13日 删除了关联的pull request:fix: BroadcastRegApiCall 尾轴尺寸修复
8月13日 将 wei_shi 设为负责人
wei_shi
8月13日 评论:
8月13日 评论:
问题已分析处理


8月13日 关联了pull request:fix: BroadcastRegApiCall 尾轴尺寸修复
8月13日 添加了label:bug
8月13日 issue类型由 任务 改变为 缺陷
8月17日 issue状态由 待办的 改变为 已完成
8月17日 关闭了 issue
8月17日 添加了label:resolved
问题描述
BroadcastRegApiCall在生成BroadcastExtend参数时,尾轴尺寸计算存在异常。当前逻辑将用于记录前置非零 vectorized stride 轴的
pre_pos初始化为0。当尾轴之前的所有 vectorized stride 均为0时,遍历过程中无法找到前置非零 stride 轴,pre_pos也不会被更新;但后续逻辑仍会把索引0对应的首轴当作有效前置轴参与计算,导致生成的目标 shape 或源 shape 尾轴尺寸错误。该问题会影响前置轴均为广播轴的多轴广播场景,使生成的
BroadcastExtend参数与实际 shape/stride 语义不一致,并可能进一步导致生成代码错误。复现场景
构造三轴广播场景,使尾轴之前各轴的 vectorized stride 均为
0,尾轴尺寸为非 1 值,例如7。检查BroadcastRegApiCall生成的BroadcastExtend参数,可以观察到尾轴尺寸错误引用了首轴信息。修复方向
0同时作为有效轴和默认状态。0的三轴广播路径。验收标准
0时,目标 shape 和源 shape 的尾轴尺寸均按当前轴正确生成。