已关闭
index_fill算子需要处理的数据大小大于int32最大值时,会触发地址越界风险,从而可能导致vec core问题。 #1928
klein8793创建于  4月3日关闭于  4月7日
klein8793
klein8793成员
4月3日 创建

【问题描述】
index_fill算子支持Ascend 950场景,当需要处理的数据大小大于int32最大值,即索引数indicesNum * P * Q > int32最大值时,快除使用的还是uint32类型进行的,会导致快除得到的结果不对,从而有可能导致地址范围溢出,进而导致vec core问题发生。

【复现步骤】:
测试用例中,假设合轴后x的shape为: (P, N, Q), 合轴逻辑为: 以dim轴为界,dim轴前的所有轴维度相乘得到P, dim轴后所有轴维度相乘得到Q; dim轴所在的维度即为N.
构造测试用例,使得 P * N * 索引总个数大小大于2的31次方减1, 即2,147,483,647。

【环境信息】:
Ascend 950

likedislike
klein8793klein8793成员
4月3日 修改了issue 的描述
klein8793
klein8793成员
4月3日 评论:

/assign

likedislike
CANN-robotCANN-robot成员
4月3日 将 klein8793 设为负责人
klein8793klein8793成员
4月3日 修改了issue 的描述
CANN-robotCANN-robot成员
4月7日 关闭了 issue
CANN-robotCANN-robot成员
4月7日 添加了label:resolved