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

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

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

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

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

相关推荐
什么半岛铁盒11 小时前
LangChain 入门与架构:快速搭建你的第一个 AI 应用
人工智能·架构·langchain
松☆11 小时前
torchair:昇腾PyTorch适配层生态协作深度解读
人工智能·pytorch·python
科技那些事儿11 小时前
一眸科技 | 情感认知智能,让AI更懂人心
人工智能·科技
java1234_小锋11 小时前
Spring AI 2.0 开发Java Agent智能体 - 多模态支持
java·人工智能·spring
无心水11 小时前
【Harness:全局认知】3、Harness 如何改写软件交付规则?从 52.8% 到 66.5% 的跨越背后
人工智能·性能优化·openclaw·养龙虾·harness·hermes·honcho
放下华子我只抽RuiKe511 小时前
React 从入门到生产(五):状态管理选型
前端·javascript·人工智能·深度学习·react.js·前端框架·ecmascript
前端若水11 小时前
使用 IndexedDB 在客户端存储对话记录
java·前端·人工智能·python·机器学习
未来智慧谷11 小时前
汉中首家OPC社区正式成立!未来智慧谷联合京东科技(汉中)数字经济产业园打造“一人公司”企业新生态
大数据·人工智能·科技
HIT_Weston11 小时前
89、【Agent】【OpenCode】glob 工具提示词(参数内容)
人工智能·agent·opencode
Omics Pro11 小时前
前沿学科:量子生物学!
大数据·数据库·人工智能·windows·redis·量子计算