| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: 整改 23 个 Ascend950 算子 arch35 日志规范 Co-authored-by: wangrunfa<wangrunfa1@huawei.com> # message auto-generated for no-merge-commit merge: !9472 merge cherry-pick-mr-9347-1787965804708-auto into master fix: 整改 23 个 Ascend950 算子 arch35 日志规范 Created-by: wkx12138 Commit-by: wangrunfa Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 依据 cann-log-evaluation 12 条《CANN 日志规范》对 ops-nn 仓 Ascend950(arch35)算子扫描整改报告进行整改。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5343 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟已跑 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:日志整改 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9472 | 1 个月前 | |
adam_apply_one_assign算子README.md修改 Co-authored-by: zhoulong50_hw<zhoulong50@huawei.com> # message auto-generated for no-merge-commit merge: !10374 merge adam_apply_one_assign into master adam_apply_one_assign算子README.md修改 Created-by: zhoulong50_hw Commit-by: zhoulong50_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> adam_apply_one_assign算子README.md修改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5858 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10374 | 1 个月前 | |
fix: 整改 23 个 Ascend950 算子 arch35 日志规范 Co-authored-by: wangrunfa<wangrunfa1@huawei.com> # message auto-generated for no-merge-commit merge: !9472 merge cherry-pick-mr-9347-1787965804708-auto into master fix: 整改 23 个 Ascend950 算子 arch35 日志规范 Created-by: wkx12138 Commit-by: wangrunfa Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 依据 cann-log-evaluation 12 条《CANN 日志规范》对 ops-nn 仓 Ascend950(arch35)算子扫描整改报告进行整改。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5343 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟已跑 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:日志整改 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9472 | 1 个月前 | |
TF plugin 迁移2 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !7586 merge nn2 into master TF plugin 迁移2 Created-by: sunchun Commit-by: sunchun Merged-by: cann-robot Description: ## 描述 TF plugin 迁移 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4196 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7586 | 2 个月前 | |
fix(examples): 修复aclnn示例代码及接口文档问题 Co-authored-by: luoyufan7<luoyufan7@h-partners.com> # message auto-generated for no-merge-commit merge: !10300 merge fix/examples-codecheck into master fix(examples): 修复aclnn示例代码及接口文档问题 Created-by: luoyufan7 Commit-by: luoyufan7 Merged-by: cann-robot Description: ## 描述 修复 6 个算子示例代码与接口文档中的 codecheck 问题,完整问题清单见关联 Issue。 主要修复: - **宿主数据类型与 Tensor dataType 匹配**:DequantBias(inputHostData int16_t→int32_t、resultData int8_t→int16_t、weight/activation/bias int32_t→float、outputDtype true→1)、GeluBackward(gradOutput int→float 且 ACL_INT32→ACL_FLOAT)、GeluBackwardV2(gradOutput/gradInput int→float,0x00000001 位模式错值) - **shape 与 tiling 实现一致**:AdvanceStep inputTokens {8,1}→{8};AdvanceStepV2 按 advance_step_tiling.cpp 的 CheckInputOutputShape 理顺全部输入(inputTokens/inputPositions/seqLens/slotMapping 为 1 维 [numSeqs*(1+specNum)],sampledTokenIds 为 {numSeqs, 1+specNum},specToken 为 {numSeqs, specNum}),并同步修正参数表与报错表中与实现不一致的 shape 描述(原参数表称 inputTokens 为 2 维、报错表称 sampledTokenIds 第二维为 1,均与 tiling 校验矛盾) - **AdvanceStepV2 input7/input8 使用独立 DeviceAddr**:原复用 input5/input6 的地址,指针被二次 malloc 覆盖导致首次分配泄漏 - **清理模板残留**:"mean result" 日志标签(GeluMul/SoftmaxCrossEntropyWithLogits/AdvanceStep/AdvanceStepV2/DequantBias)、头文件"//不确定头文件名字"注释、SoftplusBackward CHECK_RET 多余分号(含 experimental 副本) - **AdvanceStep(V2) blockTables 参数描述**修正为"物理块编号"(原文"block 的大小"与公式语义不符) - 按 clang-format 补齐 8 个示例文件末尾换行等格式;test_aclnn_advance_step_v2.cpp 版权头替换为仓库标准格式 examples 与 docs 双份同步修改。 ## 关联的Issue Closes #5816 ## 测试 - [x] 9 个示例在 A2(Atlas 910B3,CANN 9.2.0)上实际编译(g++ 12.3.1)并运行通过(exit=0),输出数值符合预期(如 DequantBias 输出 fp16 位模式 0x4600=6.0,与 1×2.0×2.0+2.0 一致) ## 文档更新 - docs/aclnnDequantBias.md、aclnnGeluBackward.md、aclnnGeluBackwardV2.md、aclnnGeluMul.md、aclnnSoftmaxCrossEntropyWithLogits.md、aclnnAdvanceStep.md、aclnnAdvanceStepV2.md、aclnnSoftplusBackward.md(含 experimental 副本)中的示例代码同步更新;aclnnAdvanceStepV2.md 参数表与报错表 shape 描述对齐实现 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10300 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
fix: ApplyAdagrad,HardSwishGradV2,HardSigmoid,InplaceSub检视意见闭环 Co-authored-by: tianyu52<tianyu52@huawei.com> # message auto-generated for no-merge-commit merge: !10724 merge master into master fix: ApplyAdagrad,HardSwishGradV2,HardSigmoid,InplaceSub检视意见闭环 Created-by: tianyu52 Commit-by: tianyu52 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ApplyAdagrad,HardSwishGradV2,HardSigmoid,InplaceSub检视意见闭环 1.补充通路golden及测试用例 2.增加校验保护 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> UT/ST 通路验证 PASS ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!10724 | 1 个月前 | |
perf: apply_adagrad_d arch35 kernel 以 Vec::Div 替换 Vec::DivHighPrecision 提升性能 Co-authored-by: huang-qiang<huangqiang3@huawei.com> # message auto-generated for no-merge-commit merge: !9875 merge agent/issue-74 into master perf: apply_adagrad_d arch35 kernel 以 Vec::Div 替换 Vec::DivHighPrecision 提升性能 Created-by: huang-qiang Commit-by: huang-qiang Merged-by: cann-robot Description: ## 描述 对 apply_adagrad_d 算子 arch35(Ascend950)后置 kernel 做除法指令选型优化,将 var 更新路径的高精度除法替换为标准除法,在精度影响可忽略的前提下获得整体提速。 ### 改动原因 apply_adagrad_d 的计算公式为: - accum += grad * grad - var -= lr * grad / sqrt(accum) arch35 DAG 实现(optim/apply_adagrad_d/op_kernel/arch35/apply_adagrad_d_dag.h)中,var 更新路径的 OpVarT = Bind<Vec::DivHighPrecision<T>, OpLrMulGrad, OpAccumSqrt> 使用高精度除法 Vec::DivHighPrecision,指令开销较高。经精度验证,该路径使用标准除法 Vec::Div 即可满足精度要求,故替换以提升性能。 ### 改动方法 在 apply_adagrad_d_dag.h 中完成两处替换,覆盖 update_slots 两种执行路径: | 结构 | 路径场景 | 修改内容 | |------|----------|----------| | ApplyAdagradDUpdateSlots | update_slots=true(accum 原地累加后开方) | Vec::DivHighPrecision<T> → Vec::Div<T> | | ApplyAdagradD | update_slots=false(直接使用传入 accum) | Vec::DivHighPrecision<T> → Vec::Div<T> | 影响范围:fp16 / bf16 / fp32 三种 dtype(tiling 层实例化于 apply_adagrad_d_tiling_arch35.cpp,fp16/bf16 内部提升为 float 计算)。另补充文件末尾换行符。 ## 关联的Issue - #5583 ## 测试 使用相同输入 + golden 配对验证(作者报告的验证结论): - **性能**:整体约 1.12x 提速,其中 bf16 约 1.31x。 - **精度**:accum 输出前后恒等;var 精度达标率 1203 → 1198(劣化 0.4%,最大误差不变),影响可忽略。 - 覆盖三种 dtype、小/中/大 shape、update_slots 两态、常规/次正规/±max/inf 边界取值。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!9875 | 1 个月前 | |
MicroAPI namespace to Reg for arch35 kernels Co-authored-by: gcw_DS4cmz2b<1312925094@qq.com> # message auto-generated for no-merge-commit merge: !9267 merge rename into master MicroAPI namespace to Reg for arch35 kernels Created-by: gcw_DS4cmz2b Commit-by: gcw_DS4cmz2b Merged-by: cann-robot Description: ## 描述 修改了index,activation,matmul,conv,foreach,optim,experimental,vfusion,hash这几个文件夹内的命名空间,将MicroAPI-->Reg ## 关联的Issue [多个文件夹内的算子命名空间使用的MicroAPI,应改为Reg](https://gitcode.com/cann/ops-nn/issues/5218) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 冒烟,代码审查均通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9267 | 1 个月前 | |
fix: 整改 23 个 Ascend950 算子 arch35 日志规范 Co-authored-by: wangrunfa<wangrunfa1@huawei.com> # message auto-generated for no-merge-commit merge: !9472 merge cherry-pick-mr-9347-1787965804708-auto into master fix: 整改 23 个 Ascend950 算子 arch35 日志规范 Created-by: wkx12138 Commit-by: wangrunfa Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 依据 cann-log-evaluation 12 条《CANN 日志规范》对 ops-nn 仓 Ascend950(arch35)算子扫描整改报告进行整改。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5343 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟已跑 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:日志整改 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9472 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
AIDD拼写和标点问题修改 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !10060 merge master into master AIDD拼写和标点问题修改 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 AIDD拼写和标点问题修改 ## 关联的Issue 关联Issue #5680 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10060 | 1 个月前 | |
docs-fix Co-authored-by: jisongyuan<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !10176 merge master into master docs-fix Created-by: ji-songyuan Commit-by: jisongyuan Merged-by: cann-robot Description: ## 描述 本 PR 对 apply_adam_w_quant、apply_fused_ema_adam 两个量化优化器算子接口文档进行约束修正,共涉及 2 个文件,改动量 +15/-15。 主要解决以下文档与实现不一致的问题: - **"非连续 Tensor"列约束标错**:文档参数表格中"非连续 Tensor"列对多个 Tensor 参数标记为 √(支持),但当前算子实现实际仅支持连续 Tensor 输入,标记与实现不符,会导致用户误以为可传入非连续 Tensor 而触发未定义行为 ### 改动明细 | # | 文件 | 改动 | 说明 | |---|------|------|------| | 1 | optim/apply_adam_w_quant/docs/aclnnApplyAdamWQuant.md | +9/-9 | 将 9 个参数(grad、mRef、vRef、qmapM、qmapV、absmaxMRef、absmaxVRef、step 及一个相邻行)的"非连续 Tensor"列由 √ 修正为 -,与算子实现保持一致 | | 2 | optim/apply_fused_ema_adam/docs/aclnnApplyFusedEmaAdam.md | +6/-6 | 将 6 个参数(varRef、mRef、vRef、sRef、step 及相邻行)的"非连续 Tensor"列由 √ 修正为 -,与算子实现保持一致 | ### 改动原则 - **纯文档修复,不改变任何代码逻辑**:所有改动均为 .md 文件内表格单元格的标记值修改,不涉及 .cpp/.h 源文件 - **对齐实现**:修正后的约束说明与当前算子实现中连续 Tensor 校验逻辑一致 - **聚焦最小改动**:仅修正约束标记值,不做额外的文档重构 ## 关联的Issue issue#5740 ## 测试 - 文档改动无需编译/功能测试,通过人工 review 验证描述与代码实现一致 - 改动不影响算子行为,CI 编译与功能测试结果不受影响 ## 文档更新 本 PR 即为文档更新,涉及以下文件: - optim/apply_adam_w_quant/docs/aclnnApplyAdamWQuant.md - optim/apply_fused_ema_adam/docs/aclnnApplyFusedEmaAdam.md ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!10176 | 1 个月前 | |
md大模型检测低错修复 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9420 merge master into master md大模型检测低错修复 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> md aidd大模型检测低错修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5254 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> acl*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9420 | 1 个月前 | |
TF plugin 迁移2 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !7586 merge nn2 into master TF plugin 迁移2 Created-by: sunchun Commit-by: sunchun Merged-by: cann-robot Description: ## 描述 TF plugin 迁移 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4196 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7586 | 2 个月前 | |
BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 Co-authored-by: tianyu52<tianyu52@huawei.com> # message auto-generated for no-merge-commit merge: !9453 merge master into master BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 Created-by: tianyu52 Commit-by: tianyu52 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> BNInfer:泛化测试1000条均PASS InplaceApplyRMSProp:泛化测试1000条均PASS ApplyCamePart1:泛化测试1000条均PASS ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9453 | 1 个月前 | |
feat(optim): add ApplyCamePart2 operator Co-authored-by: handsomeRobot_SK<suke13@huawei.com> # message auto-generated for no-merge-commit merge: !9121 merge apply_came_part2 into master feat(optim): add ApplyCamePart2 operator Created-by: handsomeRobot_SK Commit-by: handsomeRobot_SK Merged-by: cann-robot Description: ## PR: feat(optim): add ApplyCamePart2 operator ### 概述 新增 ApplyCamePart2 算子,实现 CAME 优化器 4-Part 拆分的第二部分(Part2)。在 Part1 已计算出 grad 的行/列/总和统计(sum_grad_r、sum_grad_c、sum_grad_rc)后,本算子对上一 step 的行/列二阶矩估计 r、c 做 EMA 更新,并用置信度归一化计算归一化更新方向 u,同时累加 u 的平方和 sum_square_u 供 Part3 继续消费。算子基于 Ascend C 开发,支持 Ascend950 (arch35) 平台,仅支持 GEIR 图模式调用。 CAME 优化器分四个 Part 串行执行:本算子为第二部分,完成 r/c 二阶矩 EMA 更新与归一化更新方向 u 的计算;与 ApplyCamePart1(梯度统计)、ApplyCamePart3(裁剪 + 一阶矩)、ApplyCamePart4(参数更新)配套使用。其中 r、c 为原地(in-place)更新。 ### 算子功能 实现 CAME 优化器 Part2 阶段的计算公式(对齐 kernel 实现): $$ \begin{aligned} r_{\text{out}} &= \beta_2 \cdot r + (1 - \beta_2) \cdot \frac{\text{sum\_grad\_r}}{M} \\ c_{\text{out}} &= \beta_2 \cdot c + (1 - \beta_2) \cdot \frac{\text{sum\_grad\_c}}{N} \\ \text{denom} &= \beta_2 \cdot \frac{\text{sum\_r}}{N} + (1 - \beta_2) \cdot \frac{\text{sum\_grad\_rc}}{M \cdot N} \\ u &= \frac{\text{grad}}{\sqrt{r_{\text{out}} \cdot c_{\text{out}} \,/\, \text{denom}}} \\ \text{sum\_square\_u} &= \sum (u \odot u) \end{aligned} $$ 其中 $N=\text{grad.shape}[0]$ 为行数、$M=\text{grad.shape}[1]$ 为列数,$r_{\text{out}}$ 按行广播、$c_{\text{out}}$ 按列广播,$\text{sum\_r}$ 缺省时由算子内部计算 $\sum r$,$\text{global\_shape}$ 缺省时取 grad 的 $[N, M]$。 **关键特性**: - **In-place 更新**:r/c 输出与输入同名共享 GM 地址,框架将同一 GM 地址传给 kernel 的输入/输出参数,kernel 先读输入再写输出,并在 SyncAll 后读取更新值,原地语义正确 - **三阶段串行流水线**:Kernel 分 ProcessR(行二阶矩 EMA)→ ProcessC(列二阶矩 EMA)→ ProcessU(归一化方向 + 平方和)三阶段串行执行,阶段间通过 SyncAll 全核同步保证数据一致性 - **Pre/Post 辅助核**:Pre 阶段(sum_r 缺省时触发)分块计算 $\sum r$ 并通过 AtomicAdd 写入 workspace;Post 阶段由 core0 跨核归约 sum_square_u - **TypicalNet 优化**:对常见网络 shape(1024×1024、1024×4096、4096×1024、116736×1024)使用专用 TilingKey(201-203)和精简 kernel 路径 - **多 dtype 支持**:grad/r/c 支持 FP16/FP32/BF16;u/sum_square_u 强制 FP32 保精度;FP16/BF16 路径使用 ApplyCamePart2Float16 专用类 ### 对标竞品 | 竞品 | 接口 | 说明 | |------|------|------| | PyTorch | came_pytorch CAME optimizer | 功能对标,PyTorch 在 Python 层实现单阶段融合 | | NumPy | CPU 参考实现 | 功能对标,CANN 拆分为 4-Part 串行 | ### 支持规格 | 项目 | 支持情况 | |------|---------| | **数据类型** | float16, float32, bfloat16(grad/r/c);float32(u/sum_square_u/sum_grad_r/c/rc/beta2/sum_r);int64(global_shape) | | **数据格式** | ND | | **平台** | Ascend950 (arch35)、Atlas A3 训练/推理系列、Atlas A2 训练/推理系列 | | **调用模式** | GEIR 图模式 | | **输入端口** | 9 个(7 REQUIRED: grad, sum_grad_r, sum_grad_c, sum_grad_rc, r, c, beta2;2 OPTIONAL: sum_r, global_shape) | | **输出端口** | 4 个(r, c, u, sum_square_u;r/c 原地更新) | | **维度** | 仅支持 2D grad(rank=2,shape=[N, M]) | ### 交付件清单 optim/apply_came_part2/ ├── CMakeLists.txt # 构建配置 ├── README.md # 算子说明文档 ├── examples/ │ ├── test_geir_apply_came_part2.cpp # GEIR 图模式调用示例 │ └── arch35/ │ ├── test_geir_apply_came_part2.cpp # GEIR 静态数值校验 │ └── test_geir_apply_came_part2_dynamic.cpp # GEIR 动态 shape 校验 ├── op_graph/ │ ├── apply_came_part2_proto.h # GE IR 原型定义(9输入4输出,r/c同名原地) │ └── apply_came_part2_graph_infer.cpp # 图模式 InferDataType ├── op_host/ │ ├── apply_came_part2_def.cpp # 算子定义(7+2输入4输出) │ ├── apply_came_part2_infershape.cpp # 形状推导(u=grad.shape, r/c=输入shape) │ └── arch35/ │ ├── apply_came_part2_tiling_arch35.h # Tiling 数据结构 + CompileInfo │ └── apply_came_part2_tiling_arch35.cpp # Tiling 计算(596行) ├── op_kernel/ │ ├── apply_came_part2.cpp # Kernel 入口(6 TilingKey 分发 + Pre/Post) │ └── arch35/ │ ├── apply_came_part2.h # 通用 Kernel 类声明(976行实现) │ ├── apply_came_part2_common.h # 公共常量与工具函数 │ ├── apply_came_part2_pre.h # Pre 阶段:sum_r 计算 │ ├── apply_came_part2_post.h # Post 阶段:sum_square_u 跨核归约 │ ├── apply_came_part2_float16.h # FP16/BF16 专用 Kernel │ ├── apply_came_part2_typical_net.h # TypicalNet 专用 Kernel(float) │ └── apply_came_part2_float16_typical_net.h # TypicalNet 专用 Kernel(fp16/bf16) └── tests/ut/op_host/ ├── test_apply_came_part2_infershape.cpp # InferShape UT └── arch35/ └── test_apply_came_part2_tiling.cpp # Tiling UT ### 测试验证 #### 单元测试 (UT) - **覆盖范围**:InferShape + Tiling - **状态**:已交付 - **InferShape UT**:grad rank 校验、shape copy 正确性 - **Tiling UT**:形状校验、多核切分、TypicalNet 检测、Workspace 分配 #### GEIR 端对端验证 - **状态**:已交付 - **静态数值校验**:构图运行并与 CPU golden 逐值比对 r/c/u/sum_square_u - **动态 shape 校验**:动态维度(-1)与动态 rank(-2)多组 shape 校验 - **覆盖范围**: - 数据类型:FP32 / FP16 / BF16 - 形状组合:常规 shape + TypicalNet shape - 特殊场景:空 Tensor(N=0 或 M=0)、可选输入 sum_r/global_shape 缺省 ### 代码质量 - ✅ 文件头格式统一(Copyright 注释块) - ✅ Tiling 校验使用 OP_LOGE/VECTOR_INNER_ERR_REPORT 统一日志格式(rank/shape/dtype 三级校验) - ✅ 魔鬼数字常量化(BLOCK_SIZE=32, CALC_SIZE=256, CACHE_LINE=512, NUM_SCALAR_IN_UB=7) - ✅ InferShape 使用 OP_CHECK_NULL_WITH_CONTEXT + OP_CHECK_IF 格式 - ✅ InferDataType 支持图模式注册 - ✅ Kernel 三阶段流水线 + SyncAll 全核同步保证数据一致性 - ✅ In-place r/c 更新语义正确(先读后写 + SyncAll 后再读) - ✅ TypicalNet 优化路径覆盖 4 组常见 shape - ✅ 单元测试已交付(InferShape UT + Tiling UT) - ✅ GEIR 端对端示例已交付(静态 + 动态 shape) ### 编译验证 bash cd ops-nn bash build.sh --soc=ascend950 --pkg --ops=apply_came_part2 -j 256 # 预期输出 ✅ 编译成功 ✅ 生成算子包:cann-ops-nn-custom_linux-x86_64.run ### 关键实现细节 #### 1. 算子接口 | 参数 | 类型 | 说明 | |:-----|:-----|:-----| | INPUT grad | Tensor (REQUIRED) | 梯度,二维张量 [N, M],fp16/fp32/bf16 | | INPUT sum_grad_r | Tensor (REQUIRED) | grad 按行求和,shape [N],fp32 | | INPUT sum_grad_c | Tensor (REQUIRED) | grad 按列求和,shape [M],fp32 | | INPUT sum_grad_rc | Tensor (REQUIRED) | grad 全体元素之和,shape [1],fp32 | | INPUT r | Tensor (REQUIRED) | 行二阶矩估计,shape [N],fp16/fp32/bf16 | | INPUT c | Tensor (REQUIRED) | 列二阶矩估计,shape [M],fp16/fp32/bf16 | | INPUT beta2 | Tensor (REQUIRED) | 二阶矩衰减系数,标量 shape [1],fp32 | | OPTIONAL_INPUT sum_r | Tensor (OPTIONAL) | r 的全体元素之和,shape [1],fp32 | | OPTIONAL_INPUT global_shape | Tensor (OPTIONAL) | 原始 [N, M],shape [2],int64 | | OUTPUT r | Tensor (REQUIRED) | 更新后的行二阶矩,shape [N],原地更新 | | OUTPUT c | Tensor (REQUIRED) | 更新后的列二阶矩,shape [M],原地更新 | | OUTPUT u | Tensor (REQUIRED) | 归一化更新方向,shape = grad.shape,强制 fp32 | | OUTPUT sum_square_u | Tensor (REQUIRED) | u 的平方和,shape [1],fp32 | #### 2. Kernel 实现 - **架构**:三阶段串行流水线(ProcessR → ProcessC → ProcessU)+ Pre/Post 辅助核 - **TilingKey 分发**:6 个 Key(101-103 通用路径,201-203 TypicalNet 路径),通过 TILING_KEY_IS 宏分发 - **ProcessR**:行二阶矩 EMA 更新,r_out = beta2*r + (1-beta2)*sum_grad_r/M(Muls + Axpy) - **ProcessC**:列二阶矩 EMA 更新,c_out = beta2*c + (1-beta2)*sum_grad_c/N(Muls + Axpy) - **ProcessU**: 1. 计算 denom = beta2*sum_r/N + (1-beta2)*sum_grad_rc/(M*N) 2. CopyInUr/CopyInUc:加载更新后的 r/c 3. CopyInGrad:分块加载 grad 4. BroadcastR → TransposeR(ConfusionTranspose) → MulRC(r*c) → Muls(rcCoefficient) → Sqrt → Div(grad/sqrt) → Mul(u*u) → ReduceSumU 5. CopyOutU:写 u 到 GM + 写 per-core sum_square_u 到 workspace #### 3. 精度策略 - **FP32**:原生计算,无转换 - **FP16/BF16**:r/c 更新使用原生 dtype(Muls/Axpy 支持);u 计算在 ApplyCamePart2Float16 类中使用 Cast→FP32 计算→u 强制 fp32 输出 #### 4. Tiling 实现 - **形状校验**:grad rank==2;r/c/sum_grad_r/sum_grad_c/sum_grad_rc rank==1;shape 一致性;dtype 一致性 - **Tiling4CalcR**:按 N 切分多核,UB 空间按 N/(N+M) 比例分配,对齐 32B - **Tiling4CalcC**:按 M 切分多核,UB 空间按 M/(N+M) 比例分配,对齐 32B - **Tiling4CalcRc**:复用 r 切分,行方向按 CALC_SIZE/4 切分,列方向按 CALC_SIZE 切分 - **TypicalNet**:4 组 shape(1024×1024 等)使用 128 对齐 + 全列加载优化 - **Workspace**:sysWorkspace(16MB) + sumRWorkspace(512B) + sumSquareUWorkspace(核数×loop 数,512B 对齐) #### 5. In-place 优化 - r/c 输出与输入同名,框架保证 GM 地址一致 - Kernel ProcessR/ProcessC 先读输入 r/c 再写输出 r_out/c_out - SyncAll 后 ProcessU 从 rOutGm_/cOutGm_ 读取更新后的值 - Proto 定义中 INPUT r/c 与 OUTPUT r/c 同名,实现原地语义 ### 依赖与限制 - **依赖**:CANN 9.0.0 - **配套算子**:ApplyCamePart1(梯度统计)、ApplyCamePart3(裁剪 + 一阶矩)、ApplyCamePart4(参数更新) - **限制**: - 仅支持 GEIR 图模式(无 ACLNN 接口) - 仅支持 Ascend950 (arch35) - 仅支持 2D grad(rank=2,shape=[N, M]) - grad/r/c 三者 dtype 必须一致 - r/c 为原地输出 - 支持空 Tensor(N=0 或 M=0 时返回空结果,不报错) - 支持可选输入 sum_r(缺省时内部计算)和 global_shape(缺省时取 grad shape) ### Checklist - [x] 代码符合 ops-nn 内置算子标准 - [x] 文件头格式统一 - [x] Tiling 校验规范化(rank/shape/dtype 三级) - [x] clang-format 格式化 - [x] InferShape 支持 rank 校验 - [x] InferDataType 支持图模式注册 - [x] Kernel 三阶段流水线 + SyncAll 同步 - [x] In-place r/c 更新语义正确 - [x] TypicalNet 优化路径 - [x] 单元测试通过(InferShape UT + Tiling UT) - [x] GEIR 端对端验证通过(静态 + 动态 shape) - [x] README 文档完整 - [ ] 编译安装验证通过(待验证) See merge request: cann/ops-nn!9121 | 1 个月前 | |
BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 Co-authored-by: tianyu52<tianyu52@huawei.com> # message auto-generated for no-merge-commit merge: !9453 merge master into master BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 Created-by: tianyu52 Commit-by: tianyu52 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> BNInfer:泛化测试1000条均PASS InplaceApplyRMSProp:泛化测试1000条均PASS ApplyCamePart1:泛化测试1000条均PASS ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9453 | 1 个月前 | |
feat: 新增 ApplyCamePart4 算子 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !9123 merge master into master feat: 新增 ApplyCamePart4 算子 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 新增 ApplyCamePart4 算子,用于 CAME 优化器第 4 段(参数更新段)。 输入待更新参数 param_in、一阶动量 m(形状 (N,M))与置信因子 r_in(N)、c_in(M),按 CAME 更新规则回写 param_out、r_out、c_out。sum_r(全 N 行 r_in 的归约和)与 global_shape(全局 N,M)为可选输入:分布式场景由前序算子/全局形状传入;单机场景缺省,kernel 内部完成归约并取本地 n/m。 - 数据类型:param_in/m/r_in/c_in 及输出 param_out/r_out/c_out 支持 FLOAT/FLOAT16/BFLOAT16;weight_decay/lr/beta3/sum_r/sum_u_r/sum_u_c/sum_u_rc 恒为 FLOAT;global_shape 为 INT64。 - 数据格式:全部 ND。 - 无属性(attr);weight_decay/lr/beta3 等标量均作为输入传入。 - 平台:Ascend 950PR/Ascend 950DT(arch35,本仓 vendor 包);Atlas A2 系列由 canndev 内置 ascendc 实现支持。 ## 关联的Issue - #5176 ## 测试 - 新增 tiling 单测:tests/ut/op_host/arch35/test_apply_came_part4_tiling.cpp - 新增 infershape 单测:tests/ut/op_host/test_apply_came_part4_infershape.cpp - 新增 golden 数据:tests/assets/golden.py - 新增图模式调用样例:examples/test_geir_apply_came_part4.cpp ## 文档更新 - 新增算子 README:optim/apply_came_part4/README.md - 更新算子清单:docs/zh/op_list.md ## 类型标签 - [x] 新特性 ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!9123 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
TF plugin 迁移2 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !7586 merge nn2 into master TF plugin 迁移2 Created-by: sunchun Commit-by: sunchun Merged-by: cann-robot Description: ## 描述 TF plugin 迁移 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4196 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7586 | 2 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
docs-fix Co-authored-by: jisongyuan<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !10176 merge master into master docs-fix Created-by: ji-songyuan Commit-by: jisongyuan Merged-by: cann-robot Description: ## 描述 本 PR 对 apply_adam_w_quant、apply_fused_ema_adam 两个量化优化器算子接口文档进行约束修正,共涉及 2 个文件,改动量 +15/-15。 主要解决以下文档与实现不一致的问题: - **"非连续 Tensor"列约束标错**:文档参数表格中"非连续 Tensor"列对多个 Tensor 参数标记为 √(支持),但当前算子实现实际仅支持连续 Tensor 输入,标记与实现不符,会导致用户误以为可传入非连续 Tensor 而触发未定义行为 ### 改动明细 | # | 文件 | 改动 | 说明 | |---|------|------|------| | 1 | optim/apply_adam_w_quant/docs/aclnnApplyAdamWQuant.md | +9/-9 | 将 9 个参数(grad、mRef、vRef、qmapM、qmapV、absmaxMRef、absmaxVRef、step 及一个相邻行)的"非连续 Tensor"列由 √ 修正为 -,与算子实现保持一致 | | 2 | optim/apply_fused_ema_adam/docs/aclnnApplyFusedEmaAdam.md | +6/-6 | 将 6 个参数(varRef、mRef、vRef、sRef、step 及相邻行)的"非连续 Tensor"列由 √ 修正为 -,与算子实现保持一致 | ### 改动原则 - **纯文档修复,不改变任何代码逻辑**:所有改动均为 .md 文件内表格单元格的标记值修改,不涉及 .cpp/.h 源文件 - **对齐实现**:修正后的约束说明与当前算子实现中连续 Tensor 校验逻辑一致 - **聚焦最小改动**:仅修正约束标记值,不做额外的文档重构 ## 关联的Issue issue#5740 ## 测试 - 文档改动无需编译/功能测试,通过人工 review 验证描述与代码实现一致 - 改动不影响算子行为,CI 编译与功能测试结果不受影响 ## 文档更新 本 PR 即为文档更新,涉及以下文件: - optim/apply_adam_w_quant/docs/aclnnApplyAdamWQuant.md - optim/apply_fused_ema_adam/docs/aclnnApplyFusedEmaAdam.md ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!10176 | 1 个月前 | |
TF plugin 迁移2 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !7586 merge nn2 into master TF plugin 迁移2 Created-by: sunchun Commit-by: sunchun Merged-by: cann-robot Description: ## 描述 TF plugin 迁移 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4196 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7586 | 2 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
修改AIDD扫描问题 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !10263 merge master into master 修改AIDD扫描问题 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 修改AIDD扫描问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10263 | 1 个月前 | |
docs-fix Co-authored-by: jisongyuan@h-partners.com<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !10031 merge master into master docs-fix Created-by: ji-songyuan Commit-by: jisongyuan@h-partners.com Merged-by: cann-robot Description: ## 描述 本 PR 对 fused_adamw 算子接口文档进行约束补充修复,涉及 1 个文件,改动量 +5/-5。 主要解决以下文档缺失约束说明的问题: - **空 Tensor 约束未声明**:5 个 TensorList 输入参数的描述中未明确"不支持空 Tensor"约束,读者无法从文档获知该限制,可能导致传入空 Tensor 触发未定义行为 ### 改动明细 | # | 文件 | 改动 | 说明 | |---|------|------|------| | 1 | optim/fused_adamw/docs/aclnnFusedAdamw.md | +5/-5 | 为 5 个 TensorList 参数(paramsRef、grads、expAvgsRef、expAvgSqsRef、maxExpAvgSqsRef)的描述补充"不支持空 Tensor"约束说明,使用 <ul><li> 列表形式包裹,与文档其他参数的约束说明风格保持一致 | ### 改动原则 - **纯文档修复,不改变任何代码逻辑**:所有改动均为 .md 文件内的文字描述,不涉及 .cpp/.h 源文件 - **对齐实现**:修正后的描述与当前算子实现中空 Tensor 校验逻辑一致 - **聚焦最小改动**:仅补充缺失约束说明,不做额外的文档重构 ## 关联的Issue issue #4847 ## 测试 - 文档改动无需编译/功能测试,通过人工 review 验证描述与代码实现一致 - 改动不影响算子行为,CI 编译与功能测试结果不受影响 ## 文档更新 本 PR 即为文档更新,涉及以下文件: - optim/fused_adamw/docs/aclnnFusedAdamw.md ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!10031 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
docs_fix Co-authored-by: jisongyuan@h-partners.com<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !9894 merge master into master docs_fix Created-by: ji-songyuan Commit-by: jisongyuan@h-partners.com Merged-by: cann-robot Description: ## 描述 本 PR 对 ctc_loss、l1_loss、fused_adamw、fused_sgd 四个算子的接口文档(.md)进行勘误修复,共涉及 4 个文件,改动量 +15/-16。 主要解决以下文档与实现不一致的问题: - **参数名大小写不一致**:文档中参数名与实际接口签名不符 - **描述对象错误**:文档描述的作用对象与实际接口语义不匹配 - **约束条件过时**:文档约束与当前实现逻辑不符 - **参数命名规范**:文档参数名未遵循 camelCase 规范 ### 改动明细 | # | 文件 | 改动 | 说明 | |---|------|------|------| | 1 | loss/ctc_loss_v2/docs/aclnnCtcLossV2.md | 多处 | 将 targetLengths 统一改为 targetlengths,与实际 aclIntArray* 参数命名一致,消除大小写歧义 | | 2 | loss/lp_loss/docs/aclnnL1Loss.md | +2/-2 | 修正 target 参数描述:broadcast 关系对象由 gradOutput、target 更正为 self;补充 out 参数说明为"输出 tensor,存放 L1Loss 计算结果",并将"shape 只支持 0 维"规范为"out 为 0 维 tensor" | | 3 | optim/fused_adamw/docs/aclnnFusedAdamw.md | +1/-1 | 修正约束描述:原"数据格式不在支持范围"更正为"数据类型不同",与实际类型校验逻辑一致 | | 4 | optim/fused_sgd/docs/aclnnFusedSgd.md | +1/-2 | 参数名 workspace_size 更正为 workspaceSize,与 aclnnFusedSgd 接口签名一致;删除过时的 gradScale 等于 0 约束说明 | ### 改动原则 - **纯文档修复,不改变任何代码逻辑**:所有改动均为 .md 文件内的文字描述,不涉及 .cpp/.h 源文件 - **对齐实现**:修正后的描述与当前算子实现、接口签名、约束逻辑保持一致 - **聚焦最小改动**:仅修正文档与实现不一致项,不做额外的文档重构 ## 关联的Issue Issue #5554 ## 测试 - 文档改动无需编译/功能测试,通过人工 review 验证描述与代码实现一致 - 改动不影响算子行为,CI 编译与功能测试结果不受影响 ## 文档更新 本 PR 即为文档更新,涉及以下文件: - loss/ctc_loss_v2/docs/aclnnCtcLossV2.md - loss/lp_loss/docs/aclnnL1Loss.md - optim/fused_adamw/docs/aclnnFusedAdamw.md - optim/fused_sgd/docs/aclnnFusedSgd.md ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!9894 | 1 个月前 | |
fix: 完善NN算子proto与infer注册 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !10281 merge master into master fix: 完善NN算子proto与infer注册 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本次修改完成 NN 相关算子的 Legacy 下线整改: • 为FusedBiasLeakyRelu、BNTrainingReduce、INTrainingReduceGrad、LpNormUpdate、InplaceApplyAdaMax、InplaceApplyFtrl、InplaceApplyFtrlV2、InplaceApplyProximalAdagrad 等算子补充原型去重宏,避免新旧原型重复注册。 • 将 Softshrink 算子名称统一为 SoftShrink,同步调整原型、OpDef、InferShape、InferDataType、Tiling、Kernel、TilingData 及测试中的注册名称。 • 新增 SoftShrink 开源原型,统一输入输出名称为 input_x、output_y。 • 为 SigmoidFocalLoss 新增开源 InferShape 和 InferDataType 实现。 • 将 LpNormUpdate Level0 op_api 从 canndev 迁移至开源仓,保留 AICore/AICPU 分发逻辑。 • 按仓库 clang-format 规范完成相关文件格式整改。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5946 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10281 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
迁移4个TF plugin Co-authored-by: akira<zhouyuanhang4@h-partners.com> # message auto-generated for no-merge-commit merge: !10311 merge tf_plugin_migration2 into master 迁移4个TF plugin Created-by: VoyageZhou Commit-by: akira Merged-by: cann-robot Description: ## 描述 迁移4个TF plugin - apply_adam_with_amsgrad_plugin.cc - lars_v2_plugin.cc - npu_alloc_floatstatus_plugin.cc - prod_env_mat_a_plugin.cc <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [Issue 5812](https://gitcode.com/cann/ops-nn/issues/5812) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!10311 | 1 个月前 | |
[CANNBot]新增inplace_apply_add_sign优化器算子支持Ascend950 Co-authored-by: chen_chenn<chenchen167@huawei.com> # message auto-generated for no-merge-commit merge: !9013 merge inplace_apply_add_sign into master [CANNBot]新增inplace_apply_add_sign优化器算子支持Ascend950 Created-by: chen_chenn Commit-by: chen_chenn Merged-by: cann-robot Description: ## 描述 新增inplace_apply_add_sign优化器算子支持Ascend950 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5507 ## 测试 TTK obp冒烟 二级冒烟 ## 文档更新 optim/inplace_apply_add_sign/README.md ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!9013 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
fix: 完善NN算子proto与infer注册 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !10281 merge master into master fix: 完善NN算子proto与infer注册 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本次修改完成 NN 相关算子的 Legacy 下线整改: • 为FusedBiasLeakyRelu、BNTrainingReduce、INTrainingReduceGrad、LpNormUpdate、InplaceApplyAdaMax、InplaceApplyFtrl、InplaceApplyFtrlV2、InplaceApplyProximalAdagrad 等算子补充原型去重宏,避免新旧原型重复注册。 • 将 Softshrink 算子名称统一为 SoftShrink,同步调整原型、OpDef、InferShape、InferDataType、Tiling、Kernel、TilingData 及测试中的注册名称。 • 新增 SoftShrink 开源原型,统一输入输出名称为 input_x、output_y。 • 为 SigmoidFocalLoss 新增开源 InferShape 和 InferDataType 实现。 • 将 LpNormUpdate Level0 op_api 从 canndev 迁移至开源仓,保留 AICore/AICPU 分发逻辑。 • 按仓库 clang-format 规范完成相关文件格式整改。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5946 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10281 | 1 个月前 | |
fix: 完善NN算子proto与infer注册 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !10281 merge master into master fix: 完善NN算子proto与infer注册 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本次修改完成 NN 相关算子的 Legacy 下线整改: • 为FusedBiasLeakyRelu、BNTrainingReduce、INTrainingReduceGrad、LpNormUpdate、InplaceApplyAdaMax、InplaceApplyFtrl、InplaceApplyFtrlV2、InplaceApplyProximalAdagrad 等算子补充原型去重宏,避免新旧原型重复注册。 • 将 Softshrink 算子名称统一为 SoftShrink,同步调整原型、OpDef、InferShape、InferDataType、Tiling、Kernel、TilingData 及测试中的注册名称。 • 新增 SoftShrink 开源原型,统一输入输出名称为 input_x、output_y。 • 为 SigmoidFocalLoss 新增开源 InferShape 和 InferDataType 实现。 • 将 LpNormUpdate Level0 op_api 从 canndev 迁移至开源仓,保留 AICore/AICPU 分发逻辑。 • 按仓库 clang-format 规范完成相关文件格式整改。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5946 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10281 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
fix: InplaceApplyMentarum FP32 path var_out accuracy exception Co-authored-by: niukang_hw<niukang1@huawei.com> # message auto-generated for no-merge-commit merge: !8566 merge dev_inplace_apply_momentum into master fix: InplaceApplyMentarum FP32 path var_out accuracy exception Created-by: niukang_hw Commit-by: niukang_hw Merged-by: cann-robot Description: ## 描述 ### 1. 问题描述 InplaceApplyMomentum 算子 FP32 dtype 下 var_out 输出精度异常。TTK 100 条白盒用例中 42 条失败(PassRate 58%),失败模式为 var_out=FAIL, accum_out=PASS。FP16/BF16 路径不受影响。多核场景(65536元素/43核)下两个输出均错误。 根因有两个: - FP32 路径将 Vector 计算结果直接从 VECIN TQue buffer 执行 DataCopyPad(MTE3),缺少 V→MTE3 同步,写出未更新的脏数据 - 标量 lr/momentum 通过黑名单 API GlobalTensor::GetValue() 直接从 GM 读取,多核并发读取导致标量值错误 ### 2. 环境信息 - NPU: Ascend950PR (DAV_3510, arch35) - CANN: 9.0.0 - 算子仓: ops-nn, optim/inplace_apply_momentum - TTK: ops-test-kit 3.0.0 ### 3. 重现步骤 bash # 1. 编译安装算子 cd <ops-nn repo> source /usr/local/Ascend/cann-9.0.0/set_env.sh bash build.sh --ops=inplace_apply_momentum --soc=ascend950 cd build_out && bash cann-ops-nn-custom_linux-x86_64.run --install-path=/usr/local/Ascend/cann-9.0.0/opp --quiet --install-for-all # 2. 运行 TTK 测试(float32, shape=(65536,), 43核) cd <ops-test-kit> python3 -m ttk kernel -i <test_csv> \ --plugin <golden_dir> \ -t iam_012 --single-log # 3. 观察结果 # DYN_GOLD: FAIL,PASS (var_out=FAIL, accum_out=PASS) # precision_metrics: mere=0.0008, mare=7.83, threshold=0.0001220703125 最小复现:var=[1.0], accum=[0.5], lr=[0.01], grad=[0.1], momentum=[0.9], dtype=float32,golden 期望 var_out=0.9945,实际 kernel 输出 var_out=0(脏数据)。 ### 4. 预期结果 100 条白盒用例全部 PASS(PassRate 100%),var_out 与 golden tf.raw_ops.ResourceApplyMomentum 在容差范围内一致(FP32 rtol=1e-4)。 ### 5. 日志 / 截图 === 修复前 === TTK Test Summary: Total=100, PASS=58, FAIL=42, PassRate=58% iam_012 (float32, shape=(65536,), 43核): out[0] (var_out): mere=0.0008, mare=7.83, th=0.000122, FAIL out[1] (accum_out): mere=0.006, mare=37.0, th=0.000122, FAIL === 修复后 === TTK Test Summary: Total=100, PASS=100, FAIL=0, PassRate=100% 修复涉及两个文件: - op_kernel/arch35/inplace_apply_momentum.h:FP32 路径新增 VECOUT TQue 输出;标量读取从 GetValue() 改为 DataCopyPad+LocalTensor.GetValue() - op_host/arch35/inplace_apply_momentum_tiling_arch35.cpp:FP32_UB_BYTES_PER_ELEM 从 16 调整为 24 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4737 ## 测试 修复后,TTK Test Summary: Total=100, PASS=100, FAIL=0, PassRate=100% ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8566 | 2 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
fix: 完善NN算子proto与infer注册 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !10281 merge master into master fix: 完善NN算子proto与infer注册 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本次修改完成 NN 相关算子的 Legacy 下线整改: • 为FusedBiasLeakyRelu、BNTrainingReduce、INTrainingReduceGrad、LpNormUpdate、InplaceApplyAdaMax、InplaceApplyFtrl、InplaceApplyFtrlV2、InplaceApplyProximalAdagrad 等算子补充原型去重宏,避免新旧原型重复注册。 • 将 Softshrink 算子名称统一为 SoftShrink,同步调整原型、OpDef、InferShape、InferDataType、Tiling、Kernel、TilingData 及测试中的注册名称。 • 新增 SoftShrink 开源原型,统一输入输出名称为 input_x、output_y。 • 为 SigmoidFocalLoss 新增开源 InferShape 和 InferDataType 实现。 • 将 LpNormUpdate Level0 op_api 从 canndev 迁移至开源仓,保留 AICore/AICPU 分发逻辑。 • 按仓库 clang-format 规范完成相关文件格式整改。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5946 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10281 | 1 个月前 | |
feat(inplace_apply_proximal_gradient_descent): 新增Ascend950 GE图实现 Co-authored-by: babeiee<125106023003@njust.edu.cn> # message auto-generated for no-merge-commit merge: !9468 merge feat/inplace-apply-proximal-gradient-descent into master feat(inplace_apply_proximal_gradient_descent): 新增Ascend950 GE图实现 Created-by: babeiee Commit-by: babeiee Merged-by: cann-robot Description: ## 描述 新增 inplace_apply_proximal_gradient_descent 算子的 Ascend950 GE 图模式实现: - 新增 OpDef、GEIR 原型、shape/dtype 推导与图注册。 - 新增 Ascend950 Tiling、六个 dtype/buffer 分支及 RegBase Vector Kernel。 - 支持 BF16、FP16、FP32,rank 0-16,0-D/[1] 标量载体与空 Tensor。 - 补充各分支 Host Tiling UT、GEIR 示例、README 和算子列表。 ## 关联的Issue []https://gitcode.com/cann/ops-nn/issues/5327 ## 测试 - pre-commit run --from-ref origin/master --to-ref HEAD:全部通过,包括 clang-format、codespell、OAT。 - FAST pre-push:JIT build、ophost UT、opgraph UT、opkernel UT、Ascend950 package 全部通过。 - GEIR 两方精度:200/200 PASS。 - TensorFlow GPU 三方 L1 cross-check:200/200 PASS;CST/DYN 嵌套输出 400/400 PASS。 ## 文档更新 - 新增算子 README.md。 - 更新 docs/zh/op_list.md。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!9468 | 1 个月前 | |
BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 Co-authored-by: tianyu52<tianyu52@huawei.com> # message auto-generated for no-merge-commit merge: !9453 merge master into master BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 Created-by: tianyu52 Commit-by: tianyu52 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> BNInfer,InplaceApplyRMSProp以及ApplyCamePart1算子检视意见闭环 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> BNInfer:泛化测试1000条均PASS InplaceApplyRMSProp:泛化测试1000条均PASS ApplyCamePart1:泛化测试1000条均PASS ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9453 | 1 个月前 | |
foreach/lamb/scatter类部分算子补齐A5输入校验和资料说明 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !7419 merge master into master foreach/lamb/scatter类部分算子补齐A5输入校验和资料说明 Created-by: zl_hw Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 foreach/lamb/scatter类部分算子资料描述不清晰,补齐A5输入校验和资料说明 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4075 ## 测试 不涉及 ## 文档更新 foreach/lamb/scatter类部分算子README文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7419 | 3 个月前 | |
refactor(optim): CodeCheck代码规范整改 Co-authored-by: wangpengbo26<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !10441 merge codecheck915 into master refactor(optim): CodeCheck代码规范整改 Created-by: wangpengbo26 Commit-by: wangpengbo26 Merged-by: cann-robot Description: ## 描述 对 optim 算子族 arch35 平台 tiling 代码进行 C++ 规范整改,将 reinterpret_cast 替换为 static_cast,消除 codecheck 告警。 ### 改动原因 7 个 LAMB 算子 arch35 tiling 文件中使用 reinterpret_cast 进行类型转换,触发 codecheck 告警。这些转换均为已知类型间的下行转换,可安全使用 static_cast 替代。 ### 改动方法 每个文件 2 处修改(共 14 处),统一模式: 1. reinterpret_cast<uint8_t*>(emptyRawTiling->GetData()) → static_cast<uint8_t*>(...) 2. reinterpret_cast<const XxxCompileInfo*>(context->GetCompileInfo()) → static_cast<const XxxCompileInfo*>(...) 涉及 7 个算子: - lamb_apply_optimizer_assign - lamb_apply_weight_assign - lamb_next_m_v - lamb_next_m_v_with_decay - lamb_next_right - lamb_update_with_lr - lamb_update_with_lr_v2 涉及文件(7 个,均 +2 -2): - optim/lamb_apply_optimizer_assign/op_host/arch35/lamb_apply_optimizer_assign_tiling_arch35.cpp - optim/lamb_apply_weight_assign/op_host/arch35/lamb_apply_weight_assign_tiling_arch35.cpp - optim/lamb_next_m_v/op_host/arch35/lamb_next_m_v_tiling_arch35.cpp - optim/lamb_next_m_v_with_decay/op_host/arch35/lamb_next_m_v_with_decay_tiling_arch35.cpp - optim/lamb_next_right/op_host/arch35/lamb_next_right_tiling_arch35.cpp - optim/lamb_update_with_lr/op_host/arch35/lamb_update_with_lr_tiling_arch35.cpp - optim/lamb_update_with_lr_v2/op_host/arch35/lamb_update_with_lr_v2_tiling_arch35.cpp ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/5864 ## 测试 pass。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:codecheck 规范整改 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10441 | 1 个月前 | |
refactor(optim): CodeCheck代码规范整改 Co-authored-by: wangpengbo26<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !10441 merge codecheck915 into master refactor(optim): CodeCheck代码规范整改 Created-by: wangpengbo26 Commit-by: wangpengbo26 Merged-by: cann-robot Description: ## 描述 对 optim 算子族 arch35 平台 tiling 代码进行 C++ 规范整改,将 reinterpret_cast 替换为 static_cast,消除 codecheck 告警。 ### 改动原因 7 个 LAMB 算子 arch35 tiling 文件中使用 reinterpret_cast 进行类型转换,触发 codecheck 告警。这些转换均为已知类型间的下行转换,可安全使用 static_cast 替代。 ### 改动方法 每个文件 2 处修改(共 14 处),统一模式: 1. reinterpret_cast<uint8_t*>(emptyRawTiling->GetData()) → static_cast<uint8_t*>(...) 2. reinterpret_cast<const XxxCompileInfo*>(context->GetCompileInfo()) → static_cast<const XxxCompileInfo*>(...) 涉及 7 个算子: - lamb_apply_optimizer_assign - lamb_apply_weight_assign - lamb_next_m_v - lamb_next_m_v_with_decay - lamb_next_right - lamb_update_with_lr - lamb_update_with_lr_v2 涉及文件(7 个,均 +2 -2): - optim/lamb_apply_optimizer_assign/op_host/arch35/lamb_apply_optimizer_assign_tiling_arch35.cpp - optim/lamb_apply_weight_assign/op_host/arch35/lamb_apply_weight_assign_tiling_arch35.cpp - optim/lamb_next_m_v/op_host/arch35/lamb_next_m_v_tiling_arch35.cpp - optim/lamb_next_m_v_with_decay/op_host/arch35/lamb_next_m_v_with_decay_tiling_arch35.cpp - optim/lamb_next_right/op_host/arch35/lamb_next_right_tiling_arch35.cpp - optim/lamb_update_with_lr/op_host/arch35/lamb_update_with_lr_tiling_arch35.cpp - optim/lamb_update_with_lr_v2/op_host/arch35/lamb_update_with_lr_v2_tiling_arch35.cpp ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/5864 ## 测试 pass。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:codecheck 规范整改 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10441 | 1 个月前 | |
refactor(optim): CodeCheck代码规范整改 Co-authored-by: wangpengbo26<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !10441 merge codecheck915 into master refactor(optim): CodeCheck代码规范整改 Created-by: wangpengbo26 Commit-by: wangpengbo26 Merged-by: cann-robot Description: ## 描述 对 optim 算子族 arch35 平台 tiling 代码进行 C++ 规范整改,将 reinterpret_cast 替换为 static_cast,消除 codecheck 告警。 ### 改动原因 7 个 LAMB 算子 arch35 tiling 文件中使用 reinterpret_cast 进行类型转换,触发 codecheck 告警。这些转换均为已知类型间的下行转换,可安全使用 static_cast 替代。 ### 改动方法 每个文件 2 处修改(共 14 处),统一模式: 1. reinterpret_cast<uint8_t*>(emptyRawTiling->GetData()) → static_cast<uint8_t*>(...) 2. reinterpret_cast<const XxxCompileInfo*>(context->GetCompileInfo()) → static_cast<const XxxCompileInfo*>(...) 涉及 7 个算子: - lamb_apply_optimizer_assign - lamb_apply_weight_assign - lamb_next_m_v - lamb_next_m_v_with_decay - lamb_next_right - lamb_update_with_lr - lamb_update_with_lr_v2 涉及文件(7 个,均 +2 -2): - optim/lamb_apply_optimizer_assign/op_host/arch35/lamb_apply_optimizer_assign_tiling_arch35.cpp - optim/lamb_apply_weight_assign/op_host/arch35/lamb_apply_weight_assign_tiling_arch35.cpp - optim/lamb_next_m_v/op_host/arch35/lamb_next_m_v_tiling_arch35.cpp - optim/lamb_next_m_v_with_decay/op_host/arch35/lamb_next_m_v_with_decay_tiling_arch35.cpp - optim/lamb_next_right/op_host/arch35/lamb_next_right_tiling_arch35.cpp - optim/lamb_update_with_lr/op_host/arch35/lamb_update_with_lr_tiling_arch35.cpp - optim/lamb_update_with_lr_v2/op_host/arch35/lamb_update_with_lr_v2_tiling_arch35.cpp ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/5864 ## 测试 pass。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:codecheck 规范整改 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10441 | 1 个月前 | |
refactor(optim): CodeCheck代码规范整改 Co-authored-by: wangpengbo26<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !10441 merge codecheck915 into master refactor(optim): CodeCheck代码规范整改 Created-by: wangpengbo26 Commit-by: wangpengbo26 Merged-by: cann-robot Description: ## 描述 对 optim 算子族 arch35 平台 tiling 代码进行 C++ 规范整改,将 reinterpret_cast 替换为 static_cast,消除 codecheck 告警。 ### 改动原因 7 个 LAMB 算子 arch35 tiling 文件中使用 reinterpret_cast 进行类型转换,触发 codecheck 告警。这些转换均为已知类型间的下行转换,可安全使用 static_cast 替代。 ### 改动方法 每个文件 2 处修改(共 14 处),统一模式: 1. reinterpret_cast<uint8_t*>(emptyRawTiling->GetData()) → static_cast<uint8_t*>(...) 2. reinterpret_cast<const XxxCompileInfo*>(context->GetCompileInfo()) → static_cast<const XxxCompileInfo*>(...) 涉及 7 个算子: - lamb_apply_optimizer_assign - lamb_apply_weight_assign - lamb_next_m_v - lamb_next_m_v_with_decay - lamb_next_right - lamb_update_with_lr - lamb_update_with_lr_v2 涉及文件(7 个,均 +2 -2): - optim/lamb_apply_optimizer_assign/op_host/arch35/lamb_apply_optimizer_assign_tiling_arch35.cpp - optim/lamb_apply_weight_assign/op_host/arch35/lamb_apply_weight_assign_tiling_arch35.cpp - optim/lamb_next_m_v/op_host/arch35/lamb_next_m_v_tiling_arch35.cpp - optim/lamb_next_m_v_with_decay/op_host/arch35/lamb_next_m_v_with_decay_tiling_arch35.cpp - optim/lamb_next_right/op_host/arch35/lamb_next_right_tiling_arch35.cpp - optim/lamb_update_with_lr/op_host/arch35/lamb_update_with_lr_tiling_arch35.cpp - optim/lamb_update_with_lr_v2/op_host/arch35/lamb_update_with_lr_v2_tiling_arch35.cpp ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/5864 ## 测试 pass。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:codecheck 规范整改 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10441 | 1 个月前 | |
refactor(optim): CodeCheck代码规范整改 Co-authored-by: wangpengbo26<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !10441 merge codecheck915 into master refactor(optim): CodeCheck代码规范整改 Created-by: wangpengbo26 Commit-by: wangpengbo26 Merged-by: cann-robot Description: ## 描述 对 optim 算子族 arch35 平台 tiling 代码进行 C++ 规范整改,将 reinterpret_cast 替换为 static_cast,消除 codecheck 告警。 ### 改动原因 7 个 LAMB 算子 arch35 tiling 文件中使用 reinterpret_cast 进行类型转换,触发 codecheck 告警。这些转换均为已知类型间的下行转换,可安全使用 static_cast 替代。 ### 改动方法 每个文件 2 处修改(共 14 处),统一模式: 1. reinterpret_cast<uint8_t*>(emptyRawTiling->GetData()) → static_cast<uint8_t*>(...) 2. reinterpret_cast<const XxxCompileInfo*>(context->GetCompileInfo()) → static_cast<const XxxCompileInfo*>(...) 涉及 7 个算子: - lamb_apply_optimizer_assign - lamb_apply_weight_assign - lamb_next_m_v - lamb_next_m_v_with_decay - lamb_next_right - lamb_update_with_lr - lamb_update_with_lr_v2 涉及文件(7 个,均 +2 -2): - optim/lamb_apply_optimizer_assign/op_host/arch35/lamb_apply_optimizer_assign_tiling_arch35.cpp - optim/lamb_apply_weight_assign/op_host/arch35/lamb_apply_weight_assign_tiling_arch35.cpp - optim/lamb_next_m_v/op_host/arch35/lamb_next_m_v_tiling_arch35.cpp - optim/lamb_next_m_v_with_decay/op_host/arch35/lamb_next_m_v_with_decay_tiling_arch35.cpp - optim/lamb_next_right/op_host/arch35/lamb_next_right_tiling_arch35.cpp - optim/lamb_update_with_lr/op_host/arch35/lamb_update_with_lr_tiling_arch35.cpp - optim/lamb_update_with_lr_v2/op_host/arch35/lamb_update_with_lr_v2_tiling_arch35.cpp ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/5864 ## 测试 pass。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:codecheck 规范整改 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10441 | 1 个月前 | |
refactor(optim): CodeCheck代码规范整改 Co-authored-by: wangpengbo26<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !10441 merge codecheck915 into master refactor(optim): CodeCheck代码规范整改 Created-by: wangpengbo26 Commit-by: wangpengbo26 Merged-by: cann-robot Description: ## 描述 对 optim 算子族 arch35 平台 tiling 代码进行 C++ 规范整改,将 reinterpret_cast 替换为 static_cast,消除 codecheck 告警。 ### 改动原因 7 个 LAMB 算子 arch35 tiling 文件中使用 reinterpret_cast 进行类型转换,触发 codecheck 告警。这些转换均为已知类型间的下行转换,可安全使用 static_cast 替代。 ### 改动方法 每个文件 2 处修改(共 14 处),统一模式: 1. reinterpret_cast<uint8_t*>(emptyRawTiling->GetData()) → static_cast<uint8_t*>(...) 2. reinterpret_cast<const XxxCompileInfo*>(context->GetCompileInfo()) → static_cast<const XxxCompileInfo*>(...) 涉及 7 个算子: - lamb_apply_optimizer_assign - lamb_apply_weight_assign - lamb_next_m_v - lamb_next_m_v_with_decay - lamb_next_right - lamb_update_with_lr - lamb_update_with_lr_v2 涉及文件(7 个,均 +2 -2): - optim/lamb_apply_optimizer_assign/op_host/arch35/lamb_apply_optimizer_assign_tiling_arch35.cpp - optim/lamb_apply_weight_assign/op_host/arch35/lamb_apply_weight_assign_tiling_arch35.cpp - optim/lamb_next_m_v/op_host/arch35/lamb_next_m_v_tiling_arch35.cpp - optim/lamb_next_m_v_with_decay/op_host/arch35/lamb_next_m_v_with_decay_tiling_arch35.cpp - optim/lamb_next_right/op_host/arch35/lamb_next_right_tiling_arch35.cpp - optim/lamb_update_with_lr/op_host/arch35/lamb_update_with_lr_tiling_arch35.cpp - optim/lamb_update_with_lr_v2/op_host/arch35/lamb_update_with_lr_v2_tiling_arch35.cpp ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/5864 ## 测试 pass。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:codecheck 规范整改 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10441 | 1 个月前 | |
refactor(optim): CodeCheck代码规范整改 Co-authored-by: wangpengbo26<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !10441 merge codecheck915 into master refactor(optim): CodeCheck代码规范整改 Created-by: wangpengbo26 Commit-by: wangpengbo26 Merged-by: cann-robot Description: ## 描述 对 optim 算子族 arch35 平台 tiling 代码进行 C++ 规范整改,将 reinterpret_cast 替换为 static_cast,消除 codecheck 告警。 ### 改动原因 7 个 LAMB 算子 arch35 tiling 文件中使用 reinterpret_cast 进行类型转换,触发 codecheck 告警。这些转换均为已知类型间的下行转换,可安全使用 static_cast 替代。 ### 改动方法 每个文件 2 处修改(共 14 处),统一模式: 1. reinterpret_cast<uint8_t*>(emptyRawTiling->GetData()) → static_cast<uint8_t*>(...) 2. reinterpret_cast<const XxxCompileInfo*>(context->GetCompileInfo()) → static_cast<const XxxCompileInfo*>(...) 涉及 7 个算子: - lamb_apply_optimizer_assign - lamb_apply_weight_assign - lamb_next_m_v - lamb_next_m_v_with_decay - lamb_next_right - lamb_update_with_lr - lamb_update_with_lr_v2 涉及文件(7 个,均 +2 -2): - optim/lamb_apply_optimizer_assign/op_host/arch35/lamb_apply_optimizer_assign_tiling_arch35.cpp - optim/lamb_apply_weight_assign/op_host/arch35/lamb_apply_weight_assign_tiling_arch35.cpp - optim/lamb_next_m_v/op_host/arch35/lamb_next_m_v_tiling_arch35.cpp - optim/lamb_next_m_v_with_decay/op_host/arch35/lamb_next_m_v_with_decay_tiling_arch35.cpp - optim/lamb_next_right/op_host/arch35/lamb_next_right_tiling_arch35.cpp - optim/lamb_update_with_lr/op_host/arch35/lamb_update_with_lr_tiling_arch35.cpp - optim/lamb_update_with_lr_v2/op_host/arch35/lamb_update_with_lr_v2_tiling_arch35.cpp ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/5864 ## 测试 pass。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:codecheck 规范整改 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10441 | 1 个月前 | |
legacy下线:整改NN算子图模式注册与日志规范 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8388 merge master into master legacy下线:整改NN算子图模式注册与日志规范 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本 PR 用于 ops-nn 仓 Legacy 下线整改,补齐部分算子的直调/图模式注册、InferShape / InferDataType 拆分、日志规范整改及必要的编译/预提交问题修复。 1. 补齐多个算子的 op_graph 侧 InferDataType / graph infer 注册文件,并同步补充对应 CMakeLists.txt: - 如 FastGeluV2、HardShrinkGrad、HardSigmoidGrad、HardSwish、HardSwishGrad、Selu、SeluGrad、Shrink、SoftplusGrad、SoftplusV2、SoftplusV2Grad、Softsign、SoftsignGrad、SmoothL1Loss、SoftMarginLoss、LpNormUpdateV2、ApplyFtrlV2、ApplyMomentum、ApplyRMSProp 等。 2. 调整部分算子的 op_host infer 文件: - 将 InferDataType 逻辑从 infershape 文件中拆分/迁移到 op_graph 侧; - 保留 InferShape 逻辑,避免 shape/type 混在同一处注册; - 收敛 IndexCheck infershape 日志,仅保留入口日志。 3. 补充 SoftMarginLoss 图模式原型: - 新增 loss/soft_margin_loss/op_graph/soft_margin_loss_proto.h; - 新增 OPS_PROTO_DEF_SOFTMARGINLOSS 去重宏,避免重复注册; - 补充 SoftMarginLoss 的 op_graph/CMakeLists.txt 和 graph infer 注册。 4. 日志整改: - 为 Arch35 tiling 入口补充统一入口日志; - 对本 PR 修改范围内新增/调整的外部输入错误日志,按规范使用 OP_LOGE_FOR_INVALID_* 系列上报接口; - 收敛部分过多的 tiling / infershape 日志打印,避免循环或冗余打印。 5. 回退/收敛不属于本次整改范围的 Softshrink 重命名相关改动: - Softshrink -> SoftShrink 的命名调整不放在本 PR 中,后续单独 PR 处理。 6. 修复 pre-commit 格式问题: - 按仓库 .clang-format 修复格式; - 不修改 .pre-commit-config.yaml。 影响范围 主要影响 activation、index、loss、norm、optim、quant、vfusion 等目录下 Legacy 下线相关算子的 op_graph 注册、InferDataType 拆分、tiling 入口日志和错误日志规范。 ## 变更内容 ## 关联的Issue ## 测试 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:Legacy包下线整改 See merge request: cann/ops-nn!8388 | 1 个月前 | |
fix(nn): 加固 INInferV2、InTrainingReduceV2、NormalizeBBox 与 SGD Co-authored-by: raoliang_sac<raoliang4@huawei.com> # message auto-generated for no-merge-commit merge: !10477 merge fix/four-ops-quality-hardening into master fix(nn): 加固 INInferV2、InTrainingReduceV2、NormalizeBBox 与 SGD Created-by: raoliang_sac Commit-by: raoliang_sac Merged-by: cann-robot Description: ## 描述 对 INInferV2、InTrainingReduceV2、NormalizeBBox 和 SGD 进行质量加固。当前 PR 实际修改 42 个受控文件,不包含 tests/st/ 目录及本地测试日志。 - **INInferV2**:补强 rank 2~8、shape、dtype、维度乘法溢出及 optional output 校验;使用 GetIrOutputInstanceInfo 处理 IR 输出序号与压实物理序号的映射,并修复 Tiling/Kernel 边界处理;将仅适用于 Ascend 950 的 tiling UT 归入 arch35,避免 A2 构建误收集。 - **InTrainingReduceV2**:统一 legacy V1 common infer 与 runtime2 infer 的 ND shape 推导口径,补强 Tiling/Kernel 的整数范围、地址计算和大 Shape 边界处理。 - **NormalizeBBox**:补强 shape、属性、空 axes、跨 tile 和边界访问校验,并完善 TensorFlow parser 回归。 - **SGD**:补强默认属性及 weight_decay 合法性校验,包含 NaN 拒收回归。 - 更新四个算子的 Kernel/GEIR TestSpec Golden,并分别提供 Torch、TensorFlow 独立参考实现,供 TTK 进行第三方精度比对。 - 四个算子均配置为 ACLNNTYPE aclnn_exclude,不提供 aclnn 单算子接口,也没有 Torch/TorchAir e2e 绑定;本次没有新增或宣称不存在的 aclnn/e2e 通路。真实调用通路为 GE 图模式,NormalizeBBox 另支持 TensorFlow 图导入。 - 补充 Host UT、Graph Infer UT 和 NormalizeBBox TensorFlow Plugin UT;更新四个 README 的接口约束、调用方式及产品差异说明。 ## 关联的Issue 关联 Issue #5872:https://gitcode.com/cann/ops-nn/issues/5872 ## 测试 - 本地定向 CI(提交 4887b775f,工作目录 CANN 9.2.0,构建并发 -j8):pre-commit 与 Markdown 链接检查 PASS。 - Ascend 950:package、Host UT、API UT、Graph UT、Kernel UT 全部 PASS;Host UT 144/144。 - Ascend 910B:package、Host UT、API UT、Graph UT、Kernel UT 全部 PASS;Host UT 112/112。INInferV2 arch35 tiling UT 未被 A2 收集,通用 infer-shape UT 保持执行。 - 本轮本地 CI 峰值 cgroup 内存约 17.8 GiB,30 GiB 保护未触发。 - 使用工作目录 ops-test-kit 的 add_ops_onto_master 分支验证;小用例 --pc<=2,大 Shape --pc=1。 - **INInferV2**:Torch/TF 独立三方各 100/100 PASS;既有泛化 900/900、rank 6~8 专项 12/12、optional output Kernel 6/6、GEIR 中间空洞 2/2、JIT 4/4、性能 150/150 PASS。 - **InTrainingReduceV2**:泛化 851/851、支持域性能 134/134、修复后 GEIR 100/100、最终 Kernel 小 Shape 2/2、大 Shape 1/1 PASS。原始 Torch/TF cross_check 中 11 项仅触发 RMSE ratio L1,随后按正式 stat_rel_err 标准复核,36/36 用例、72/72 个 NPU 输出 PASS。 - **NormalizeBBox**:Torch/TF 独立三方各 34/34、特殊值/缺省/空轴 15/15、非大 Shape 泛化 332/332、性能 134/134、跨 tile 2/2、JIT 1/1 PASS。 - **SGD**:Torch/TF 独立三方各 50/50、基础与扩展泛化合计 800/800、已完成性能 144/144 PASS;剩余 56 条为待补充的 A100 性能用例,不计作当前功能或 Golden 失败。 - CodeCheck 最终复扫:68 PASS、0 FAIL、4 SUSPICIOUS;4 项均为非阻断性能建议。 - 最终代码检视与设计一致性检查:8/8 PASS。 ## 文档更新 更新四个算子的 README,按仓库规范保留真实接口、约束、调用方式和多产品差异说明,不增加不存在的 aclnn 或 e2e 接口说明。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:测试与 Golden 加固 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10477 | 1 个月前 | |
feat: 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8821 merge InferShape into master feat: 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5250 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:Unknown Shape/ Unknown Rank迁移适配 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8821 | 1 个月前 | |
feat: 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8821 merge InferShape into master feat: 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5250 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:Unknown Shape/ Unknown Rank迁移适配 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8821 | 1 个月前 | |
feat: 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8821 merge InferShape into master feat: 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 18个迁移算子适配unknown shape/rank InferShape并补UT及入口日志 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5250 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:Unknown Shape/ Unknown Rank迁移适配 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8821 | 1 个月前 | |
sparseApply系列算子clean code整改 Co-authored-by: lixin433<lixin433@huawei.com> # message auto-generated for no-merge-commit merge: !10009 merge master into master sparseApply系列算子clean code整改 Created-by: lixin433 Commit-by: lixin433 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> sparseApply系列算子clean code整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000-->[#5659](https://gitcode.com/cann/ops-nn/issues/5659) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ut、st通过,冒烟通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10009 | 1 个月前 | |
sparseApply系列算子clean code整改 Co-authored-by: lixin433<lixin433@huawei.com> # message auto-generated for no-merge-commit merge: !10009 merge master into master sparseApply系列算子clean code整改 Created-by: lixin433 Commit-by: lixin433 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> sparseApply系列算子clean code整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000-->[#5659](https://gitcode.com/cann/ops-nn/issues/5659) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ut、st通过,冒烟通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10009 | 1 个月前 | |
sparseApply系列算子clean code整改 Co-authored-by: lixin433<lixin433@huawei.com> # message auto-generated for no-merge-commit merge: !10009 merge master into master sparseApply系列算子clean code整改 Created-by: lixin433 Commit-by: lixin433 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> sparseApply系列算子clean code整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000-->[#5659](https://gitcode.com/cann/ops-nn/issues/5659) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ut、st通过,冒烟通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10009 | 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 | 10 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 10 个月前 |