| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
docs(norm): 修正 6 个 aclnn 算子 A5 确定性计算描述 Co-authored-by: HelloWord-LuXin<luxin67@h-partners.com> # message auto-generated for no-merge-commit merge: !8709 merge fix-bn-groupnorm-deterministic-doc into master docs(norm): 修正 6 个 aclnn 算子 A5 确定性计算描述 Created-by: HelloWord-LuXin Commit-by: HelloWord-LuXin Merged-by: cann-robot Description: ## 修改内容 修正 aclnnBatchNorm、aclnnBatchNormElemt、aclnnBatchNormBackward、aclnnGroupNormBackward、aclnnRmsNormGrad、aclnnRmsNormGradQuant 六个算子文档中 A5(Ascend 950) 确定性计算描述与代码实际行为不符的问题。 close #4890 ## 问题分析 原描述为「默认非确定性实现,支持通过 aclrtCtxSetSysParamOpt 开启确定性」,未区分芯片版本。代码核查表明: A5(Ascend 950) 的 arch35/regbase kernel 使用 SyncAll 做核间同步,无 SetAtomicAdd;regbase tiling 不检查 GetDeterministic(),不读取 aclrtCtxSetSysParamOpt 设置。因此 A5 实际为默认确定性实现,且不支持通过 aclrtCtxSetSysParamOpt 开启确定性。 ## 代码依据 | 算子 | A5 GetDeterministic() | A5 SetAtomicAdd | A5 同步机制 | |------|-----------------------|-----------------|-------------| | aclnnBatchNorm | 否 | 否 | SyncAll | | aclnnBatchNormElemt | 否 | 否 | 无跨核归约 | | aclnnBatchNormBackward | 否 | 否 | SyncAll | | aclnnGroupNormBackward | 否 | 是(workspace写入) | SyncAll+二分树归约 | | aclnnRmsNormGrad | 否 | 否 | SyncAll | | aclnnRmsNormGradQuant | 否 | 否 | 无跨核归约 | > GroupNormBackward A5 虽使用 SetAtomicAdd 写 workspace,但 SPLIT_COUNT=2 保证每个 workspace slot 仅 2 个核写入,浮点加法交换律(a+b==b+a)保证结果确定;stage2 用 SyncAll + 二分树归约,最终输出无 atomic add。 ## 修改方案 仅修改 A5(Ascend 950) 描述,区分芯片版本描述: | 算子 | A5 描述 | |------|---------| | aclnnBatchNorm | → 默认确定性实现 | | aclnnBatchNormElemt | → 默认确定性实现 | | aclnnBatchNormBackward | → 默认确定性实现 | | aclnnGroupNormBackward | → 默认确定性实现 | | aclnnRmsNormGrad | → 默认确定性实现 | | aclnnRmsNormGradQuant | → 默认确定性实现 | ## 涉及文件 - norm/batch_norm_v3/docs/aclnnBatchNorm.md — 分架构描述,A5 改为默认确定性实现 - norm/batch_norm_elemt/docs/aclnnBatchNormElemt.md — 分架构描述,A5 改为默认确定性实现 - norm/batch_norm_grad_v3/docs/aclnnBatchNormBackward.md — 分架构描述,A5 改为默认确定性实现 - norm/group_norm_grad/docs/aclnnGroupNormBackward.md — 分架构描述,A5 改为默认确定性实现 - norm/rms_norm_grad/docs/aclnnRmsNormGrad.md — 分架构描述,A5 改为默认确定性实现 - norm/rms_norm_grad_quant/docs/aclnnRmsNormGradQuant.md — 仅 A5 支持,改为默认确定性实现 - docs/zh/op_api_list.md — 同步修正上述 6 个算子的 A5 列 See merge request: cann/ops-nn!8709 | 1 天前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 1 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 1 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 1 个月前 | |
Format update: Adjusted the license description format in all relevant files. Co-authored-by: jiangqi<jiangqi47@h-partners.com> # message auto-generated for no-merge-commit merge: !365 merge license5 into master Format update: Adjusted the license description format in all relevant files. Created-by: jiangqi2025 Commit-by: jiangqi Merged-by: turing_project1 Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!365 | 8 个月前 | |
modified md files(for readability improvement) Co-authored-by: duhuiping<duhuiping@h-partners.com> # message auto-generated for no-merge-commit merge: !3264 merge master_md into master modified md files(for readability improvement) Created-by: gitee-duhuiping Commit-by: duhuiping Merged-by: cann-robot Description: ## 描述 modified md files(for readability improvement) ## 关联的Issue NA ## 测试 NA ## 文档更新 md files ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-nn!3264 | 4 个月前 |
BatchNormElemt
本目录仅包含BatchNormElemt算子对应的aclnn接口;如您想要贡献该算子的AscendC实现,请参考贡献流程。