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

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

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

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

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

相关推荐
cxr8282 分钟前
Hermes × 本地 Ollama × qwen3.8 效能优化研究实验报告
人工智能·提示词·智能体
甲维斯5 分钟前
完蛋了,豆包变这么强?Seed2.1pro小测一下!
前端·人工智能
政企项目老覃11 分钟前
边缘 AI 推理部署:安防零售场景下的模型裁剪与端侧落地实践
人工智能·程序人生·算法·性能优化·vllm
sarasuki15 分钟前
如何让LLM 能在半夜偷偷打开网易云呢?
人工智能·设计模式·agent
jsl_jsl_jsl19 分钟前
《单机 Agent 应用的可观测性:刻意轻量的日志与调用链实现》
人工智能
G***技19 分钟前
告别物联网碎片化:杰和LH707+LM2-100-V0联合方案给出标准答案
人工智能·嵌入式硬件
szxinmai主板定制专家19 分钟前
【工控实战】RK3568/RK3588 8路隔离CAN/CANFD完整解决方案|多路总线并行通信、车载/工控量产落地
人工智能·fpga开发·zynq·mpsoc·半导体设备
刘马想放假20 分钟前
RK3588 使用 rk-llama.cpp + RKNPU2 部署 Qwen3.5:从零开始的 NPU 本地大模型实战
人工智能·开源·llm
商业看点解说28 分钟前
哪些 AI 创业公司和生成式 AI 产品适合使用 Amazon Bedrock?
人工智能
智驭未来掌门人29 分钟前
大模型网关集成 MCP 与 CLI 的调用指南(自动分配密钥工具)
人工智能