已修复问题
问题一
问题描述 |
msrun方式拉起bert模型,跑精度时,跑到step: 3200报错,Transpose算子执行失败 |
|---|---|
严重级别 |
严重 |
根因分析 |
二阶段算子getNext, 获取到数据一阶段完成后写5b寄存器, head+1 导致aicpu的args 被回收, args地址被释放, 相同地址分给了ffts+ context . 算子二阶段执行时修改args里的值, 导致ffts+ sdma 任务 context 中src 异常,执行报错; |
解决方案 |
1.所有aicpu任务 回收时不释放args, 等同一条流上的下次回收时再释放 2.stm 销毁增加args释放, 防止流上最后一个任务是aicpu |
问题二
问题描述 |
C++算子直调整网编译出现aclnnBatchMatMul报错 |
|---|---|
严重级别 |
严重 |
根因分析 |
aclnnMatmul算子头文件位置发生变化,配置文件更新遗漏,导致include头文件失败 |
解决方案 |
include路径调整,确保多个层级间索引关系正确 |
问题三
问题描述 |
函数 FusedInferAttentionScoreProcessSoftmaxLse调用完成后, 函数内局部变量tempTensor被销毁, 但是指向的内存没有释放,导致FIA算子出现内存泄漏 |
|---|---|
严重级别 |
严重 |
根因分析 |
在FusedInferAttentionScoreProcessSoftmaxLse函数中对tempTensor开辟空间,但次入参没有引用,外部对此参数进行释放并未实际释放内存 |
解决方案 |
1. 外部改为对placeHolder释放空间; 2. 对tempTensor入参增加引用; |
问题四
问题描述 |
torch直调FIA接口,mask场景下,attention output偶现NAN值, 存在精度问题 |
|---|---|
严重级别 |
严重 |
根因分析 |
splitfuse PA mask场景下,存在P矩阵和mask矩阵数据踩踏问题,attention output偶现NAN值,导致精度问题, |
解决方案 |
修改P矩阵和Mask矩阵遍历循环索引,消除踩踏 |