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

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

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

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

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

相关推荐
明志数科6 小时前
工业场景数据标注跟实验室标注有什么不同
人工智能·机器学习
2601_957787586 小时前
企业内容矩阵系统:AI赋能下的全链路运营与获客升级
大数据·人工智能·矩阵
IT_陈寒6 小时前
Vite热更新失灵?你可能漏了这个配置
前端·人工智能·后端
xiaoxiaoxiaolll6 小时前
《Light: Science & Applications》合并BIC实现80倍阈值单模运行:超紧凑光子晶体激光器新突破
人工智能·算法·机器学习
Agent手记6 小时前
制造业AI智能体选型:跨系统执行、任务拆解与信创适配三大技术维度对比
人工智能
小程故事多_806 小时前
Claude Code自定义workflow skills用法
数据库·人工智能·智能体
云烟成雨TD7 小时前
Spring AI Alibaba 1.x 系列【64】 ReactAgent 长期记忆
java·人工智能·spring
道可云7 小时前
道可云荣登半导体AI智能体应用第一梯队,打造研发全链路新范式
人工智能·半导体
w_t_y_y7 小时前
知识体系——MCP(四)自定义mcp server和client
人工智能
山川湖海7 小时前
AI时代快速学编程语言的陷阱(以Python为例)
大数据·人工智能·python