| [BugFix][MhcPreBackward]: MhcPreBackward kernel代码中uint64_t变量存在被截断风险和使用未初始化MaskReg会造成偶现的精度问题
Co-authored-by: ZhangW<zhangwei1176@huawei.com>
Co-authored-by: TLE_xtx<xiaotianxiang@h-partners.com>
# message auto-generated for no-merge-commit merge:
!4484 merge master into master
[BugFix][MhcPreBackward]: MhcPreBackward kernel代码中uint64_t变量存在被截断风险和使用未初始化MaskReg会造成偶现的精度问题
Created-by: ZhangWei1176
Commit-by: ZhangW;TLE_xtx
Merged-by: cann-robot
Description: ## 描述
<!--在这里详细描述你的改动,包括改动的原因和所采取的方法。-->
MhcPreBackward kernel代码中,
(1)uint64_t数据类型的变量存在被截断风险,从而导致精度出错,因为某些AscendC API的参数只支持为uint32_t数据类型;
(2)使用未初始化MaskReg会造成偶现的精度问题。
## 关联的Issue
<!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000-->
<!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。-->
[Bug-Report|缺陷反馈 MhcPreBackward kernel代码中uint64_t变量存在被截断风险和使用未初始化MaskReg会造成偶现的精度问题](https://gitcode.com/cann/ops-transformer/issues/2000)
## 测试
<!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。-->
使用新精度2.1标准进行测试,通过边界测试和泛化测试。
## 文档更新
<!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->
更新了mhc/mhc_pre_backward/docs/aclnnMhcPreBackward.md文件
## 类型标签
<!-- [x] 表示选中 -->
- [x] 🐛 Bug 修复
- [ ] ✨ 新特性
- [ ] ⚡ 性能优化
- [ ] ♻️ 重构
- [ ] 🧪 测试
- [ ] 📦 构建/CI
- [ ] 🔧 配置变更
- [ ] 📝 文档更新
- [ ] ⬆️ 依赖升级
- [ ] 🔒 安全修复
- [ ] 🧹 代码清理
- [ ] ❓ 其他,请描述:
See merge request: cann/ops-transformer!4484 | 1 个月前 |