本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
修改编译任务 Co-authored-by: chenyajie<chenyajie6@huawei.com> # message auto-generated for no-merge-commit merge: !7462 merge master into master 修改编译任务 Created-by: yajie_caroline Commit-by: chenyajie Merged-by: cann-robot Description: ## 描述 修改代码话编译任务始终跳过不跑的bug ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4069 ## 测试 在测试环境中验证修改过后可以正常识别条件跑编译 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7462 | 3 个月前 | |
fix(softsign): tiling 新增 9 维 tensor 拦截校验 ref #4645 Co-authored-by: ForestFrame<24011210883@stu.xidian.edu.cn> # message auto-generated for no-merge-commit merge: !8417 merge feat/softsign-arch35 into master fix(softsign): tiling 新增 9 维 tensor 拦截校验 ref #4645 Created-by: ForestFrame Commit-by: ForestFrame Merged-by: cann-robot Description: ## 描述 Softsign 算子 arch35 tiling 函数新增输入 rank 校验,拦截 9 维及以上 tensor。 修复 Issue #4645:[Bug-Report] Softsign 算子 tiling 未拦截 9 维及以上 tensor ### 改动内容 在 SoftsignTilingFunc 中新增 rank 校验逻辑: - rank > 8(9 维及以上):返回 GRAPH_FAILED 并报错,拦截非法输入 - 标量(rank==0)与空 tensor(ShapeSize==0):统一 SetBlockDim(1) + return SUCCESS 放行,与 relu6/selu/hard_shrink 等 15 个同类 arch35 elementwise 算子一致(同类算子用 EnsureNotScalar 将标量转为 {1},空 tensor 用 SetBlockDim(1) 放行,本质都是 ShapeSize==0 放行) - unknownRank(-2):放行,支持动态 shape ### 改动文件 仅 1 个文件:activation/softsign/op_host/arch35/softsign_tiling_arch35.cpp(+18/-5) ## 关联的Issue #4645: [Bug-Report|缺陷反馈]: Softsign 算子 tiling 未拦截 9 维及以上 tensor ## 测试 ### 9 维拦截 + 空 tensor 放行验证 构造对照用例在 Ascend950 上跑 TTK aclnn 验证: | 用例 | 输入 | 结果 | 说明 | |---|---|---|---| | softsign_aclnn_rank9_float32 | rank=9, shape=(1,1,1,1,1,1,1,1,1) | FAIL | tiling 函数返回失败,9 维拦截生效 | | softsign_aclnn_rank8_float32 | rank=8, shape=(1,1,1,1,1,1,1,1) | PASS | 正常计算通过,未误拦 | | softsign_aclnn_empty_float32 | shape=(0,) 空tensor | PASS | 空tensor放行,精度100% | 9 维失败原因(TTK 日志): [ERROR] errno[476409922] OpName:[Softsign_0] Failed to execute operator Softsign_0. Reason: Failed to execute tiling function. ### 同类算子处理一致性 调研 arch35 activation 目录下 15 个同类 elementwise 算子(relu6/selu/hard_shrink/hard_sigmoid/celu/threshold 等),标量与空 tensor 均放行(EnsureNotScalar 转 {1} 或 SetBlockDim(1)),本改动与该约定一致。 ### 无退化确认 - 8 维(合法上限)正常 PASS,未误拦 - 编译通过(build.sh --pkg --ops=softsign --soc=ascend950) - TTK aclnn 通路白盒 51 条用例全量 PASS ## 文档更新 无 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!8417 | 2 个月前 | |
kernel ut 增加防卡死超时,快速模式,覆盖率控制 Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !8187 merge master into master kernel ut 增加防卡死超时,快速模式,覆盖率控制 Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 提交总结:kernel ut 增加防卡死超时、快速模式、覆盖率控制 **修改背景**:Kernel UT 存在单测卡死导致整套测试挂起、运行慢(addr2line 符号化耗时)、gcov 覆盖率始终链接带来不必要开销等问题。 **修改方案**: 1. **防卡死超时**:新增 run_kernel_ut.sh,按 case 逐个执行并用 timeout 限时(默认 120s,--ut_timeout 可配),超时即标记失败并继续,避免单点卡死阻塞全流程。 2. **快速模式**:新增 --ut_mode=fast/debug。fast 模式关闭符号化(注入 fake addr2line 跳过慢解析)、改用 -g0 -O2,用于快速验证;debug 模式保留 -g 与符号化,用于开发调试。 3. **覆盖率控制**:将 ut.cmake 中 gcov 的无条件链接改为 $<$<BOOL:${ENABLE_COVERAGE}>:gcov> 条件链接,仅在开启覆盖率时引入; 4. **修复失败的kernel ut**:TensorFlow 依赖替换为md_dtypes, 修复部分block 越界,缺少SetKernelMode 设置导致核获取错误等问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4606 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 通过kernel ut 测试,bash build.sh -u --opkernel --ut_mode=fast --ut_timeout=60 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8187 | 2 个月前 | |
refactor: 迁移 AnchorResponseFlags 算子到 ops-cv 仓 Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> # message auto-generated for no-merge-commit merge: !8194 merge migrate-anchor-response-flags-to-cv into master refactor: 迁移 AnchorResponseFlags 算子到 ops-cv 仓 Created-by: yu_qinfei Commit-by: yu_qinfei Merged-by: cann-robot Description: ## 描述 AnchorResponseFlags算子实现在cv仓, 需将onnx插件同步迁移至cv仓 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4607 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8194 | 2 个月前 | |
nn仓rnn 、vfusion、control文件夹打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8342 merge master into master nn仓rnn 、vfusion、control文件夹打标签 Created-by: yanglu-1 Commit-by: yanglu-1;y60124828 Merged-by: cann-robot Description: ## 描述 nn仓rnn 、vfusion、control文件夹打标签 ## 关联的Issue 例如:关联Issue [#4600](https://gitcode.com/cann/ops-nn/issues/4600) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8342 | 2 个月前 | |
ExtendConvTranspose算子small kernel模板支持A16W8类型 Co-authored-by: sunlesheng<sunlesheng@huawei.com> # message auto-generated for no-merge-commit merge: !8057 merge small_kernel_a16w8 into master ExtendConvTranspose算子small kernel模板支持A16W8类型 Created-by: sunlesheng Commit-by: sunlesheng Merged-by: cann-robot Description: ## 描述 当前ExtendConvTranspose算子A16W8场景下均使用内积模板,大量case存在scalar bound,因此通过small kernel模板(scalar很少)优化,提升性能 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4563 ## 测试 RDV、compile、自验通过 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8057 | 2 个月前 | |
feat: Add FusedBiasLeakyRelu Operate Co-authored-by: Miao_Haifeng<miaohaifeng@huawei.com> # message auto-generated for no-merge-commit merge: !7631 merge mhf_FusedBiasLeakyRelu_0717 into master feat: Add FusedBiasLeakyRelu Operate Created-by: Almost_CANN Commit-by: Miao_Haifeng Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> #### 项目背景 CANNBot长尾算子项目,将FusedBiasLeakyRule算子从experimental迁移到built-in。FusedBiasLeakyRelu(融合偏置泄漏整流线性单元)是一个元素级融合算子,将 **偏置加法(bias_add)+ LeakyReLU 激活 + 方差缩放(scale)** 三段计算融合为单次 kernel 调用,能有效减少访存,提升执行效率。 算子原型已跟SE(苏跃明)和MDE(王星)对齐,并经SE(汤磊)评审。 #### 功能说明 FusedBiasLeakyRelu(融合偏置泄漏整流线性单元)是一个元素级融合算子,将 **偏置加法(bias_add)+ LeakyReLU 激活 + 方差缩放(scale)** 三段计算融合为单次 kernel 调用 - 接口功能:对输入张量x加上偏置bias后,应用带缩放因子的LeakyReLU激活函数。 - 计算公式: $$ FusedBiasLeakyRelu(x, bias) = \begin{cases} (x + bias) \ast scale, \quad x + bias \geq 0\\ (x + bias) \ast negative\_slope \ast scale, \quad x + bias < 0 \end{cases} $$ ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4625 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> TTK、冒烟、三方 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 已更新op_list.md文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7631 | 2 个月前 | |
fix TorchNPU Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !7243 merge master into master fix TorchNPU Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 ① torch_npu名称合一TorchNPU ②《acl API》手册更名修改 ③ link修改commerical为community ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3951 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7243 | 3 个月前 | |
feat(activation): 新增 ReluGradV4 算子 Ascend C 实现 Co-authored-by: gcw_r0GcmdT1<barristanzi666@gmail.com> # message auto-generated for no-merge-commit merge: !7869 merge relugradv4-merge into master feat(activation): 新增 ReluGradV4 算子 Ascend C 实现 Created-by: gcw_r0GcmdT1 Commit-by: gcw_r0GcmdT1 Merged-by: cann-robot Description: 关联 Issue: #4033 ## 变更内容 新增算子 **ReluGradV4**(ReluGradV2 在 Atlas A2/A3 的 Ascend C 实现),合入 experimental/activation/relu_grad_v4。 语义 backprops = mask ? gradients : 0;gradients 支持 float32/float16/bfloat16/int8/int32/uint8,mask 固定 uint8,对外 API aclnnReluGradV4。 ## 说明 本 PR 由原 #7394 按评审意见调整而来(原为 relu_grad_v3,因仓库已存在 V3 目录,改为 V4)。已处理 @fullt 的检视意见: - 库上已有 V3 → 全量重命名 ReluGradV3→ReluGradV4、aclnnThresholdBackward→aclnnReluGradV4、目录/文件/文档同步。 - GetSocVersion() 弃用 → 改用 GetCurNpuArch() 判断架构。 - CheckDtypeValid 中 self 冗余的 supportList 校验删除,仅保留 OP_CHECK_DTYPE_NOT_MATCH(self, DT_UINT8)。 - ComputeCorePlan 4 处 return 前补 OP_LOGE。 - README 增加 ## 贡献说明 表格。 - 样例改用标准 bash build.sh --run_example relu_grad_v4 ...,删除自定义 run.sh。 ## 数据类型 float32 / float16 / bfloat16 / int8 / int32 / uint8(mask 固定 uint8) 算子已通过验收(ReluGradV2 任务第一名)。 See merge request: cann/ops-nn!7869 | 2 个月前 | |
kernel ut 增加防卡死超时,快速模式,覆盖率控制 Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !8187 merge master into master kernel ut 增加防卡死超时,快速模式,覆盖率控制 Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 提交总结:kernel ut 增加防卡死超时、快速模式、覆盖率控制 **修改背景**:Kernel UT 存在单测卡死导致整套测试挂起、运行慢(addr2line 符号化耗时)、gcov 覆盖率始终链接带来不必要开销等问题。 **修改方案**: 1. **防卡死超时**:新增 run_kernel_ut.sh,按 case 逐个执行并用 timeout 限时(默认 120s,--ut_timeout 可配),超时即标记失败并继续,避免单点卡死阻塞全流程。 2. **快速模式**:新增 --ut_mode=fast/debug。fast 模式关闭符号化(注入 fake addr2line 跳过慢解析)、改用 -g0 -O2,用于快速验证;debug 模式保留 -g 与符号化,用于开发调试。 3. **覆盖率控制**:将 ut.cmake 中 gcov 的无条件链接改为 $<$<BOOL:${ENABLE_COVERAGE}>:gcov> 条件链接,仅在开启覆盖率时引入; 4. **修复失败的kernel ut**:TensorFlow 依赖替换为md_dtypes, 修复部分block 越界,缺少SetKernelMode 设置导致核获取错误等问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4606 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 通过kernel ut 测试,bash build.sh -u --opkernel --ut_mode=fast --ut_timeout=60 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8187 | 2 个月前 | |
fix schedule mode & embeddingHash Doc & groupNormSilu codecheck Co-authored-by: xieshengwei1024<xieshengwei3@huawei.com> # message auto-generated for no-merge-commit merge: !7076 merge master into master fix schedule mode & embeddingHash Doc & groupNormSilu codecheck Created-by: xieshengwei1024 Commit-by: xieshengwei1024 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1.系列SyncAll算子添加scheduleMode 2.embeddingHash算子文档错误修改 3.groupNormSilu修改超大圈复杂度问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联issue3858 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 已进行本地编译测试、ut测试及上板aclnn测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了embeddingHash系列算子的readme文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7076 | 3 个月前 | |
refactor: rename APIs in ops-nn batch5 (4 ops) | 2 个月前 | |
SmoothL1Loss/SigmoidCrossEntropyWithLogitsGrad: 补充 GEIR example、Tiling 异常校验 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !8278 merge master into master SmoothL1Loss/SigmoidCrossEntropyWithLogitsGrad: 补充 GEIR example、Tiling 异常校验 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 本次针对新上库算子补充 GEIR example、Tiling 异常校验,算子分别为SmoothL1Loss/SigmoidCrossEntropyWithLogitsGrad ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4583 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8278 | 2 个月前 | |
修改aclnn中的乱码 Co-authored-by: zhouwenfang<zhouwenfang3@h-partners.com> # message auto-generated for no-merge-commit merge: !8373 merge master into master 修改aclnn中的乱码 Created-by: zhouwenfang Commit-by: zhouwenfang Merged-by: cann-robot Description: ## 描述 文档中存在乱码 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4632 ## 测试 NA ## 文档更新 activation/celu_v2/docs/aclnnCelu&aclnnInplaceCelu.md activation/elu_grad_v2/docs/aclnnEluBackward.md matmul/quant_matmul_dequant/docs/aclnnQuantMatmulDequant.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8373 | 2 个月前 | |
refactor: rename APIs in ops-nn batch5 (4 ops) | 2 个月前 | |
修复inplace_apply_keras_momentum文档 Co-authored-by: Davon14272<liuwenda4@huawei.com> # message auto-generated for no-merge-commit merge: !8375 merge docfix into master 修复inplace_apply_keras_momentum文档 Created-by: Davon14272 Commit-by: Davon14272 Merged-by: cann-robot Description: ## 描述 修复inplace_apply_keras_momentum文档关于a2,a3的描述,将其改为不支持 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#4629](https://gitcode.com/cann/ops-nn/issues/4629) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8375 | 2 个月前 | |
修改pooling/adaptive_max_pool3d/op_host/adaptiva_max_pool3d_infershape.cpp 为adaptive_max_pool3d_infershape.cpp,以及classify_rule.yaml中对应的adaptiva_max_pool3d_infershape.cpp对应的adaptiva修改为adaptive Co-authored-by: sunny_112<3334563722@qq.com> # message auto-generated for no-merge-commit merge: !7939 merge master into master 修改pooling/adaptive_max_pool3d/op_host/adaptiva_max_pool3d_infershape.cpp 为adaptive_max_pool3d_infershape.cpp,以及classify_rule.yaml中对应的adaptiva_max_pool3d_infershape.cpp对应的adaptiva修改为adaptive Created-by: sunny_112 Commit-by: sunny_112 Merged-by: cann-robot Description: ## 描述 修改pooling/adaptive_max_pool3d/op_host/adaptiva_max_pool3d_infershape.cpp 为adaptive_max_pool3d_infershape.cpp,以及classify_rule.yaml中对应的adaptiva_max_pool3d_infershape.cpp修改为adaptive_max_pool3d_infershape.cpp ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3909 ## 测试 只是改动了adaptive_max_pool3d_infershape.cpp文件名的拼写错误,无需测试 ## 类型标签 - [ ] 其他,请描述: 修改了adaptiva_max_pool3d_infershape.cp为adaptive_max_pool3d_infershape.cpp ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7939 | 2 个月前 | |
refactor: rename APIs in ops-nn batch5 (4 ops) | 2 个月前 | |
nn仓rnn 、vfusion、control文件夹打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8342 merge master into master nn仓rnn 、vfusion、control文件夹打标签 Created-by: yanglu-1 Commit-by: yanglu-1;y60124828 Merged-by: cann-robot Description: ## 描述 nn仓rnn 、vfusion、control文件夹打标签 ## 关联的Issue 例如:关联Issue [#4600](https://gitcode.com/cann/ops-nn/issues/4600) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8342 | 2 个月前 | |
qbmm golden with ttk Co-authored-by: he_kan<hekan4@huawei.com> # message auto-generated for no-merge-commit merge: !8267 merge wqbmm into master qbmm golden with ttk Created-by: he_kan Commit-by: he_kan Merged-by: cann-robot Description: ## 描述 matmul量化算子支持ops-test-kit的aclnn和e2e(torchapi)测试 新增golden和用例: 1. quant_batch_matmul_v3: 1.1 重新优化kernel算子golden 1.2 新增aclnn golden文件 1.3 新增torch api golden文件 2. quant_batch_matmul_v4: 2.1 重新优化kernel算子golden 2.2 新增aclnn golden文件 3. weight_quant_batch_matmul_v2: 3.1 重新优化kernel算子golden 3.2 新增aclnn golden文件 3.3 新增torch api golden文件 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。-->  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8267 | 2 个月前 | |
kernel ut 增加防卡死超时,快速模式,覆盖率控制 Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !8187 merge master into master kernel ut 增加防卡死超时,快速模式,覆盖率控制 Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 提交总结:kernel ut 增加防卡死超时、快速模式、覆盖率控制 **修改背景**:Kernel UT 存在单测卡死导致整套测试挂起、运行慢(addr2line 符号化耗时)、gcov 覆盖率始终链接带来不必要开销等问题。 **修改方案**: 1. **防卡死超时**:新增 run_kernel_ut.sh,按 case 逐个执行并用 timeout 限时(默认 120s,--ut_timeout 可配),超时即标记失败并继续,避免单点卡死阻塞全流程。 2. **快速模式**:新增 --ut_mode=fast/debug。fast 模式关闭符号化(注入 fake addr2line 跳过慢解析)、改用 -g0 -O2,用于快速验证;debug 模式保留 -g 与符号化,用于开发调试。 3. **覆盖率控制**:将 ut.cmake 中 gcov 的无条件链接改为 $<$<BOOL:${ENABLE_COVERAGE}>:gcov> 条件链接,仅在开启覆盖率时引入; 4. **修复失败的kernel ut**:TensorFlow 依赖替换为md_dtypes, 修复部分block 越界,缺少SetKernelMode 设置导致核获取错误等问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4606 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 通过kernel ut 测试,bash build.sh -u --opkernel --ut_mode=fast --ut_timeout=60 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8187 | 2 个月前 | |
torch 资料补充 Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !8266 merge torch into master torch 资料补充 Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 此 PR 主要围绕 torch 扩展的构建与算子组织进行重构:新增实验性构建模式,通过 ENABLE_EXPERIMENTAL 环境变量控制仅构建 experimental 目录下的算子;同时移除了 aclnn_common.h 中对 libopapi.so 的动态加载逻辑,简化了算子函数地址获取流程。 主要改动 实验性构建模式支持:build.sh 中新增对 ENABLE_EXPERIMENTAL 环境变量的检查,当其为 TRUE 时设置 TORCH_EXTENSION_EXPERIMENTAL;setup.py 中依据该变量决定是仅构建 experimental 目录下的算子,还是排除该目录。 移除 GetOpApiLibName 与 libopapi.so 依赖:aclnn_common.h 中删除了 GetOpApiLibName() 函数定义,GetOpApiFuncAddr 改为直接返回 nullptr,不再尝试从 libopapi.so 加载算子函数。 错误信息更新:aclnn_common.h 中的算子加载失败提示从引用已删除的 GetOpApiLibName() 改为引用 GetCustOpApiLibName() 和 GetNnOpApiLibName()。 ## 关联的Issue [#4640](https://gitcode.com/cann/ops-nn/issues/4640) ## 测试 验证实验型算子正常 ## 文档更新 torch_extension/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8266 | 2 个月前 | |
nn仓rnn 、vfusion、control文件夹打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8342 merge master into master nn仓rnn 、vfusion、control文件夹打标签 Created-by: yanglu-1 Commit-by: yanglu-1;y60124828 Merged-by: cann-robot Description: ## 描述 nn仓rnn 、vfusion、control文件夹打标签 ## 关联的Issue 例如:关联Issue [#4600](https://gitcode.com/cann/ops-nn/issues/4600) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8342 | 2 个月前 | |
修改matmul 算子atoll 异常反馈判断 Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !7083 merge master into master 修改matmul 算子atoll 异常反馈判断 Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改matmul 算子atoll 异常反馈判断,异常时返回默认值 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3882 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7083 | 3 个月前 | |
index kernel ut Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !5501 merge master into master index kernel ut Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> Kernel UT 中存在大量分散的测试数据准备代码,使用 system() 调用执行 shell 命令: 重复样板代码多:至少 131 个文件包含 system() 调用 依赖 GNU/Linux 工具:cp、chmod、rm、get_current_dir_name(非跨平台) 错误定位困难:system() 返回码粗糙,无法区分路径错误、权限问题、Python缺失等 维护成本高:同一套逻辑散落在大量算子测试中 修改方案 统一测试数据生命周期管理:拷贝、清理、生成、比对 改善报错体验:使用项目标准日志宏 OP_LOGI/OP_LOGE,区分路径错误、脚本执行失败等 降低贡献门槛:开发者只需声明数据目录和参数 本次修改对index 目录下的部分算子 迁移过程中 代码格式做整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2337 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5501 | 5 个月前 | |
【社区任务】ForeachMulList算子支持INT16/INT8/UINT8实现贡献 Co-authored-by: liujiacheng_2026<laneljc@qq.com> # message auto-generated for no-merge-commit merge: !4940 merge task/foreach-mul-list into master 【社区任务】ForeachMulList算子支持INT16/INT8/UINT8实现贡献 Created-by: liujiacheng_2026 Commit-by: liujiacheng_2026 Merged-by: cann-robot Description: ## 描述 实现了 Ascend C ForeachMulList 算子对 DT_INT16、DT_INT8、DT_UINT8 数据类型的支持。 本次修改基于现有 foreach/foreach_mul_list 实现扩展,不改变 aclnn 接口和原有数据类型计算路径。新增小整数计算分支,将 int16/int8/uint8 输入搬入 UB 后转换为中间类型完成逐元素乘法,再转换回输出类型。 主要修改包括: - 扩展 host/proto 侧支持的数据类型。 - 补充 ascend910b、ascend910_93、ascend950 的 binary 配置。 - 新增 DT_INT16、DT_INT8、DT_UINT8 kernel 分支。 - 补充小整数类型的 UT、tiling 测试、aclnn 调用样例。 - 更新 README 和 aclnn 接口文档中的数据类型支持说明。 ## 关联的Issue 关联Issue: [[Requirement|需求建议]: 【社区任务】ForeachMulList算子支持INT16/INT8/UINT8实现贡献](https://gitcode.com/cann/ops-nn/issues/2737) ## 测试 采用 aclnn 调用测试,并补充 UT 覆盖新增数据类型。 已覆盖场景: - DT_INT16 TensorList 逐元素乘法 - DT_INT8 TensorList 逐元素乘法 - DT_UINT8 TensorList 逐元素乘法 - 多 Tensor 输入场景 - 非 32 字节对齐 shape 场景 - 原有 float16、float32、int32、bfloat16 回归场景 - host 侧 tiling key 校验 ## 文档更新 更新 foreach/foreach_mul_list/README.md 和 foreach/foreach_mul_list/docs/aclnnForeachMulList.md,补充 DT_INT16、DT_INT8、DT_UINT8 支持说明。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4940 | 2 个月前 | |
fix: Modify the AIDD docs issue Co-authored-by: zwj223<zhangwenjing55@h-partners.com> # message auto-generated for no-merge-commit merge: !8149 merge master into master fix: Modify the AIDD docs issue Created-by: zwj223 Commit-by: zwj223 Merged-by: cann-robot Description: ## 描述 修改AIDD扫描的核心资料问题 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#3939](https://gitcode.com/cann/ops-nn/issues/3939) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8149 | 3 个月前 | |
kernel ut 增加防卡死超时,快速模式,覆盖率控制 Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !8187 merge master into master kernel ut 增加防卡死超时,快速模式,覆盖率控制 Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 提交总结:kernel ut 增加防卡死超时、快速模式、覆盖率控制 **修改背景**:Kernel UT 存在单测卡死导致整套测试挂起、运行慢(addr2line 符号化耗时)、gcov 覆盖率始终链接带来不必要开销等问题。 **修改方案**: 1. **防卡死超时**:新增 run_kernel_ut.sh,按 case 逐个执行并用 timeout 限时(默认 120s,--ut_timeout 可配),超时即标记失败并继续,避免单点卡死阻塞全流程。 2. **快速模式**:新增 --ut_mode=fast/debug。fast 模式关闭符号化(注入 fake addr2line 跳过慢解析)、改用 -g0 -O2,用于快速验证;debug 模式保留 -g 与符号化,用于开发调试。 3. **覆盖率控制**:将 ut.cmake 中 gcov 的无条件链接改为 $<$<BOOL:${ENABLE_COVERAGE}>:gcov> 条件链接,仅在开启覆盖率时引入; 4. **修复失败的kernel ut**:TensorFlow 依赖替换为md_dtypes, 修复部分block 越界,缺少SetKernelMode 设置导致核获取错误等问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4606 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 通过kernel ut 测试,bash build.sh -u --opkernel --ut_mode=fast --ut_timeout=60 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8187 | 2 个月前 | |
产品文档中png文件改为英文名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !8300 merge master into master 产品文档中png文件改为英文名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 产品文档中的png图片名由中文改为英文 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#4260](https://gitcode.com/cann/ops-nn/issues/4260) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> png和相关的link md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8300 | 2 个月前 | |
init | 1 年前 | |
add hard_sigmoid for ascend950 Co-authored-by: tianyu52<tianyu52@huawei.com> # message auto-generated for no-merge-commit merge: !7874 merge master into master add hard_sigmoid for ascend950 Created-by: tianyu52 Commit-by: tianyu52 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> add hard_sigmoid for ascend950 hard_sigmoid适配950 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> UT/ST pass ; ops-test-kit 测试900+ 用例pass ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> activation/hard_sigmoid/README.md activation/hard_sigmoid/docs/aclnnHardsigmoid&aclnnInplaceHardsigmoid.md docs/zh/op_api_list.md docs/zh/op_api_list.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7874 | 3 个月前 | |
cannsim改名为npusim Co-authored-by: liangbinglong<liangbinglong@huawei.com> # message auto-generated for no-merge-commit merge: !8349 merge master into master cannsim改名为npusim Created-by: liangbinglong Commit-by: liangbinglong Merged-by: cann-robot Description: ## 描述 经TSC评审,cannsim工具正式更名为npusim,相关命令行、资料同步刷新,cannsim作为别名兼容一段时间,需要尽快切换 ## 关联的Issue NA ## 测试 使用最新链接版本测试,相关命令行已经全部更名为npusim ## 文档更新 更新doc下面的调优部分文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8349 | 2 个月前 | |
fix: Modify the AIDD docs issue Co-authored-by: zwj223<zhangwenjing55@h-partners.com> # message auto-generated for no-merge-commit merge: !8149 merge master into master fix: Modify the AIDD docs issue Created-by: zwj223 Commit-by: zwj223 Merged-by: cann-robot Description: ## 描述 修改AIDD扫描的核心资料问题 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#3939](https://gitcode.com/cann/ops-nn/issues/3939) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8149 | 3 个月前 | |
fix Third_Party_Open_Source_Software_List.yaml Co-authored-by: liuyufan0725<liuyufan9@huawei.com> # message auto-generated for no-merge-commit merge: !1879 merge fix_yaml into master fix Third_Party_Open_Source_Software_List.yaml Created-by: liuyufan0725 Commit-by: liuyufan0725 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 更新三方依赖清单Third_Party_Open_Source_Software_List.yaml 1、增加protobuf 2、将nlohmann/json修改为json ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#1042](https://gitcode.com/cann/ops-nn/issues/1042) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 不涉及 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了Third_Party_Open_Source_Software_List.yaml ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!1879 | 8 个月前 | |
【描 述】 eigen update to 5.0.0 Co-authored-by: j00427146<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !1152 merge master into master 【描 述】 eigen update to 5.0.0 Created-by: jialimin1 Commit-by: j00427146 Merged-by: cann-robot Description: ## 描述 现开源软件eigen 3.4.0 EOM,Eigen 从3.4.0版本升级到5.0.0,解决生命周期问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/975 https://gitcode.com/cann/ops-nn/issues/389 ## 测试   ## 文档更新 SECURITY.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:Update Eigen to 5.0.0 See merge request: cann/ops-nn!1152 | 8 个月前 | |
build参数补全 Co-authored-by: 18811725231<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !8358 merge ziliao into master build参数补全 Created-by: yang-di52 Commit-by: 18811725231 Merged-by: cann-robot Description: ## 描述 变更摘要 本次 PR 主要对 build.sh 中 --no_force 参数的帮助文本进行了修正,使其描述更准确地反映该参数的实际行为;同时同步更新了对应的中文文档 docs/zh/install/build.md。 主要改动 build.sh 中 --no_force 帮助文本修正:将原有的 "Don't force dependency installation" 改为 "Do not force building the kernels of dependent operators; only the specified operators are compiled.",明确了该参数的实际作用是跳过依赖算子的 kernel 编译、仅编译指定算子,而非简单的"不强制依赖安装"。 docs/zh/install/build.md 文档同步更新:根据 build.sh 帮助文本的变更,对中文安装文档进行了相应的内容更新,保持文档与脚本描述一致。 ## 关联的Issue [#4358](https://gitcode.com/cann/ops-nn/issues/4358) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 docs/zh/install/build.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8358 | 2 个月前 | |
修改pooling/adaptive_max_pool3d/op_host/adaptiva_max_pool3d_infershape.cpp 为adaptive_max_pool3d_infershape.cpp,以及classify_rule.yaml中对应的adaptiva_max_pool3d_infershape.cpp对应的adaptiva修改为adaptive Co-authored-by: sunny_112<3334563722@qq.com> # message auto-generated for no-merge-commit merge: !7939 merge master into master 修改pooling/adaptive_max_pool3d/op_host/adaptiva_max_pool3d_infershape.cpp 为adaptive_max_pool3d_infershape.cpp,以及classify_rule.yaml中对应的adaptiva_max_pool3d_infershape.cpp对应的adaptiva修改为adaptive Created-by: sunny_112 Commit-by: sunny_112 Merged-by: cann-robot Description: ## 描述 修改pooling/adaptive_max_pool3d/op_host/adaptiva_max_pool3d_infershape.cpp 为adaptive_max_pool3d_infershape.cpp,以及classify_rule.yaml中对应的adaptiva_max_pool3d_infershape.cpp修改为adaptive_max_pool3d_infershape.cpp ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3909 ## 测试 只是改动了adaptive_max_pool3d_infershape.cpp文件名的拼写错误,无需测试 ## 类型标签 - [ ] 其他,请描述: 修改了adaptiva_max_pool3d_infershape.cp为adaptive_max_pool3d_infershape.cpp ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7939 | 2 个月前 | |
fix: Modify the AIDD docs issue Co-authored-by: zwj223<zhangwenjing55@h-partners.com> # message auto-generated for no-merge-commit merge: !8149 merge master into master fix: Modify the AIDD docs issue Created-by: zwj223 Commit-by: zwj223 Merged-by: cann-robot Description: ## 描述 修改AIDD扫描的核心资料问题 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#3939](https://gitcode.com/cann/ops-nn/issues/3939) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8149 | 3 个月前 | |
调整nn仓第三方依赖 Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !7845 merge pr_6933 into master 调整nn仓第三方依赖 Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 1. 文档声称 install_deps.sh 可一键安装所有列出的基础依赖("上述依赖可通过项目脚本一键安装"),但实际脚本仅安装了 GCC、CMake、pigz、dos2unix、patch,未安装 googletest(文档明确列为基础依赖项之一),开发者需手动下载源码、编译并安装 googletest,与文档"一键安装"的描述不符 2. python requirements多两个不需要的依赖 ### 主要修改 为install_deps.sh 增加了安装gtest的功能 删除requirements中多余的两个依赖 ## 关联的Issue [#4256](https://gitcode.com/cann/ops-nn/issues/4256) [#4154](https://gitcode.com/cann/ops-nn/issues/4154) ## 测试  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7845 | 3 个月前 | |
调整nn仓第三方依赖 Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !7845 merge pr_6933 into master 调整nn仓第三方依赖 Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 1. 文档声称 install_deps.sh 可一键安装所有列出的基础依赖("上述依赖可通过项目脚本一键安装"),但实际脚本仅安装了 GCC、CMake、pigz、dos2unix、patch,未安装 googletest(文档明确列为基础依赖项之一),开发者需手动下载源码、编译并安装 googletest,与文档"一键安装"的描述不符 2. python requirements多两个不需要的依赖 ### 主要修改 为install_deps.sh 增加了安装gtest的功能 删除requirements中多余的两个依赖 ## 关联的Issue [#4256](https://gitcode.com/cann/ops-nn/issues/4256) [#4154](https://gitcode.com/cann/ops-nn/issues/4154) ## 测试  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7845 | 3 个月前 | |
Remove the dependency asc-tool Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !5220 merge eng into master Remove the dependency asc-tool Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 Remove the dependency asc-tool ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 工程编译验证 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5220 | 5 个月前 |
ops-nn
🔥Latest News
- [2026/05] 优化kernel编译配置项,减少simplified_key和ascendc_config配置文件(!3330)。
- [2026/05] 引入ops-tensor,基于分层结构优化Cube类算子,减少偏移量计算和简化指令参数(!5036)。
- [2026/05] 发布生态算子的精度验收标准(!4572)。
- [2026/03] 开源算子支持下一代芯片:Ascend950PR(!450)。
- [2026/03] 新增<<<>>>的算子开发样例(!620)。
- [2026/03] 低bit类算子和融合算子支持更多数据类型:fp8/mxfp8/hifp8/mxfp4等,并支持pertensor/perchannel/pertoken/pergroup/perblock等不同量化和组合方式:全量化融合算子:quant_batch_matmul_v4,伪量化融合算子:weight_quant_batch_matmul_v2。
- [2026/03] 支持SIMD/SIMT新同构编程算子实现:[MapIndex](#660),[ScatterSub](#710)。
- [2026/01] 新增QuickStart,指导新手零基础入门算子项目部署(支持Docker环境)、算子开发和贡献流程。
- [2025/12] 开源算子支持Ascend 950PR/Ascend 950DT/KirinX90,可以通过NPU Simulator仿真工具开发调试;优化指南类文档,聚焦算子开发指南,明确最小交付件和关键示例代码,针对Ascend/samples仓算子提供迁移本项目的指导;新支持稀疏4:2量化matmul算子,针对稀疏矩阵开启硬件加速能力。
- [2025/11] 新支持算子index_fill、masked_scatter、scatter、tf_scatter_add、fused_cross_entropy_loss_with_max_sum。
- [2025/10] 新增experimental目录,完善贡献指南,支持开发者调试并贡献自定义算子。
- [2025/09] ops-nn项目首次上线,开源算子支持Atlas A2/A3系列产品。
🚀概述
ops-nn是CANN(Compute Architecture for Neural Networks)算子库中提供神经网络计算能力的高阶算子库,包括matmul类、activation类等算子,算子库架构图如下:

📌版本配套
本项目源码会跟随CANN软件版本发布,关于CANN软件版本与本项目标签的对应关系请参阅release仓库中的相应版本说明。 请注意,为确保您的源码定制开发顺利进行,请选择配套的CANN版本与Gitcode标签源码,使用master分支可能存在版本不匹配的风险。
🛠️环境准备
环境部署是体验本项目能力的前提,请先完成NPU驱动、CANN包安装等,确保环境正常。
⬇️源码下载
环境准备好后,下载与CANN版本配套的分支源码,通用命令如下,${tag_version}替换为分支标签名。以9.0.0分支源码下载为例:
# 通用命令:git clone -b ${tag_version} https://gitcode.com/cann/ops-nn.git
git clone -b 9.0.0 https://gitcode.com/cann/ops-nn.git
说明:若环境中已存在配套分支源码,可跳过本步骤,例如CANNLab默认已提供最新版本CANN对应的源码。
📖学习教程
💬相关信息
PS:本项目功能和文档正在持续更新和完善中,欢迎您关注最新版本。