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

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

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

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

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

相关推荐
沪漂阿龙几秒前
大语言模型时代的无监督学习:聚类与降维全解析
人工智能·机器学习·语言模型·聚类
liuniu08184 分钟前
1.机器学习概述
人工智能·机器学习
图欧学习资源库6 分钟前
人工智能领域、图欧科技、IMYAI智能助手2026年3月更新月报
人工智能·科技
廋到被风吹走8 分钟前
【AI】Codex + 后端框架实战:Spring/Express/Django 业务逻辑全自动生成
人工智能·spring·express
蜡笔小马15 分钟前
01.[特殊字符] 构建你的第一个 AI 智能体:从 DeepSeek 到结构化对话
人工智能·python·langchain
ai生成式引擎优化技术19 分钟前
拓世AI操作系统白皮书(TAIOS)
人工智能
Hy行者勇哥21 分钟前
Vibe Coding 详解:Karpathy 氛围编程的概念、原理、5层工作流结构与对比图
人工智能·学习方法
企鹅的蚂蚁22 分钟前
【ESP32-S3 深度实战】从小智AI底层移植到自定义LVGL表情:M5Stack CoreS3 避坑与架构指南
人工智能·架构
H Journey26 分钟前
opencv之图像轮廓
人工智能·opencv·计算机视觉
冬至喵喵31 分钟前
提示工程 × 上下文管理:2025-2026 完整技术全景
人工智能·机器学习