| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8571 merge doc into master docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新16个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4785 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8571 | 27 天前 | |
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 | 1 个月前 | |
refactor: rename APIs in ops-nn batch2 (10 ops) Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !8567 merge rename-api-batch2 into master refactor: rename APIs in ops-nn batch2 (10 ops) Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 对 ops-nn 仓 10 个算子的 arch35 kernel 进行 AscendC MicroAPI 重命名整改,涉及以下 API 映射: - __local_mem__ → __ubuf__(地址空间限定符) - DataCopy(load 方向) → LoadAlign - DataCopy(store 方向) → StoreAlign - ReduceSum → Reduce<ReduceType::SUM> - ReduceMax → Reduce<ReduceType::MAX> - Copy → Move - DataCopyGather → Gather - UnalignReg → UnalignRegForStore / UnalignRegForLoad 涉及算子(10 个): - activation/clipped_swiglu - activation/confusion_softmax_grad - index/broadcast_gradient_args - loss/binary_cross_entropy - loss/cross_entropy_loss - loss/cross_entropy_loss_grad - norm/batch_norm_grad - norm/batch_norm_grad_v3 - norm/batch_norm_v3 - quant/dequant_swiglu_quant 共修改 53 个 arch35 kernel 头文件,纯 API 重命名,无逻辑变更。 ## 关联的Issue ## 测试 纯 API 重命名整改,编译验证通过;无新增测试用例。 ## 文档更新 无需更新文档。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!8567 | 27 天前 | |
fix: update bucketize example and avg pool doc Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !7852 merge nnbugfix into master fix: update bucketize example and avg pool doc Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 本次修改包含两处迁仓检视整改: 1. 将 AvgPool1DAvgMatrix 的 proto 输入 format 说明补全为实现实际支持的 NCHW/NHWC/NC1HWC0,避免资料约束描述不完整。 2. 删除 Bucketize GEIR 示例中未使用的 kExpectedBucket 常量,清理冗余代码。 ## 关联的Issue 关联 Issue:https://gitcode.com/cann/ops-nn/issues/4264 ## 测试 - 执行 pre-commit run --files index/bucketize/examples/test_geir_bucketize.cpp pooling/avg_pool1d_avg_matrix/op_graph/avg_pool1d_avg_matrix_proto.h,结果通过。 - 修改 format 表达后,执行 pre-commit run --files pooling/avg_pool1d_avg_matrix/op_graph/avg_pool1d_avg_matrix_proto.h,结果通过。 - 执行 bash build.sh --pkg --ops=bucketize --vendor_name=bucketize -j8,自定义包构建通过。 - 执行 ./build_out/cann-ops-nn-bucketize_linux-aarch64.run --force,自定义包安装通过。 - 设置 ASCEND_CUSTOM_OPP_PATH=/home/developer/Ascend/cann-9.2.0/opp/vendors/bucketize_nn 后,执行 bash build.sh --run_example bucketize graph cust --vendor_name=bucketize,结果通过。 - 日志中确认自定义 AICPU 路径:出现 CUSTAICPUKernel、libnn_aicpu_kernels.so 和 InitAicpuTask node[bucketize]。 ## 文档更新 更新 pooling/avg_pool1d_avg_matrix/op_graph/avg_pool1d_avg_matrix_proto.h 中的 format 说明。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!7852 | 1 个月前 | |
增加bucketize_v2 simt模板 Co-authored-by: lixin433<lixin433@huawei.com> # message auto-generated for no-merge-commit merge: !8321 merge master into master 增加bucketize_v2 simt模板 Created-by: lixin433 Commit-by: lixin433 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 增加bucketize_v2 simt模板 ## 关联的Issue 关联Issue [#4724](https://gitcode.com/cann/ops-nn/issues/4724) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟已经通过,自测通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [] Bug修复 - [] 新特性 - [x] 性能优化 - [] 文档更新 - [] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [] AI辅助编写 See merge request: cann/ops-nn!8321 | 29 天前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
fix(embedding_bag): 修复1D SIMT路径include_last_offset为true时bagSize末尾空bag写入的cache line串扰 Co-authored-by: Apricityh<wangxu359@huawei.com> # message auto-generated for no-merge-commit merge: !8423 merge fix/embedding_bag_simt_cache_line into master fix(embedding_bag): 修复1D SIMT路径include_last_offset为true时bagSize末尾空bag写入的cache line串扰 Created-by: Apricityh Commit-by: Apricityh Merged-by: cann-robot Description: ## 描述 修复embeddingbag算子1D SIMT路径include_last_offset为true时bagSize末尾空bag写入的错误 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4648 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8423 | 30 天前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !8341 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 产品文档中产品名需规范化 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#4260](https://gitcode.com/cann/ops-nn/issues/4260) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 相关readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8341 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
aclnnTopK非法格式校验 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !8289 merge topk4 into master aclnnTopK非法格式校验 Created-by: sunchun Commit-by: sunchun Merged-by: cann-robot Description: ## 描述 aclnnTopK非法格式校验新增A5拦截 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4525 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8289 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 1 个月前 | |
fix test_aclnn_kthvalue example Co-authored-by: 张鑫<zhangxin660@h-partners.com> # message auto-generated for no-merge-commit merge: !8551 merge fix_example into master fix test_aclnn_kthvalue example Created-by: z30075199 Commit-by: 张鑫 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复并编译运行测 test_aclnn_kthvalue的example示例 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4716 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8551 | 29 天前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 1 个月前 | |
indexCheck算子适配950 Co-authored-by: kangjiaming<1159380836@qq.com> # message auto-generated for no-merge-commit merge: !8386 merge index_check into master indexCheck算子适配950 Created-by: kangjiaming Commit-by: kangjiaming Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次 PR 为 IndexCheck 算子适配 ASCEND950 平台,并新增多项输入合法性校验,提升算子在 950 平台的运行时安全性与鲁棒性。 ### 主要改动 - **op_api/index_check.cpp — 增加 ASCEND950 平台支持**:在 IndexCheck 入口的平台判断逻辑中新增 SocVersion::ASCEND950,使算子可以在 950 平台上继续执行,同时更新日志描述。 - **op_api/index_check.cpp — 新增 bounds 数据类型校验**:新增 bounds->GetDataType() 必须为 DT_INT64 的检查,不满足时跳过 IndexCheck 并输出警告。 - **op_api/index_check.cpp — 新增 indices 张量 dtype 一致性与数量上限校验**:IsAiCoreSupport 现在检查所有 indices 张量的 dtype 是否一致,不一致则返回 false;IndexCheck 中新增 indices 数量超过 8 时的跳过逻辑。 - **op_host/index_check_tiling.cpp — 新增 tiling 层张量数量与维度数硬校验**:在 IndexCheckTiling::Init 中新增 tensorId_ > MAX_TENSOR_NUM 和单张量维度数 > MAX_DIM_NUM(8)的错误检查,不满足时直接返回 GRAPH_FAILED。 - **op_host/index_check_def.cpp — 注册 ascend950 AICore 配置**:在 AICore 配置列表中添加 "ascend950",使算子可在新平台上加载对应的 tiling/kernel 配置。 - **README.md**:更新 Ascend 950PR/950DT 支持状态由 × 改为 √。 ### 改动原因 IndexCheck 作为 aclnnIndex、aclnnIndexPutV2 等索引类 aclnn 算子的公共前置检查算子(L0 内部算子),此前仅支持 910B 和 910_93 平台。本次适配使 950 平台上的索引类算子具备越界检查能力,同时通过增强输入校验提前拦截非法输入,避免后续 kernel 执行异常。 ## 关联的Issue 关联 Issue:[Requirement|需求建议]: IndexCheck 算子适配 Ascend 950 平台并增强输入校验 ## 测试 - CI 编译流水线全部通过(X86/ARM/950 等多个编译任务 SUCCESS)。 - UT 测试全部通过(ophost/opapi/kernel/opgraph)。 - PreSmoke 测试通过。 - API_Check 通过。 - 代码检视意见已修复(%d → %zu 格式说明符、移除多余 static_cast)。 - codecheck 格式问题已修复(clang-format、end-of-file-fixer)。 ## 文档更新 - 更新了 index/index_check/README.md,将 Ascend 950PR/950DT 的支持状态由 × 改为 √。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4694 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8386 | 28 天前 | |
refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8210 merge refactor/arch32_to_arch22 into master refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 将 index/、pooling/、conv/ 下所有 arch32 目录与引用统一改为 arch22,与全仓主流命名约定对齐(arch22 用于 ascend910b/910_93,arch35 用于 ascend950)。 - 目录重命名 arch32 → arch22(op_host/op_tiling、op_kernel、tests/ut 等) - 文件内容:include 路径、CMakeLists 的 SUPPORT_TILING_DIR、注释中的 arch32 → arch22 - arch35 目录与引用未受影响 - 顺带修复两个被禁用(main() 提前 return 0)的 eager example:index_add、scatter_nd_update ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> #4493 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 基于 ascend910b(CANN 9.1.0 / 910B3)完成统一打包构建 + eager 验证,涉及算子 index_fill、scatter_nd_update、masked_scatter、adaptive_max_pool3d(_grad)、max_pool3d_grad_with_argmax、avg_pool3_d、inplace_index_add_with_sorted、conv3d_backprop_filter_v2、conv3d_backprop_input_v2、conv3d_transpose_v2 均验证通过;并用改名测试(移除 vendor kernel 后 example 失败)确认跑的是改名后的实现而非 stock CANN。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:命名统一(arch32 → arch22) ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8210 | 1 个月前 | |
打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8369 merge master into master 打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 nn仓打标签 ## 关联的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!8369 | 1 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
修改aclnnIndexPutImpl接口确定性值判断逻辑 Co-authored-by: 张煜炜<zhangyuwei31@huawei.com> # message auto-generated for no-merge-commit merge: !8416 merge aclnn_determinevalue_modify into master 修改aclnnIndexPutImpl接口确定性值判断逻辑 Created-by: surezz Commit-by: 张煜炜 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改aclnnIndexPutImpl接口确定性值判断逻辑修改,之前判断逻辑为deterministicValue == 1,现在支持2和3,整网使用3无匹配分支,返回空指针,导致整网挂掉,现改为deterministicValue >= 1 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4644 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> david冒烟 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8416 | 1 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
Migrate index AICPU shape operators Co-authored-by: jialimin1<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !7519 merge migrate-index-to-addr-aicpu into master Migrate index AICPU shape operators Created-by: jialimin1 Commit-by: jialimin1 Merged-by: cann-robot Description: ## 描述 将三个 AICPU shape 类算子从源仓迁移至 ops-nn 仓库,统一算子仓管理,共新增 43 个文件,并同步更新算子清单 docs/zh/op_list.md: 1. **IndexToAddr**:根据块索引、原始矩阵 shape、块 shape 和基地址信息,生成块内每一行对应的地址表。输入 base_addr(shape=[2])与块索引 x(shape=[2]),输出地址表 shape 为 [block_size[0], 4],每行 [rank_id, base_addr[0]+bias_addr, base_addr[1]+bias_addr, row_size*dtype_size],支持 INT64/UINT64。 2. **NonZeroWithValueShape**:根据 NonZeroWithValue 的 count 输入更新 value/index 输出 shape,分别置为 [count[0]] 与 [2, count[0]]。 3. **NonZeroWithValueShapeV2**:V2 版本,在 V1 基础上新增 GetInputTypeAndCheck 显式校验 index/count 必须为 INT32,输出语义与 V1 一致。 每个算子按 ops-nn 标准目录结构组织,包含 op_graph(IR 原型)、op_host(infershape)、op_kernel_aicpu(kernel 实现与 REGISTER_CPU_KERNEL 注册)、examples(图模式调用样例)、tests/ut(单元测试)、各级 CMakeLists.txt 与 README.md。 ## 关联的Issue #4163 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 对三个算子(IndexToAddr / NonZeroWithValueShape / NonZeroWithValueShapeV2)分别执行各级 CMakeLists.txt 配置与编译,验证新增 CMake 配置变更正确,算子可正常构建。 2. **算子加载/注册验证** - 验证 REGISTER_CPU_KERNEL 注册成功,三个算子可被框架正确识别与加载。 3. **InferShape 验证** - 验证 op_host/*_infershape.cpp 输出 shape 推导:IndexToAddr 输出 [block_size[0], 4];NonZeroWithValueShape[V2] 输出 out_value=[count]、out_index=[2, count]。 4. **单元测试** - 运行 tests/ut/op_kernel_aicpu/test_*.cpp,覆盖 INT64/UINT64(IndexToAddr)、INT32 校验(NonZeroWithValueShapeV2)等数据类型分支与参数校验逻辑。 5. **图模式接口调用验证** - 运行 examples/test_geir_*.cpp,通过算子 IR 构图方式调用三个算子,验证端到端功能与输出正确性。 6. **参数校验测试** - 覆盖 Check() 中的边界场景:base_addr/x 数据类型一致且 shape=[2]、ori_shape/block_size 为 2 元素、block_size[0]*4 <= output.NumElements()、storage mode 仅支持 Matrix、V2 版本 index/count 必须为 DT_INT32、count 至少 1 个元素等。 7. **算子清单登记验证** - 确认 docs/zh/op_list.md 中三个算子条目正确显示,分类为 index,类型为 AI CPU,且 README 链接可达。 ## 文档更新 - 新增 index/index_to_addr/README.md、index/non_zero_with_value_shape/README.md、index/non_zero_with_value_shape_v2/README.md:产品支持情况、功能说明、参数说明、约束说明与调用说明。 - 更新 docs/zh/op_list.md:登记 IndexToAddr、NonZeroWithValueShape、NonZeroWithValueShapeV2 三个算子条目。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7519 | 1 个月前 | |
gatherNd混合模板tilingky匹配 Co-authored-by: jinpenghe<hejinpeng5@huawei.com> # message auto-generated for no-merge-commit merge: !7607 merge gatherNd into master gatherNd混合模板tilingky匹配 Created-by: jinpenghe Commit-by: jinpenghe Merged-by: cann-robot Description: ## 描述 1、将gathernd simd/simt混合模板tilingkey不支持场景路由到simd模板 2、删除gathernd无效tilingkey ophost testcase 3、修正inplaceindexadd确定性tiling参数 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4308 ## 测试 <!--描述进行了哪些测试来验证你的改动。-->  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7607 | 1 个月前 | |
refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8210 merge refactor/arch32_to_arch22 into master refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 将 index/、pooling/、conv/ 下所有 arch32 目录与引用统一改为 arch22,与全仓主流命名约定对齐(arch22 用于 ascend910b/910_93,arch35 用于 ascend950)。 - 目录重命名 arch32 → arch22(op_host/op_tiling、op_kernel、tests/ut 等) - 文件内容:include 路径、CMakeLists 的 SUPPORT_TILING_DIR、注释中的 arch32 → arch22 - arch35 目录与引用未受影响 - 顺带修复两个被禁用(main() 提前 return 0)的 eager example:index_add、scatter_nd_update ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> #4493 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 基于 ascend910b(CANN 9.1.0 / 910B3)完成统一打包构建 + eager 验证,涉及算子 index_fill、scatter_nd_update、masked_scatter、adaptive_max_pool3d(_grad)、max_pool3d_grad_with_argmax、avg_pool3_d、inplace_index_add_with_sorted、conv3d_backprop_filter_v2、conv3d_backprop_input_v2、conv3d_transpose_v2 均验证通过;并用改名测试(移除 vendor kernel 后 example 失败)确认跑的是改名后的实现而非 stock CANN。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:命名统一(arch32 → arch22) ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8210 | 1 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8210 merge refactor/arch32_to_arch22 into master refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 将 index/、pooling/、conv/ 下所有 arch32 目录与引用统一改为 arch22,与全仓主流命名约定对齐(arch22 用于 ascend910b/910_93,arch35 用于 ascend950)。 - 目录重命名 arch32 → arch22(op_host/op_tiling、op_kernel、tests/ut 等) - 文件内容:include 路径、CMakeLists 的 SUPPORT_TILING_DIR、注释中的 arch32 → arch22 - arch35 目录与引用未受影响 - 顺带修复两个被禁用(main() 提前 return 0)的 eager example:index_add、scatter_nd_update ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> #4493 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 基于 ascend910b(CANN 9.1.0 / 910B3)完成统一打包构建 + eager 验证,涉及算子 index_fill、scatter_nd_update、masked_scatter、adaptive_max_pool3d(_grad)、max_pool3d_grad_with_argmax、avg_pool3_d、inplace_index_add_with_sorted、conv3d_backprop_filter_v2、conv3d_backprop_input_v2、conv3d_transpose_v2 均验证通过;并用改名测试(移除 vendor kernel 后 example 失败)确认跑的是改名后的实现而非 stock CANN。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:命名统一(arch32 → arch22) ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8210 | 1 个月前 | |
fix(update Ascend950 golden specs):HardSwishGradV2,HardSigmoid,ApplyAdagrad,InplaceSub算子golden优化 Co-authored-by: tianyu52<tianyu52@huawei.com> # message auto-generated for no-merge-commit merge: !8577 merge master into master fix(update Ascend950 golden specs):HardSwishGradV2,HardSigmoid,ApplyAdagrad,InplaceSub算子golden优化 Created-by: tianyu52 Commit-by: tianyu52 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> HardSwishGradV2,HardSigmoid,ApplyAdagrad,InplaceSub算子按照新的golden要求,优化golden代码 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> HardSwishGradV2,HardSigmoid,ApplyAdagrad,InplaceSub:golden验证OK,已完成相应算子的泛化用例验证。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8577 | 29 天前 | |
docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8571 merge doc into master docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新16个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4785 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8571 | 27 天前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8210 merge refactor/arch32_to_arch22 into master refactor: 统一 arch32 → arch22 命名(index/pooling/conv) Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 将 index/、pooling/、conv/ 下所有 arch32 目录与引用统一改为 arch22,与全仓主流命名约定对齐(arch22 用于 ascend910b/910_93,arch35 用于 ascend950)。 - 目录重命名 arch32 → arch22(op_host/op_tiling、op_kernel、tests/ut 等) - 文件内容:include 路径、CMakeLists 的 SUPPORT_TILING_DIR、注释中的 arch32 → arch22 - arch35 目录与引用未受影响 - 顺带修复两个被禁用(main() 提前 return 0)的 eager example:index_add、scatter_nd_update ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> #4493 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 基于 ascend910b(CANN 9.1.0 / 910B3)完成统一打包构建 + eager 验证,涉及算子 index_fill、scatter_nd_update、masked_scatter、adaptive_max_pool3d(_grad)、max_pool3d_grad_with_argmax、avg_pool3_d、inplace_index_add_with_sorted、conv3d_backprop_filter_v2、conv3d_backprop_input_v2、conv3d_transpose_v2 均验证通过;并用改名测试(移除 vendor kernel 后 example 失败)确认跑的是改名后的实现而非 stock CANN。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:命名统一(arch32 → arch22) ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8210 | 1 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8369 merge master into master 打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 nn仓打标签 ## 关联的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!8369 | 1 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
bugfix: aclnnNonzeroV2输出支持非连续 Co-authored-by: biabu111<hebaojing1@huawei.com> # message auto-generated for no-merge-commit merge: !8269 merge master into master bugfix: aclnnNonzeroV2输出支持非连续 Created-by: biabu111 Commit-by: biabu111 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> bugfix: aclnnNonzeroV2输出支持非连续 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4696 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 已通过David冒烟、OBP冒烟、20000次压测 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8269 | 29 天前 | |
fix(arch35): 修复 InTrainingUpdateGrad NDC1HWC0 与 MultiAddRmsNormDynamicQuant 动态输入取值;8 算子 golden 适配三方对比 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !8492 merge fix/op-binary-json-missing into master fix(arch35): 修复 InTrainingUpdateGrad NDC1HWC0 与 MultiAddRmsNormDynamicQuant 动态输入取值;8 算子 golden 适配三方对比 Created-by: zl_hw Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 按照ttk最新支持规范更新ttk golden ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4685 ## 测试 st ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8492 | 30 天前 | |
Migrate index AICPU shape operators Co-authored-by: jialimin1<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !7519 merge migrate-index-to-addr-aicpu into master Migrate index AICPU shape operators Created-by: jialimin1 Commit-by: jialimin1 Merged-by: cann-robot Description: ## 描述 将三个 AICPU shape 类算子从源仓迁移至 ops-nn 仓库,统一算子仓管理,共新增 43 个文件,并同步更新算子清单 docs/zh/op_list.md: 1. **IndexToAddr**:根据块索引、原始矩阵 shape、块 shape 和基地址信息,生成块内每一行对应的地址表。输入 base_addr(shape=[2])与块索引 x(shape=[2]),输出地址表 shape 为 [block_size[0], 4],每行 [rank_id, base_addr[0]+bias_addr, base_addr[1]+bias_addr, row_size*dtype_size],支持 INT64/UINT64。 2. **NonZeroWithValueShape**:根据 NonZeroWithValue 的 count 输入更新 value/index 输出 shape,分别置为 [count[0]] 与 [2, count[0]]。 3. **NonZeroWithValueShapeV2**:V2 版本,在 V1 基础上新增 GetInputTypeAndCheck 显式校验 index/count 必须为 INT32,输出语义与 V1 一致。 每个算子按 ops-nn 标准目录结构组织,包含 op_graph(IR 原型)、op_host(infershape)、op_kernel_aicpu(kernel 实现与 REGISTER_CPU_KERNEL 注册)、examples(图模式调用样例)、tests/ut(单元测试)、各级 CMakeLists.txt 与 README.md。 ## 关联的Issue #4163 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 对三个算子(IndexToAddr / NonZeroWithValueShape / NonZeroWithValueShapeV2)分别执行各级 CMakeLists.txt 配置与编译,验证新增 CMake 配置变更正确,算子可正常构建。 2. **算子加载/注册验证** - 验证 REGISTER_CPU_KERNEL 注册成功,三个算子可被框架正确识别与加载。 3. **InferShape 验证** - 验证 op_host/*_infershape.cpp 输出 shape 推导:IndexToAddr 输出 [block_size[0], 4];NonZeroWithValueShape[V2] 输出 out_value=[count]、out_index=[2, count]。 4. **单元测试** - 运行 tests/ut/op_kernel_aicpu/test_*.cpp,覆盖 INT64/UINT64(IndexToAddr)、INT32 校验(NonZeroWithValueShapeV2)等数据类型分支与参数校验逻辑。 5. **图模式接口调用验证** - 运行 examples/test_geir_*.cpp,通过算子 IR 构图方式调用三个算子,验证端到端功能与输出正确性。 6. **参数校验测试** - 覆盖 Check() 中的边界场景:base_addr/x 数据类型一致且 shape=[2]、ori_shape/block_size 为 2 元素、block_size[0]*4 <= output.NumElements()、storage mode 仅支持 Matrix、V2 版本 index/count 必须为 DT_INT32、count 至少 1 个元素等。 7. **算子清单登记验证** - 确认 docs/zh/op_list.md 中三个算子条目正确显示,分类为 index,类型为 AI CPU,且 README 链接可达。 ## 文档更新 - 新增 index/index_to_addr/README.md、index/non_zero_with_value_shape/README.md、index/non_zero_with_value_shape_v2/README.md:产品支持情况、功能说明、参数说明、约束说明与调用说明。 - 更新 docs/zh/op_list.md:登记 IndexToAddr、NonZeroWithValueShape、NonZeroWithValueShapeV2 三个算子条目。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7519 | 1 个月前 | |
Migrate index AICPU shape operators Co-authored-by: jialimin1<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !7519 merge migrate-index-to-addr-aicpu into master Migrate index AICPU shape operators Created-by: jialimin1 Commit-by: jialimin1 Merged-by: cann-robot Description: ## 描述 将三个 AICPU shape 类算子从源仓迁移至 ops-nn 仓库,统一算子仓管理,共新增 43 个文件,并同步更新算子清单 docs/zh/op_list.md: 1. **IndexToAddr**:根据块索引、原始矩阵 shape、块 shape 和基地址信息,生成块内每一行对应的地址表。输入 base_addr(shape=[2])与块索引 x(shape=[2]),输出地址表 shape 为 [block_size[0], 4],每行 [rank_id, base_addr[0]+bias_addr, base_addr[1]+bias_addr, row_size*dtype_size],支持 INT64/UINT64。 2. **NonZeroWithValueShape**:根据 NonZeroWithValue 的 count 输入更新 value/index 输出 shape,分别置为 [count[0]] 与 [2, count[0]]。 3. **NonZeroWithValueShapeV2**:V2 版本,在 V1 基础上新增 GetInputTypeAndCheck 显式校验 index/count 必须为 INT32,输出语义与 V1 一致。 每个算子按 ops-nn 标准目录结构组织,包含 op_graph(IR 原型)、op_host(infershape)、op_kernel_aicpu(kernel 实现与 REGISTER_CPU_KERNEL 注册)、examples(图模式调用样例)、tests/ut(单元测试)、各级 CMakeLists.txt 与 README.md。 ## 关联的Issue #4163 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 对三个算子(IndexToAddr / NonZeroWithValueShape / NonZeroWithValueShapeV2)分别执行各级 CMakeLists.txt 配置与编译,验证新增 CMake 配置变更正确,算子可正常构建。 2. **算子加载/注册验证** - 验证 REGISTER_CPU_KERNEL 注册成功,三个算子可被框架正确识别与加载。 3. **InferShape 验证** - 验证 op_host/*_infershape.cpp 输出 shape 推导:IndexToAddr 输出 [block_size[0], 4];NonZeroWithValueShape[V2] 输出 out_value=[count]、out_index=[2, count]。 4. **单元测试** - 运行 tests/ut/op_kernel_aicpu/test_*.cpp,覆盖 INT64/UINT64(IndexToAddr)、INT32 校验(NonZeroWithValueShapeV2)等数据类型分支与参数校验逻辑。 5. **图模式接口调用验证** - 运行 examples/test_geir_*.cpp,通过算子 IR 构图方式调用三个算子,验证端到端功能与输出正确性。 6. **参数校验测试** - 覆盖 Check() 中的边界场景:base_addr/x 数据类型一致且 shape=[2]、ori_shape/block_size 为 2 元素、block_size[0]*4 <= output.NumElements()、storage mode 仅支持 Matrix、V2 版本 index/count 必须为 DT_INT32、count 至少 1 个元素等。 7. **算子清单登记验证** - 确认 docs/zh/op_list.md 中三个算子条目正确显示,分类为 index,类型为 AI CPU,且 README 链接可达。 ## 文档更新 - 新增 index/index_to_addr/README.md、index/non_zero_with_value_shape/README.md、index/non_zero_with_value_shape_v2/README.md:产品支持情况、功能说明、参数说明、约束说明与调用说明。 - 更新 docs/zh/op_list.md:登记 IndexToAddr、NonZeroWithValueShape、NonZeroWithValueShapeV2 三个算子条目。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7519 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !8341 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 产品文档中产品名需规范化 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#4260](https://gitcode.com/cann/ops-nn/issues/4260) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 相关readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8341 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
补充 repeat_interleave_grad tiling arch35 UT 用例 Co-authored-by: andong_hw<andong2@huawei.com> # message auto-generated for no-merge-commit merge: !8426 merge rep_interl_grad into master 补充 repeat_interleave_grad tiling arch35 UT 用例 Created-by: andong_hw Commit-by: andong_hw Merged-by: cann-robot Description: ## 关联 Issue Closes #4649 ## 背景 repeat_interleave_grad_tiling_arch35.cpp 覆盖率仅 74.41%(211 行)。现有测试未覆盖 BLOCK_SPLIT_MN、BLOCK_SPLIT_R tiling 策略、空 tensor 等场景。 ## 修改内容 新增 3 个 UT 用例: - repeat_interleave_grad_tiling_block_split_mn:lenM*lenN >= coreNum,覆盖 BLOCK_SPLIT_MN 策略 - repeat_interleave_grad_tiling_block_split_r:lenM*lenRepeat >= coreNum,覆盖 BLOCK_SPLIT_R 策略 - repeat_interleave_grad_tiling_empty_tensor:空 tensor,覆盖空 tensor 分支 ## 验证 - 编译通过 - 本地环境 tiling 测试存在 platform mock segfault 问题(非代码问题),需 CI 环境验证 See merge request: cann/ops-nn!8426 | 1 个月前 | |
TF plugin修改1 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !7547 merge nn1 into master TF plugin修改1 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!7547 | 1 个月前 | |
打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8369 merge master into master 打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 nn仓打标签 ## 关联的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!8369 | 1 个月前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 1 个月前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 1 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
fix: 8 算子检视问题整改 + ScatterDiv 整数除零取值域资料补充 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !8225 merge fix/8ops-review-issues into master fix: 8 算子检视问题整改 + ScatterDiv 整数除零取值域资料补充 Created-by: zl_hw Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 算子检视问题清理及资料优化 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4569 ## 测试 ut/st ## 文档更新 README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8225 | 1 个月前 | |
打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8369 merge master into master 打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 nn仓打标签 ## 关联的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!8369 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8571 merge doc into master docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新16个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4785 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8571 | 27 天前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 1 个月前 | |
ops-nn 950废除ScatterNonAliasingAdd算子相关融合规则 Co-authored-by: surezz<zhangyuwei31@huawei.com> # message auto-generated for no-merge-commit merge: !7802 merge nn_delete_fusionpass into master ops-nn 950废除ScatterNonAliasingAdd算子相关融合规则 Created-by: surezz Commit-by: surezz Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ops-nn 950废除ScatterNonAliasingAdd算子相关融合规则 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4335 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> david冒烟、二级冒烟、xrun用例测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7802 | 1 个月前 | |
fix scatter_nd_common Co-authored-by: 张鑫<zhangxin660@h-partners.com> # message auto-generated for no-merge-commit merge: !7712 merge splitAfter into master fix scatter_nd_common Created-by: z30075199 Commit-by: 张鑫 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1、scatter_nd_common tiling计算indicesFactor_逻辑有误,可能导致非预期问题 2、修改scatter_nd_max/scatter_nd_min算子README描述 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4220 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7712 | 1 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8571 merge doc into master docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新16个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4785 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8571 | 27 天前 | |
修复并编译运行aclnn的示例 Co-authored-by: xiaodong666<yuanxiaodong6@huawei.com> # message auto-generated for no-merge-commit merge: !8548 merge aclnnInplacePut_fix into master 修复并编译运行aclnn的示例 Created-by: xiaodong666 Commit-by: xiaodong666 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复并编译运行测test_aclnn_inplace_put.cpp、test_aclnn_scatter_nd_update.cpp、test_aclnn_scatter_nd.cpp、test_aclnn_index_copy.cpp、的示例 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#4711](https://gitcode.com/cann/ops-nn/issues/4711) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 编译运行示例成功 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8548 | 29 天前 | |
docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8571 merge doc into master docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新16个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4785 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8571 | 27 天前 | |
fix(review): 集中清理 foreach/scatter/lamb A5 检视问题 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !7966 merge fix/op-review-issues into master fix(review): 集中清理 foreach/scatter/lamb A5 检视问题 Created-by: zl_hw Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7966 | 1 个月前 | |
新增支持fallback内容编译 Co-authored-by: zhaoyingchao<zhaoyingchao1@hisilicon.com> # message auto-generated for no-merge-commit merge: !7481 merge support-fallback-compile into master 新增支持fallback内容编译 Created-by: zhaoyingchao2 Commit-by: zhaoyingchao Merged-by: cann-robot Description: ## 描述 同步参考 cann/ops-math PR 3394 的构建逻辑,支持 op_graph 目录下的 *_fallback.cpp 参与 graph plugin 编译。 本次修改: - 在 add_graph_plugin_sources() 中,将 ${SOURCE_DIR}/*_fallback.cpp 加入 GRAPH_PLUGIN_SRCS。 - 在安装依赖与非安装依赖两种构建路径下都收集 fallback 源文件。 - 将 OPBASE_TAG_ID 更新为包含 op_fallback 接口支持的提交 b92c2c8f3d999f315b0251cfb25edb111bb898d5。 参考 PR:https://gitcode.com/cann/ops-math/pull/3394 ## 关联的Issue 关联Issue #4077 https://gitcode.com/cann/ops-nn/issues/4077 ## 测试 - 已执行 git diff --check,通过。 - 已确认 opbase 新提交存在,且当前 ops-nn 使用的 opbase tag 是新 tag 的祖先。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!7481 | 1 个月前 | |
indexputv2算子为原地替换算子,因此需要判断连续和aclnnindexcopy需要复制self Co-authored-by: xiaodong666<yuanxiaodong6@huawei.com> # message auto-generated for no-merge-commit merge: !8616 merge pytorchapi_fix into master indexputv2算子为原地替换算子,因此需要判断连续和aclnnindexcopy需要复制self Created-by: xiaodong666 Commit-by: xiaodong666 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> indexputv2算子为原地替换算子,因此需要判断连续和aclnnindexcopy需要复制self ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#4627](https://gitcode.com/cann/ops-nn/issues/4627) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 单case用例测试通过,冒烟通过;st测试通过; ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8616 | 28 天前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
sparsesegmentmeangrad的网络用例性能优化,核上开多个线程处理indices每次循环的多个segment Co-authored-by: xiaodong666<yuanxiaodong6@huawei.com> # message auto-generated for no-merge-commit merge: !7044 merge sparsesegmentmeangrad_opt_1 into master sparsesegmentmeangrad的网络用例性能优化,核上开多个线程处理indices每次循环的多个segment Created-by: xiaodong666 Commit-by: xiaodong666 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> sparsesegmentmeangrad的网络用例性能优化,核上开多个线程处理indices每次循环的多个segment ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> Issue [#3857](https://gitcode.com/cann/ops-nn/issues/3857) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟测试通过、网络用例测试通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7044 | 2 个月前 | |
feat(index): add SparseFillEmptyRows AICPU op Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !7571 merge sparse_fill_empty_rows into master feat(index): add SparseFillEmptyRows AICPU op Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 将 canndev 中的 SparseFillEmptyRows 作为 AICPU 算子迁移到 ops-nn/index/sparse_fill_empty_rows。 主要改动: - 新增 SparseFillEmptyRows AICPU kernel 实现,保持 canndev 核心语义:统计每行元素数,对空行补 [row, 0, ...] = default_value,生成 empty_row_indicator 和 reverse_index_map。 - 新增 AICPU OpDef、op_graph proto、GEIR graph example 和 AICPU UT。 - 新增算子 README,说明输入输出、空行补齐规则、dtype 支持和约束。 - 更新 docs/zh/op_list.md,将 sparse_fill_empty_rows 加入 index 分类。 本轮未新增 aclnn/op_api;canndev 中未检索到 aclnnSparseFillEmptyRows 或对应两段式接口实现。 ## 关联的Issue 无。 ## 测试 已执行: bash pre-commit run --files docs/zh/op_list.md index/sparse_fill_empty_rows/CMakeLists.txt index/sparse_fill_empty_rows/README.md index/sparse_fill_empty_rows/examples/test_geir_sparse_fill_empty_rows.cpp index/sparse_fill_empty_rows/op_graph/CMakeLists.txt index/sparse_fill_empty_rows/op_graph/sparse_fill_empty_rows_proto.h index/sparse_fill_empty_rows/op_kernel_aicpu/CMakeLists.txt index/sparse_fill_empty_rows/op_kernel_aicpu/sparse_fill_empty_rows_aicpu.cpp index/sparse_fill_empty_rows/op_kernel_aicpu/sparse_fill_empty_rows_aicpu.h index/sparse_fill_empty_rows/op_kernel_aicpu/sparse_fill_empty_rows_aicpu_def.cpp index/sparse_fill_empty_rows/tests/CMakeLists.txt index/sparse_fill_empty_rows/tests/ut/CMakeLists.txt index/sparse_fill_empty_rows/tests/ut/op_kernel_aicpu/test_sparse_fill_empty_rows.cpp 结果:通过。 已执行 AICPU UT: bash bash build.sh --opkernel_aicpu_test --ops=sparse_fill_empty_rows -j8 结果:33 个 TEST_SPARSE_FILL_EMPTY_ROWS_UT 用例通过。 已执行自定义包和 GEIR example 验证: bash bash build.sh --pkg --ops=sparse_fill_empty_rows --vendor_name=sfer -j8 ./build_out/cann-ops-nn-sfer_linux-aarch64.run export ASCEND_CUSTOM_OPP_PATH=/home/developer/Ascend/cann-9.0.0/opp/vendors/sfer_nn export LD_LIBRARY_PATH=/home/developer/Ascend/cann-9.0.0/opp/vendors/sfer_nn/op_api/lib:${LD_LIBRARY_PATH} export ASCEND_GLOBAL_LOG_LEVEL=0 bash build.sh --run_example sparse_fill_empty_rows graph 结果:通过。日志确认走到自定义 AICPU kernel:RunCpuKernel[SparseFillEmptyRows] 出现在 aicpu_custom_scheduler 路径下。 ## 文档更新 - 新增 index/sparse_fill_empty_rows/README.md。 - 更新 docs/zh/op_list.md。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!7571 | 1 个月前 | |
feat(index): add SparseSegmentMean AICPU op Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !7587 merge sparse_segment_mean_aicpu into master feat(index): add SparseSegmentMean AICPU op Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 迁移 SparseSegmentMean AICPU 算子到 ops-nn/index 目录,补齐自定义 AICPU 构建、注册、UT、GEIR example 和 README 文档。 主要改动: - 新增 index/sparse_segment_mean/op_kernel_aicpu,包含 AICPU kernel、头文件、AICPU OpDef 和 CMakeLists.txt。 - 新增 index/sparse_segment_mean/tests/ut/op_kernel_aicpu/test_sparse_segment_mean.cpp,覆盖 float/double/float16、int32/int64 indices 和异常场景。 - 新增 index/sparse_segment_mean/examples/test_geir_sparse_segment_mean.cpp,验证图模式 cust 调用链路。 - 新增 index/sparse_segment_mean/README.md,并更新 docs/zh/op_list.md。 ## 关联的Issue 暂无。 ## 测试 已完成以下验证: - pre-commit run --files docs/zh/op_list.md index/sparse_segment_mean/README.md index/sparse_segment_mean/examples/test_geir_sparse_segment_mean.cpp index/sparse_segment_mean/op_kernel_aicpu/CMakeLists.txt index/sparse_segment_mean/op_kernel_aicpu/sparse_segment_mean_aicpu.cpp index/sparse_segment_mean/op_kernel_aicpu/sparse_segment_mean_aicpu.h index/sparse_segment_mean/op_kernel_aicpu/sparse_segment_mean_aicpu_def.cpp index/sparse_segment_mean/tests/ut/op_kernel_aicpu/test_sparse_segment_mean.cpp - bash build.sh -u --opkernel_aicpu --ops=sparse_segment_mean - bash build.sh --pkg --soc=ascend910b --ops=sparse_segment_mean - bash build.sh --run_example sparse_segment_mean graph cust ## 文档更新 - 新增 index/sparse_segment_mean/README.md。 - 更新 docs/zh/op_list.md,补充 sparse_segment_mean 的 AI Core/AI CPU 支持信息。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!7587 | 1 个月前 | |
feat: 迁移 canndev 的 AI CPU 算子 SparseSegmentMeanGrad 到 ops-nn/index Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !7745 merge sparse_segment_mean_grad_0720 into master feat: 迁移 canndev 的 AI CPU 算子 SparseSegmentMeanGrad 到 ops-nn/index Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 将 canndev 的 AI CPU 算子 **SparseSegmentMeanGrad** 迁移至本仓 index 分类目录,共新增 14 个文件,并同步更新算子清单 docs/zh/op_list.md。 **算子功能**:计算 SparseSegmentMean 的反向梯度。正向按 segment_ids 对被 indices 选中的行求均值,反向时把每个分段的梯度按该分段被引用的次数取平均后,散射回 indices 指定的输出行;未被引用的输出行置 0。 **目录结构**: | 目录 | 文件 | 内容 | | --- | --- | --- | | op_graph/ | sparse_segment_mean_grad_proto.h | IR 原型,REG_OP 注释块沿用 canndev op_proto/inc/math_ops.h 原文 | | op_host/ | sparse_segment_mean_grad_infershape.cpp | RT2 InferShape + InferDataType,output_dim0 声明为 InputsDataDependency | | op_kernel_aicpu/ | *_aicpu.{h,cpp}、*_aicpu_def.cpp | kernel 实现与 REGISTER_CPU_KERNEL 注册、opdef 元数据 | | examples/ | test_geir_sparse_segment_mean_grad.cpp | 图模式(GE IR)调用样例 | | tests/ut/op_kernel_aicpu/ | test_sparse_segment_mean_grad.cpp | 21 条 AI CPU kernel 单元测试 | | tests/ut/op_host/ | test_sparse_segment_mean_grad_infershape.cpp | 10 条 infershape / InferDataType 单元测试 | **CMake 接线取最小集**:仅算子根 CMakeLists.txt(直接调 add_modules_sources,DIR 指向算子根目录)、op_kernel_aicpu/CMakeLists.txt 与 tests/、tests/ut/ 两级 CMakeLists.txt,共 4 个;op_graph/ 与 op_host/ 下不再放 CMakeLists.txt——add_modules_sources() 内部会调用 add_graph_plugin_sources() 覆盖 op_graph,并自动补 /op_host 收集 *_infershape*.cpp,与 cmake/func.cmake 中「add_modules_sources 在算子根路径 CMakeLists 中,且 CMakeLists 旧实现已删除」的演进方向及本仓 index/sparse_segment_sum_grad 的写法一致(已用「清空 build/build_out 全量重打包 + 比对 es_SparseSegmentMeanGrad.h / opsproto 符号 / aicpu kernel 符号 / aicpu_kernel.ini 字段」实测确认产物不变)。 本算子为 AI CPU-only,未引入 tiling、archXX/、op_kernel/ 等 AI Core 结构,classify_rule.yaml 与 scripts/kernel/binary_config/ascendc_config.json 无需登记(与 index/index_to_addr 一致)。 **infershape 与 canndev RT2 的语义对齐**(代码检视后修正,不是等价改写): 1. x 保留 WithRankAtLeast(1) 语义,标量 x 返回 GRAPH_FAILED。缺此校验时 gert::Shape::SetDim(0, v) 的 dim_num_ = (dim_num_ < idx) ? idx : dim_num_ 在 idx=0, dim_num_=0 时不会把 rank 提到 1,会静默推出 rank 0 的输出 shape 并返回 GRAPH_SUCCESS; 2. indices 与 segment_ids 的长度比较保留 Merge 语义(CheckUnknownDimAndValidate):仅当两边都是已知维且不相等时才判失败,任一边为 -1(未知维)或 -2(未知 rank)均放行,避免动态 shape 下误拒合法图。 **kernel 侧的防御性增强**(不改变合法输入下的行为,与源实现功能等价): 1. output_dim0 显式校验 DT_INT32(源侧直接 reinterpret_cast<int32_t*>); 2. NumElements() / GetDimSize(0) 除法前紧邻 dim0 == 0 守卫(G.EXP.22-CPP,源侧无守卫); 3. indices / segment_ids 数据类型白名单前置到入口校验(源侧靠嵌套 else 兜底)。 已逐函数比对 canndev 源与迁移后代码的索引计算公式、循环结构与分支流程,重构仅提取 TryGetRowSize / BuildSegmentScale / AccumulateGrad 三个 helper,不改变语义。 **算子信息库回源核对**:生成的 aicpu_kernel.ini 与 canndev 源逐字段比对一致,其中 opInfo.opsFlag=OPS_FLAG_OPEN(本仓公共默认配置为 CLOSE,已按源显式覆盖)、opInfo.subTypeOfInferShape=1、opInfo.formatAgnostic=False、opInfo.computeCost=100、opInfo.flagAsync/flagPartial=False、输入输出 dtype 列表全部一致。 **刻意不迁移的源文件**: - fusion_pass/graph_fusion/ai_core/sparse_segment_mean_grad_fusion_pass.{h,cc}:该融合规则(SparseSegmentMeanGrad → Sort + SortedSparseSegmentMeanGrad)已随 index/sorted_sparse_segment_mean_grad 迁入本仓,不重复迁移; - canndev 源侧 RT1 VERIFY_FUNC_REG:RT2 生态无 Verify 适配接口,相关输入校验由 AI CPU kernel 运行期守卫兜底,并已写入 README 约束说明; - canndev 源侧文件驱动式 UT 与 *_gen_data.py 数据脚本:按本仓内联数据风格重写。 ## 关联的Issue 关联Issue #4198 ## 测试 验证环境:Atlas A2 训练系列产品(910B3),CANN 9.1.0,aarch64。 根据代码变更,测试场景如下: 1. **编译构建测试**(CMakeLists.txt × 5、*_aicpu_def.cpp) - 执行各级 CMake 配置与编译,验证新增 CMake 接线正确、算子可正常构建; - bash build.sh --pkg --soc=ascend910b --vendor_name=custom --ops=sparse_segment_mean_grad → **Build package success**,产出 cann-ops-nn-custom_linux-aarch64.run。 2. **算子加载/注册验证**(*_aicpu.cpp、*_aicpu_def.cpp) - libnn_aicpu_kernels.so 中可搜到 sparse_segment_mean_grad_aicpu.cpp 与 SparseSegmentMeanGrad,确认 REGISTER_CPU_KERNEL 注册成功且 kernel 已真正编入生产 .so; - libcust_opsproto_rt2.0.so 中可搜到 InferShapeForSparseSegmentMeanGrad 与 InferDataTypeForSparseSegmentMeanGrad; - 安装 bash build_out/cann-ops-nn-custom_linux-aarch64.run --quiet --force → **SUCCESS**,vendors/config.ini 更新为 load_priority=custom_nn,custom_math;安装后 cust_aicpu_kernel.json 中 SparseSegmentMeanGrad 条目字段与预期一致。 - 说明:范围包只含 AI CPU 算子时不产出 libcust_opmaster_rt2.0.so,安装脚本会无条件校验该文件,故需 --force 跳过;AI CPU 算子不依赖 AI Core tiling,RT2 infershape 位于 libcust_opsproto_rt2.0.so 内。 3. **infershape 单元测试**(tests/ut/op_host/test_sparse_segment_mean_grad_infershape.cpp) - bash build.sh -u --ophost --ops=sparse_segment_mean_grad → **10/10 PASSED**; - 覆盖 2D/3D 输出推导、x 为 -2(unknown rank)、标量 x 拦截、indices 为 -1(未知维)与 -2(未知 rank)时放行、两边已知维不等时拦截、indices 非 1D 拦截、output_dim0 非标量拦截、输出 dtype 跟随 x; - **反向对照**:把 infershape 回退到修改前的实现后重跑同一组用例,InferShapeScalarXFailed / InferShapeIndicesUnknownDimSuccess / InferShapeIndicesUnknownRankSuccess **3 条确实失败**,确认这三条是有效回归用例而非恒真断言。 - 说明:InferShapeContextFaker 的 GetInputTensor() 返回的并非 InputShapes() 传入的 Tensor(实测 GetInputShape() 读到传入对象、GetInputTensor() 读到 faker 自建的空 tensor,GetSize()==0),故 UT 中 GetConstInt(output_dim0) 必然失败、首维回退 -1,用例据此断言 -1,覆盖「output_dim0 非编译期常量时首维回退」这条真实分支;output_dim0 为真常量时 y.dim(0)==output_dim0 的路径由下面第 6 项图模式 example 在真实硬件上端到端覆盖。 4. **AI CPU kernel 单元测试**(tests/ut/op_kernel_aicpu/test_sparse_segment_mean_grad.cpp) - UT 中构造 NodeDef 使用匿名 namespace 内的 helper 函数 CreateNodeDef(),未使用 CREATE_NODEDEF 宏(该宏体为「局部变量声明 + builder 链」两条语句,违反 G.PRE.03,且 nodeDef 需跨出宏作用域供 RUN_KERNEL 使用,无法用 do-while(0) 修复); - bash build.sh -u --opkernel_aicpu --ops=sparse_segment_mean_grad --soc=ascend910b → **21/21 PASSED**; - 成功路径覆盖 FLOAT / DOUBLE / FLOAT16 三种数据类型,以及 indices × segment_ids 的四种 INT32/INT64 组合,并逐元素校验输出数值,含累加路径(同一输出行被写入多次)与未引用行置 0 的校验。 4. **参数校验测试**(*_aicpu.cpp 的 CheckDataPara / CheckRankPara / CheckShapePara) - 覆盖 Compute 入口的每一条 return 分支:空 Tensor、输入数据指针为空、x/y 数据类型不一致、output_dim0 数据类型非 INT32、x/y rank 小于 1、output_dim0 非标量、indices 与 segment_ids 元素数不一致、x/y 行长不一致、y.dim(0) 与 output_dim0 不匹配、indices/segment_ids 数据类型不支持、segment id 越界、index 越界、负索引、x 数据类型不支持。 5. **InferShape / InferDataType 验证**(op_host/sparse_segment_mean_grad_infershape.cpp) - 输出 shape 推导为 output_dim0 拼接 x 除首维外的各维;output_dim0 非编译期常量时首维回退为 -1;x 为 -2(unknown rank)时输出保持 -2;indices / segment_ids 必须为 1 维且元素数一致、output_dim0 必须为标量,否则拦截;输出数据类型跟随 x。 - 图模式样例在真实硬件上端到端验证了上述推导(输出 dtype 打印为 DT_DOUBLE,shape 为 [3, 3])。 6. **图模式接口调用验证**(examples/test_geir_sparse_segment_mean_grad.cpp、op_graph/sparse_segment_mean_grad_proto.h) - bash build.sh --run_example sparse_segment_mean_grad graph → 执行成功,输出与期望完全一致。 - 输入 x = [[1,2,3],[4,5,6]]、indices = {0,2,1}、segment_ids = {0,0,1}、output_dim0 = 3(segment 0 被引用 2 次,scale 0.5;segment 1 被引用 1 次,scale 1.0): sparse_segment_mean_grad output dtype = DT_DOUBLE sparse_segment_mean_grad output[0] = 0.5 sparse_segment_mean_grad output[1] = 1 sparse_segment_mean_grad output[2] = 1.5 sparse_segment_mean_grad output[3] = 4 sparse_segment_mean_grad output[4] = 5 sparse_segment_mean_grad output[5] = 6 sparse_segment_mean_grad output[6] = 0.5 sparse_segment_mean_grad output[7] = 1 sparse_segment_mean_grad output[8] = 1.5 SparseSegmentMeanGrad GEIR example success 7. **运行期日志核对** - 样例执行后在 log/ 下可搜到: [RunCpuKernel] op type [SparseSegmentMeanGrad] run cpu kernel. [RunCpuKernelCommon] op type [SparseSegmentMeanGrad] run cpu kernel finished, run time [20.720000] us. AICPU(1055,aicpu_custom_scheduler) ... FillCustOpInfos: Read cust json file, op_name: SparseSegmentMeanGrad GetCustAicpuFuncHandle: Get func from bin handle by op type: SparseSegmentMeanGrad, func name: RunCpuKernel - 可确认实际执行的是自定义包中的 AI CPU kernel,而非内置实现。 8. **算子清单登记验证** - 确认 docs/zh/op_list.md 中 sparse_segment_mean_grad 条目显示正确,分类为 index,硬件单元为 AI CPU,README 链接可达。 9. **本地代码质量自检** - pre-commit run --files <本次全部文件> 全绿(trailing-whitespace / end-of-file-fixer / clang-format / codespell / OAT 许可证头); - 所有函数有效代码行(NBNC)均不超过 50 行(最长 43 行);kernel、infershape、UT、样例四类文件均无裸槽位索引与硬编码派生尺寸,无被注释掉的代码段。 ## 文档更新 - 新增 index/sparse_segment_mean_grad/README.md:产品支持情况、功能说明与计算公式、参数说明、约束说明、调用说明。 - 更新 docs/zh/op_list.md:登记 sparse_segment_mean_grad 条目,硬件单元为 AI CPU,op_kernel / op_host / op_graph 列标记为支持,op_api 列为不支持(本算子无 aclnn 接口,故未涉及 docs/zh/op_api_list.md 与 docs/aclnn*.md)。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7745 | 1 个月前 | |
Add SparseSegmentSum op migration Co-authored-by: jialimin1<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !7621 merge migrate-sparse-segment-sum into master Add SparseSegmentSum op migration Created-by: jialimin1 Commit-by: jialimin1 Merged-by: cann-robot Description: ## 描述 将 SparseSegmentSum AICPU 算子迁移至 ops-nn 仓库,共新增 16 个文件,并同步更新 docs/zh/op_list.md。算子沿 segment_ids 指定的稀疏分段对 x 的切片求和,计算公式 y[segment_ids[i]] += x[indices[i]],兼容 TensorFlow SparseSegmentSum。 实现要点: 1. op_graph/sparse_segment_sum_proto.h:REG_OP(SparseSegmentSum) 注册 3 输入(x/indices/segment_ids)、1 输出(y),声明支持的数据类型集合(x/y 11 种 dtype,indices/segment_ids 为 INT32/INT64)。 2. op_host/sparse_segment_sum_infershape.cpp:校验 x rank≥1、indices/segment_ids 为 1D 且 shape 一致;输出 dim0 在 segment_ids 为 const 时取 max(segment_ids)+1,否则置 UNKNOWN_DIM;输出 dim[1:] 取 x[1:];输出 dtype 与 x 一致。 3. op_kernel_aicpu/sparse_segment_sum_aicpu.cpp:校验 segment_ids 非负且单调非递减、indices 元素 < x.dim(0);使用 Eigen TensorMap 按段累加 input_flat.chip<0>(indices[r]),段间 gap 与末尾 gap 用 setConstant(0) 填零;x 支持 11 种 dtype,indices/segment_ids 各支持 INT32/INT64(4 种组合)。 4. 配套 examples(图模式调用样例)、tests/ut(Host InferShape + kernel UT)、各级 CMakeLists.txt 与 README.md。 ## 关联的Issue #4294 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 执行各级 CMakeLists.txt 配置与编译,验证 SparseSegmentSum 算子(op_graph / op_host / op_kernel_aicpu / tests)可正常构建。 2. **算子注册/加载验证** - 验证 REG_OP(SparseSegmentSum) 与 REGISTER_CPU_KERNEL(SparseSegmentSum, ...) 注册成功,算子可被框架正确识别并加载。 3. **InferShape 验证** - 运行 tests/ut/op_host/test_sparse_segment_sum_infershape.cpp,验证:x rank≥1 校验、indices/segment_ids 1D 且 shape 一致校验、const segment_ids 时输出 dim0 = max+1、非 const 时输出 dim0 = UNKNOWN_DIM、输出 dtype 与 x 一致。 4. **kernel 单元测试** - 运行 tests/ut/op_kernel_aicpu/test_sparse_segment_sum.cpp,覆盖 x 的 11 种数据类型(INT8/16/32/64、UINT8/16/32/64、FLOAT16/FLOAT/DOUBLE)与 indices/segment_ids 的 4 种 INT32/INT64 组合,验证累加结果与 gap 填零正确。 5. **参数校验测试** - 覆盖 SparseSegmentCheck / SparseSegmentDataCheck 中的边界场景:x rank<1、indices/segment_ids 元素数不一致、x/y dtype 不一致、segment_ids 存在负值、segment_ids 非单调递减、indices 元素 ≥ x.dim(0) 等,均应返回 KERNEL_STATUS_PARAM_INVALID。 6. **图模式接口调用验证** - 运行 examples/test_geir_sparse_segment_sum.cpp,通过 GE IR 构图方式调用 SparseSegmentSum 算子,验证端到端功能与输出正确性,并与 TensorFlow SparseSegmentSum 结果对齐。 7. **算子清单登记验证** - 确认 docs/zh/op_list.md 中 SparseSegmentSum 条目正确显示,分类为 index,README 链接可达。 ## 文档更新 - 新增 index/sparse_segment_sum/README.md:产品支持情况(Ascend 950PR/950DT 支持)、功能说明、参数说明(含完整数据类型表格)、约束说明与调用说明。 - 更新 docs/zh/op_list.md:登记 SparseSegmentSum 算子条目。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7621 | 1 个月前 | |
docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !8571 merge doc into master docs: 更新16个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新16个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4785 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8571 | 27 天前 | |
修复sparse_slice算子72核下 aivec error Co-authored-by: zhouliang<zhouliang88@huawei.com> # message auto-generated for no-merge-commit merge: !7685 merge master into master 修复sparse_slice算子72核下 aivec error Created-by: zhou-liang1027 Commit-by: zhouliang Merged-by: cann-robot Description: ## 描述 修复sparse_slice算子72核下 aivec error问题 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4616 ## 测试 xrun跑geir成功 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7685 | 1 个月前 | |
feat(index): add SparseToDense AICPU kernel Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !7709 merge sparse_to_dense_aicpu into master feat(index): add SparseToDense AICPU kernel Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 ### 信息描述 本 PR 将 canndev 中 SparseToDense 的 AICPU 能力迁移到 ops-nn/index/sparse_to_dense,目标是在目标仓现有 Ascend950 AI Core 实现基础上补齐 AI CPU 执行路径,形成 AI Core/AI CPU 共存能力。 迁移范围限定为 AICPU kernel、AICPU OpDef、UT、GEIR graph example 以及 README/op_list 能力描述更新。本次不迁移 canndev infershape,不新增 aclnn/op_api,不修改现有 op_host、AI Core kernel、tiling 主路径,也不迁移 TF/ONNX plugin。 AICPU dtype 注册按 kernel 实际支持范围收敛,避免把未覆盖 dtype 暴露到 AICPU OpDef。GEIR 示例使用 DT_DOUBLE 输入,便于验证运行时进入自定义 AICPU 路径,而不是命中已有 AI Core 实现。 主要改动: - 新增 index/sparse_to_dense/op_kernel_aicpu,包含 AICPU kernel、头文件、CMake 和 sparse_to_dense_aicpu_def.cpp。 - AICPU kernel 支持 int32/int64 indices 和 output_shape,values/default_value/y dtype 按 AICPU kernel 实际支持范围注册。 - 新增 AICPU UT,覆盖正常路径、scalar values 广播、非法 shape/dtype、乱序/重复/越界索引等场景。 - 新增 GEIR graph example,验证图模式调用与输出结果。 - 更新 docs/zh/op_list.md 的硬件单元为 AI Core/AI CPU,修正 README 描述和调用样例链接。 ## 关联的Issue 暂无。 ## 测试 - 通过:bash build.sh -u --opkernel_aicpu --ops=sparse_to_dense -j8 - 通过:bash build.sh --pkg --ops=sparse_to_dense --vendor_name=custom -j8 - 通过:./build_out/cann-ops-nn-custom_linux-aarch64.run - 通过:设置 ASCEND_CUSTOM_OPP_PATH=/home/developer/Ascend/cann-9.0.0/opp/vendors/custom_nn 后运行 bash build.sh --run_example sparse_to_dense graph cust --vendor_name=custom - 日志确认自定义 AICPU 路径:aicpu_custom_scheduler 下 RunCpuKernel[SparseToDense] success,并出现 kernel_lib_name is [CUSTAICPUKernel]、kernel_so_name is libnn_aicpu_kernels.so、Load cust aicpu kernel:SparseToDense - 通过:pre-commit run --files docs/zh/op_list.md index/sparse_to_dense/README.md index/sparse_to_dense/op_kernel_aicpu/CMakeLists.txt index/sparse_to_dense/op_kernel_aicpu/sparse_to_dense_aicpu.h index/sparse_to_dense/op_kernel_aicpu/sparse_to_dense_aicpu.cpp index/sparse_to_dense/op_kernel_aicpu/sparse_to_dense_aicpu_def.cpp index/sparse_to_dense/tests/ut/op_kernel_aicpu/test_sparse_to_dense.cpp index/sparse_to_dense/examples/test_geir_sparse_to_dense.cpp ## 文档更新 更新 docs/zh/op_list.md 和 index/sparse_to_dense/README.md。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7709 | 1 个月前 | |
TF plugin修改1 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !7547 merge nn1 into master TF plugin修改1 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!7547 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
refactor: rename AscendC MicroAPIs in 4 arch35 operator kernels (batch5) Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !8429 merge rename-api-batch5 into master refactor: rename AscendC MicroAPIs in 4 arch35 operator kernels (batch5) Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 对 4 个算子的 arch35 kernel 实现进行 AscendC MicroAPI 接口重命名,以同步 AscendC SDK 新版本的 API 命名规范。 ### 改动原因 AscendC SDK 新版本对 MicroAPI 接口命名进行了系统性调整(地址空间限定符统一、加载/存储方向接口拆分、Mask 相关接口去前缀化等),算子代码需同步更新以使用新 API 名称,旧名称将在后续版本废弃。 ### 改动方法 纯机械重命名,不涉及任何逻辑变更。共修改 7 个文件,333 行增 + 333 行删(一一对应替换)。 ### 涉及算子(4 个) | 算子 | 目录 | 修改文件数 | |------|------|-----------| | unique_consecutive | index/unique_consecutive | 1 | | sync_batch_norm_gather_stats | norm/sync_batch_norm_gather_stats | 2 | | swiglu_mx_quant | quant/swiglu_mx_quant | 3 | | swiglu_mx_quant_with_dual_axis | quant/swiglu_mx_quant_with_dual_axis | 1 | ### 变更文件列表(7 个) | 文件 | +行 | -行 | |------|-----|-----| | index/unique_consecutive/op_kernel/arch35/unique_consecutive_helper.h | 83 | 83 | | norm/sync_batch_norm_gather_stats/op_kernel/arch35/sync_batch_norm_gather_stats_n_full_load.h | 22 | 22 | | norm/sync_batch_norm_gather_stats/op_kernel/arch35/sync_batch_norm_gather_stats_n_not_full_load.h | 52 | 52 | | quant/swiglu_mx_quant/op_kernel/arch35/swiglu_mx_quant_axis_last.h | 13 | 13 | | quant/swiglu_mx_quant/op_kernel/arch35/swiglu_mx_quant_axis_not_last.h | 6 | 6 | | quant/swiglu_mx_quant/op_kernel/arch35/swiglu_mx_quant_common.h | 96 | 96 | | quant/swiglu_mx_quant_with_dual_axis/op_kernel/arch35/swiglu_mx_quant_with_dual_axis_regbase.h | 61 | 61 | | **合计** | **333** | **333** | ### API 改名映射 | 旧 API | 新 API | 说明 | |--------|--------|------| | __local_mem__ | __ubuf__ | 地址空间限定符统一(128 处) | | MicroAPI::DataCopy(加载)/ 裸 DataCopy | MicroAPI::LoadAlign / LoadAlign | 对齐加载 | | MicroAPI::DataCopy(存储) | MicroAPI::StoreAlign | 对齐存储 | | MicroAPI::DataCopyUnAlign(加载) | MicroAPI::LoadUnAlign | 非对齐加载 | | MicroAPI::DataCopyUnAlign(存储) | MicroAPI::StoreUnAlign | 非对齐存储 | | MicroAPI::DataCopyUnAlignPre | MicroAPI::LoadUnAlignPre | 非对齐加载预处理 | | MicroAPI::DataCopyUnAlignPost | MicroAPI::StoreUnAlignPost | 非对齐存储后处理(8 处) | | MicroAPI::CompareScalar | MicroAPI::Compares | 标量比较(41 处) | | MicroAPI::MaskAnd | MicroAPI::And | Mask 按位与(11 处) | | MicroAPI::MaskUnPack | MicroAPI::UnPack | Mask 解包(16 处) | | MicroAPI::MaskPack | MicroAPI::Pack | Mask 打包 | | MicroAPI::GatherMask(函数) | MicroAPI::Squeeze | GatherMask 函数更名(GatherMaskMode 枚举不变) | | MicroAPI::UnalignReg | MicroAPI::UnalignRegForLoad / MicroAPI::UnalignRegForStore | 按加载/存储方向拆分 | ## 关联的Issue - #4652 https://gitcode.com/cann/ops-nn/issues/4652 ## 测试 - 二进制一致性验证:对重命名前后的 7 个 kernel 分别编译生成 .o 文件,逐字节对比无差异,确认重命名为纯机械替换、不影响生成代码。 - 无新增/删除逻辑,无需补充功能测试用例。 ## 文档更新 无。本次为纯 API 重命名,不涉及接口语义或使用方式变化。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:重构(AscendC API 重命名同步) ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!8429 | 30 天前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 2 个月前 | |
nn仓打标签 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !8207 merge master into master nn仓打标签 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8207 | 1 个月前 | |
usm资料补充 Co-authored-by: 何金鹏<hejinpeng5@huawei.com> # message auto-generated for no-merge-commit merge: !6859 merge usmMD into master usm资料补充 Created-by: jinpenghe Commit-by: 何金鹏 Merged-by: cann-robot Description: ## 描述 新增UnsortedSegmentMin算子资料 新增UnsortedSegmentMin geir通路example <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3561 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6859 | 2 个月前 | |
docs目录基本概念md中文名改为英文名 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !7857 merge master into master docs目录基本概念md中文名改为英文名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao;chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#4260](https://gitcode.com/cann/ops-nn/issues/4260) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7857 | 1 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
docs目录基本概念md中文名改为英文名 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !7857 merge master into master docs目录基本概念md中文名改为英文名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao;chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#4260](https://gitcode.com/cann/ops-nn/issues/4260) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!7857 | 1 个月前 | |
新增算子st用例 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> Co-authored-by: yu_qinfei<yuqinfei1@h-partners.com> Co-authored-by: ligen<ligen75@h-partners.com> Co-authored-by: yefeicoding<yefei25@huawei.com> # message auto-generated for no-merge-commit merge: !7825 merge st into master 新增算子st用例 Created-by: yefeicoding Commit-by: yefeicoding;yu_qinfei;hw-zhangpanpan;李根;ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4269 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充st ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!7825 | 1 个月前 | |
TF plugin修改1 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !7547 merge nn1 into master TF plugin修改1 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!7547 | 1 个月前 | |
License Change Split2 Co-authored-by: huohuo_wy<wangyan389@huawei.com> # message auto-generated for no-merge-commit merge: !371 merge spilit2License3 into master License Change Split2 Created-by: huohuo_wangyan Commit-by: huohuo_wy Merged-by: cann-robot Description: ## 描述 批量整改文件copyright注释 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/177 ## 测试 COPYRIGHT注释头按新要求刷新 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!371 | 8 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 27 天前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 29 天前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 30 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 29 天前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 28 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 29 天前 | ||
| 27 天前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 29 天前 | ||
| 30 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 29 天前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 28 天前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 30 天前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 8 个月前 |