【AscendC】tiling方案设计不当引起的一个时隐时现的bug

在设计tiling方案时,通常会考虑到非对齐的场景,对输入数据进行补全操作从而使得非对齐场景也能正确的完成计算。但在某些算子的实现过程中,沿用上述操作却会造成数据的错误计算,且这种错误出现与否取决于随机生成的测试数据质量。本文笔者记录一个典型的错误,并分析产生该错误的原因。

对于exp操作来说,通过将其优化为max + exp(x - max)是一种常用的手段。但对于非对齐场景,上述优化之后的算子可能会出现问题。对于补齐的位置,通常是以补0作为典型的补齐手段,此时如果原数据的最大值为大于等于0的值,那么在计算max的过程不会产生影响,但是在计算x-max之后就会造成补0的位置的值变成了负数,从而经过指数操作之后会产生正值,如果其后有规约求和的操作就会造成求和的数目过大从而造成结果错误。

但是上述过程可能会出现无法检测的情况,也即补齐的数目非常少(例如只有1个位置需要补0),此时可能出现没有影响到最终结果的情况。

因此在tiling设计中尤其要注意非对齐场景,这些补齐的位置是否会对计算产生影响。

相关推荐
newxtc7 分钟前
【 广州产权交易所-注册安全分析报告-无验证方式导致安全隐患】
开发语言·人工智能·selenium·安全·yolo
AIzealot无23 分钟前
Qwen3 Embedding报告随笔
人工智能·深度学习·算法·论文·embedding·论文笔记·搜广推
渡我白衣24 分钟前
《深度学习进阶(四)——多模态智能:语言、视觉与语音的融合》
人工智能·深度学习
weixin_4180076025 分钟前
用opencv来识别信用卡的号码 Vs 使用yolo+paddleocr
人工智能·opencv·yolo
爱凤的小光38 分钟前
OpenCV的数据类型二
人工智能·opencv
flay39 分钟前
Claude Code + Git:AI驱动的版本管理最佳实践
人工智能·ai编程
王一点er41 分钟前
为什么LLM中KL散度需要近似计算
人工智能·深度学习
golang学习记1 小时前
Github狂飙8k star,Claude Code 模板:一键搞定项目配置的高级法器
人工智能
悠闲蜗牛�1 小时前
深度学习与大规模系统构建:AI技术在实际项目中的应用
人工智能·深度学习
lvchaoq1 小时前
记录小程序真机bug,而模拟器无法复现
小程序·bug