本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
update: 更新文件 main_simple.yml Co-authored-by: yajie_caroline<chenyajie6@huawei.com> # message auto-generated for no-merge-commit merge: !6796 merge master into master update: 更新文件 main_simple.yml Created-by: yajie_caroline Commit-by: yajie_caroline 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!6796 | 1 个月前 | |
swiglu_group_quant_grad group index统一取消值依赖,clamplimit与正向保持默认值一致 | 1 个月前 | |
修复beta3 包编译nn仓主线失败的问题 Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6846 merge master into master 修复beta3 包编译nn仓主线失败的问题 Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 ### 变更摘要 此 PR 修复了 beta3 包编译 nn 仓主线时失败的问题。问题根因在于 CMake 的 find_path 在查找 OPBASE 头文件时,除了搜索 OPBASE_HEAD_SEARCH_PATHS 指定的路径外,还会回退到系统默认路径,可能找到与预期不匹配的版本导致编译失败。通过添加 NO_DEFAULT_PATH 选项,强制 find_path 仅在指定的搜索路径中查找,避免默认路径的干扰。 ### 主要改动 cmake/modules/FindOPBASE.cmake 添加 NO_DEFAULT_PATH:在 find_path(OPBASE_INC_DIR ...) 调用中新增 NO_DEFAULT_PATH 选项,禁止 CMake 回退到系统默认路径搜索头文件,确保仅使用 OPBASE_HEAD_SEARCH_PATHS 中指定的路径来定位 OPBASE 头文件。 ## 关联的Issue [#3748](https://gitcode.com/cann/ops-nn/issues/3748) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6846 | 1 个月前 | |
BatchNorm插件适配ONNX opset14 Co-authored-by: sunhao_hw<sunhao203@huawei.com> # message auto-generated for no-merge-commit merge: !6819 merge onnx into master BatchNorm插件适配ONNX opset14 Created-by: sunhao_hw Commit-by: sunhao_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ONNX的BatchNorm算子从opset 14开始新增了training_mode 的属性,算子侧已确认支持该属性,ONNX插件需要新适配将这个属性透传算子 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 自验证修改后training_mode传递成功 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6819 | 1 个月前 | |
批量修改md中冗余空格 Co-authored-by: wuyao51511<wuyao61@h-partners.com> # message auto-generated for no-merge-commit merge: !6027 merge master into master 批量修改md中冗余空格 Created-by: wuyao51511 Commit-by: wuyao51511 Merged-by: cann-robot Description: ## 描述 文档空格问题清理 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6027 | 2 个月前 | |
反向卷积dx算子tbe模板解耦 Co-authored-by: Jiaxin_001<jiaxin12@huawei.com> # message auto-generated for no-merge-commit merge: !6289 merge tbe_0618 into master 反向卷积dx算子tbe模板解耦 Created-by: Jiaxin_001 Commit-by: Jiaxin_001 Merged-by: cann-robot Description: ## 描述 当前反向卷积dx相关算子都走了基本块的逻辑,早起的tbe模板已经不需要了,需要解耦并删除tbe模板。删除了代码中host、kernel侧tbe对应的base文件,将耦合的参数和函数迁移到内积模板,后续内积模板为base模板。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3710 ## 测试 存量用例对应的smoke用例、daily用例不受影响。 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6289 | 1 个月前 | |
feat(sparse_apply_adagrad_v2 ): add AscendC sparse_apply_adagrad_v2 operator implementation Co-authored-by: rsj007<renshuojian@huawei.com> # message auto-generated for no-merge-commit merge: !6425 merge master into master feat(sparse_apply_adagrad_v2 ): add AscendC sparse_apply_adagrad_v2 operator implementation Created-by: rsj007 Commit-by: rsj007 Merged-by: cann-robot Description: ## 描述 add AscendC sparse_apply_adagrad_v2 operator implementation ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3590 ## 测试 黄区ttk测试ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6425 | 2 个月前 | |
bugfix fast_kernel_launch 偶现nlohmann_json找不到的错误 Co-authored-by: qq_45721369<shenyujie15@huawei.com> # message auto-generated for no-merge-commit merge: !6573 merge new_problem into master bugfix fast_kernel_launch 偶现nlohmann_json找不到的错误 Created-by: qq_45721369 Commit-by: qq_45721369 Merged-by: cann-robot Description: ## 描述 CMakeLists.txt - 加入 ${JSON_INCLUDE} 才能让编译器找到头文件 func.cmake - add_dependencies 确保编译等下载完成 nlohmann_json.cmake - find_path 配置时找不到文件会把 JSON_INCLUDE 设为 NOTFOUND,用 set() + if(EXISTS ...) 替代 conv3d_v2_template.h tiling结构体适配 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue [#3573](https://gitcode.com/cann/ops-nn/issues/3573) <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。-->  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6573 | 2 个月前 | |
新建GatherV2算子Ascend C实现 Co-authored-by: tieyutong<tieyutong@huawei.com> # message auto-generated for no-merge-commit merge: !6390 merge upload-gather-v2-ascendc-20260623 into master 新建GatherV2算子Ascend C实现 Created-by: tieyutong Commit-by: tieyutong Merged-by: cann-robot Description: ## 描述 本 PR 新增 experimental/index/gather_v2 目录,提供 GatherV2 experimental Ascend C 算子实现与配套 UT。 主要改动: - 新增 GatherV2 experimental 目录结构,包含 op_api、op_graph、op_host、op_kernel 和 tests。 - 新增 aclnn 接口 aclnnGatherV2GetWorkspaceSize / aclnnGatherV2,完成参数校验、连续化处理和 Level0 调用。 - 新增 Level0 GatherV2 接口,当前按 Ascend C AICore launcher 路径接入。 - 新增 op_graph IR 注册,包含 x、indices、axis 输入,y 输出,以及 batch_dims、negative_index_support 属性。 - 新增 op_host dtype/format 注册、InferShape 和 Tiling 接入。 - 新增 AICore kernel 骨架及 tiling data/key 定义。 - 补齐 op_host、op_api UT。 - 更新 README,参考 experimental/index/index/README.md 的结构补齐产品支持、功能说明、参数说明、约束说明和调用说明。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3497 ## 测试 | 套件 | 用例数 | 结果 | | :--- | ---: | :--- | | experimental GatherV2 op_host UT | 1 | 1/1 Pass | | experimental GatherV2 op_graph UT | 0 | 0/0 Pass | | experimental GatherV2 op_api UT | 26 | 26/26 Pass | | 合计 | 27 | 27/27 Pass | ATK 结果: | 套件 | 用例数 | 结果 | | :--- | ---: | :--- | | Accu | 30005 | 30005/30005 Pass。 | | ACCU_over_5000w / Pangu | 7 | 7/7 Pass。 | | Perf | 24 | 22/24 达到 0.6 倍要求;2/24 低于 0.6:case 248=0.2960、case 841=0.5127。平均 device 性能比 0.8577。 | | Sanitizer | 720 | 720/720 Pass。 | | Special | 155 | 152/155 Pass。失败 3/155:129、133、137,均为 ATK CPU 标杆 np.take 对空 gather 轴 + 非空 index 抛 IndexError,非 GatherV2 算子侧错误。 | | Abnormal | 2 | 2/2 Pass。 | ## 文档更新 更新了 experimental/index/gather_v2/README.md。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6390 | 1 个月前 | |
fix foreach operator output do not support no-contiguous Co-authored-by: alfengyuan<yyfgdut@gmail.com> # message auto-generated for no-merge-commit merge: !6839 merge master into master fix foreach operator output do not support no-contiguous Created-by: alfengyuan Commit-by: alfengyuan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> foreach类算子,输出不支持非连续 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3727 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 已经实测不支持,纯文档修改 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 所有foreach类算子文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!6839 | 1 个月前 | |
revise kernel compile options Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !5202 merge master into master revise kernel compile options Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 kernel配置项整改:foreach,hash,loss,rnn,vfusion ## 关联的Issue [#1985](https://gitcode.com/cann/ops-nn/issues/1985) ## 测试 本地编译,对比修改前后.o ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5202 | 2 个月前 | |
aclnnIndexPutImpl接口bool类型校验拦截 Co-authored-by: surezz<zhangyuwei31@huawei.com> # message auto-generated for no-merge-commit merge: !6817 merge pr_6347 into master aclnnIndexPutImpl接口bool类型校验拦截 Created-by: surezz Commit-by: surezz Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 增加aclnnIndexPutImpl接口bool类型的shape校验 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [Bug-Report|缺陷反馈]: 增加aclnnIndexPutImpl接口bool类型的shape校验 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了index/index_put_v2/docs/aclnnIndexPutImpl.md文档,增加了约束说明 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6817 | 1 个月前 | |
修复文档中的错误,提升算子易用性 Co-authored-by: jisongyuan@h-partners.com<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !6851 merge master into master 修复文档中的错误,提升算子易用性 Created-by: ji-songyuan Commit-by: jisongyuan@h-partners.com Merged-by: cann-robot Description: ## 描述 修复文档中的错误,提升算子易用性 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#3683](https://gitcode.com/cann/ops-nn/issues/3683) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 只更新文档 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> loss/smooth_l1_loss_grad_v2/docs/aclnnSmoothL1LossBackward.md optim/apply_adam_w_quant/README.md optim/apply_fused_ema_adam/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6851 | 1 个月前 | |
[fix]:cv自动融合规避TENSOR_LEVEL相关模板,非指定强制走BASIC_API Co-authored-by: yangzw653<yangzongwen1@huawei.com> # message auto-generated for no-merge-commit merge: !6644 merge master into master [fix]:cv自动融合规避TENSOR_LEVEL相关模板,非指定强制走BASIC_API Created-by: yangzw653 Commit-by: yangzw653 Merged-by: cann-robot Description: ## 描述 [fix]:cv自动融合规避TENSOR_LEVEL相关模板,非指定强制走BASIC_API batch_matmul_v3_asw_tiling.cpp场景不使用TENSOR_LEVEL时走HIGH_LEVEL而非BASIC_LEVEL ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 batch_matmul_v3_asw_tiling场景不使用TENSOR_LEVEL时走HIGH_LEVEL而非BASIC_LEVEL ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!6644 | 1 个月前 | |
删除 AddLayerNorm 相关 FusionPass Co-authored-by: du-hua1024<duhua2@huawei.com> # message auto-generated for no-merge-commit merge: !6769 merge master into master 删除 AddLayerNorm 相关 FusionPass Created-by: du-hua1024 Commit-by: du-hua1024 Merged-by: cann-robot Description: ## 描述 AddLayerNorm 相关 FusionPass 在迁移中对框架有新接口诉求,该接口不能满足老版本运行时兼容要求;且该pass有legacy存量pass功能可用,因此关闭该pass。 删除 AddLayerNormFusionPass 和 AddLayerNormV4FusionPass 相关逻辑,避免继续注册和编译这两类图融合规则。 本次同步移除: - norm/add_layer_norm/op_graph/fusion_pass 下的 pass 实现、声明及专用 helper/兼容头文件 - norm/add_layer_norm/tests/ut/op_graph 下对应 fusion pass 单测和 UT 入口 ## 关联的Issue 无 ## 测试 - layernorm不会命中删除的fusion pass ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:删除 AddLayerNorm 图融合 pass 相关逻辑 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!6769 | 1 个月前 | |
修复文档中的错误,提升算子易用性 Co-authored-by: jisongyuan@h-partners.com<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !6851 merge master into master 修复文档中的错误,提升算子易用性 Created-by: ji-songyuan Commit-by: jisongyuan@h-partners.com Merged-by: cann-robot Description: ## 描述 修复文档中的错误,提升算子易用性 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#3683](https://gitcode.com/cann/ops-nn/issues/3683) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 只更新文档 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> loss/smooth_l1_loss_grad_v2/docs/aclnnSmoothL1LossBackward.md optim/apply_adam_w_quant/README.md optim/apply_fused_ema_adam/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6851 | 1 个月前 | |
perf(max_pool3d_grad_with_argmax): remove dead helpBuf_ and merge fullLoad VEC_SCOPE Co-authored-by: liuchuangdev<liuchuang51@huawei.com> # message auto-generated for no-merge-commit merge: !6377 merge perf/maxpool3dgradwithargmax-optimize into master perf(max_pool3d_grad_with_argmax): remove dead helpBuf_ and merge fullLoad VEC_SCOPE Created-by: liuchuangdev Commit-by: liuchuangdev Merged-by: cann-robot Description: ## 描述 优化 MaxPool3DGradWithArgmax 算子在 arch35 上的 SIMD 内核性能,主要改动如下: ### 1. DataCopy 优化 - 将原来基于 LoopMode 的多层循环 DataCopy(按 d/h/high 维度分循环搬运)改为单次 DataCopy 整块 D×H×W 平面,减少 DataCopy 调度开销 - 新增 dhwPlaneAligned_ 成员,将 D×H×W 平面对齐到 MAX_DATA_NUM_IN_ONE_BLOCK,使单次 DataCopy 可行 ### 2. 移除 helpBuf_ 辅助缓冲区 - 删除 TBuf<QuePosition::VECCALC> helpBuf_ 及所有 fullLoad 函数的 helpAddr 参数 - 索引计算从 UB 预计算表改为寄存器直接生成(GenInitial3DIndicesFast、GenInitial4DIndicesFast 等),消除 DataCopy 开销 ### 3. 快速除法优化 - 坐标索引生成使用 PrecomputeDiv/DivMagic 快速整数除法替代 MicroAPI::Div - high 维输出索引计算使用 GetUintDivMagicAndShift + FastDivImpl 替代 MicroAPI::Div ### 4. 循环合并 - fullLoadMultipleLineProcessVF2:将 4 个 for highBlockIdx 循环两两合并为 2 个,4 个尾部循环两两合并为 2 个,减少循环开销和重复 offset 计算 - 非全载模板 multipleLineProcessVF2 同步应用循环合并优化 ### 涉及文件 - max_pool3d_grad_with_argmax_simd.h:新增 fast div 工具函数 - max_pool3d_grad_with_argmax_simd_full_load.h:全载模板核心优化 - max_pool3d_grad_with_argmax_simd_impl.h:非全载模板同步优化 - max_pool3d_grad_with_argmax_simd_tiling.cpp:tiling 参数适配 ## 关联的Issue [#3739](https://gitcode.com/cann/ops-nn/issues/3739) ## 测试 性能用例测试、门槛用例回归、冒烟测试 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6377 | 1 个月前 | |
修复DynamicQuantUpdateScatterV2和MultiAddRmsNormDynamicQuant算子日志等级问题 Co-authored-by: wkyan<yanwenkai@huawei.com> # message auto-generated for no-merge-commit merge: !6770 merge 0630_fu into master 修复DynamicQuantUpdateScatterV2和MultiAddRmsNormDynamicQuant算子日志等级问题 Created-by: wkyan Commit-by: wkyan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复DynamicQuantUpdateScatterV2和MultiAddRmsNormDynamicQuant算子日志等级问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3738 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6770 | 1 个月前 | |
补充rnn/dynamic_rnn和rnn/thnn_fused_lstm_cell中缺失的ut Co-authored-by: zhouyuanhang30083383<zhouyuanhang4@h-partners.com> # message auto-generated for no-merge-commit merge: !5308 merge master_z30083383_ISSUE2118 into master 补充rnn/dynamic_rnn和rnn/thnn_fused_lstm_cell中缺失的ut Created-by: VoyageZhou Commit-by: zhouyuanhang30083383 Merged-by: cann-robot Description: ## 描述 补充rnn/dynamic_rnn和rnn/thnn_fused_lstm_cell中缺失的ut ## 关联的Issue [Issue 2118](https://gitcode.com/cann/ops-nn/issues/2118) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5308 | 1 个月前 | |
mm golden for ttk Co-authored-by: he_kan<hekan4@huawei.com> # message auto-generated for no-merge-commit merge: !6729 merge matmul into master mm golden for ttk Created-by: he_kan Commit-by: he_kan Merged-by: cann-robot Description: ## 描述 新增matmul的非量化类算子的个golden, <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3725 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6729 | 1 个月前 | |
remove the dependency of op_graph on nnopbase Co-authored-by: biabu111<hebaojing1@huawei.com> # message auto-generated for no-merge-commit merge: !5716 merge master into master remove the dependency of op_graph on nnopbase Created-by: biabu111 Commit-by: biabu111 Merged-by: cann-robot Description: ## 描述 解除nn仓op_graph依赖了nnopbase <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2753 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:架构腐化优化 See merge request: cann/ops-nn!5716 | 1 个月前 | |
ResetMask 修改 Co-authored-by: yuhao_<yuhao93@huawei.com> # message auto-generated for no-merge-commit merge: !6692 merge msda-issue into master ResetMask 修改 Created-by: yuhao_ Commit-by: yuhao_ 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!6692 | 2 个月前 | |
update clang-format Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !6193 merge master into master update clang-format Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 更新代码仓clang-format 配置: Align:参数换行时,会与左括号后的第一个参数对齐 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3389 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6193 | 2 个月前 | |
index kernel ut Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !5501 merge master into master index kernel ut Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> Kernel UT 中存在大量分散的测试数据准备代码,使用 system() 调用执行 shell 命令: 重复样板代码多:至少 131 个文件包含 system() 调用 依赖 GNU/Linux 工具:cp、chmod、rm、get_current_dir_name(非跨平台) 错误定位困难:system() 返回码粗糙,无法区分路径错误、权限问题、Python缺失等 维护成本高:同一套逻辑散落在大量算子测试中 修改方案 统一测试数据生命周期管理:拷贝、清理、生成、比对 改善报错体验:使用项目标准日志宏 OP_LOGI/OP_LOGE,区分路径错误、脚本执行失败等 降低贡献门槛:开发者只需声明数据目录和参数 本次修改对index 目录下的部分算子 迁移过程中 代码格式做整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2337 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5501 | 2 个月前 | |
index kernel ut Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !5501 merge master into master index kernel ut Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> Kernel UT 中存在大量分散的测试数据准备代码,使用 system() 调用执行 shell 命令: 重复样板代码多:至少 131 个文件包含 system() 调用 依赖 GNU/Linux 工具:cp、chmod、rm、get_current_dir_name(非跨平台) 错误定位困难:system() 返回码粗糙,无法区分路径错误、权限问题、Python缺失等 维护成本高:同一套逻辑散落在大量算子测试中 修改方案 统一测试数据生命周期管理:拷贝、清理、生成、比对 改善报错体验:使用项目标准日志宏 OP_LOGI/OP_LOGE,区分路径错误、脚本执行失败等 降低贡献门槛:开发者只需声明数据目录和参数 本次修改对index 目录下的部分算子 迁移过程中 代码格式做整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2337 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5501 | 2 个月前 | |
批量修改md中冗余空格 Co-authored-by: wuyao51511<wuyao61@h-partners.com> # message auto-generated for no-merge-commit merge: !6027 merge master into master 批量修改md中冗余空格 Created-by: wuyao51511 Commit-by: wuyao51511 Merged-by: cann-robot Description: ## 描述 文档空格问题清理 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6027 | 2 个月前 | |
ccache option Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !6146 merge master into master ccache option Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 构建增加ccache 参数控制,支持编译时禁用ccache, 构建时灵活选择缓存方式 ccache=VALUE "Enable or disable ccache compilation acceleration, VALUE options: on/off/true/false/disable, Default: on" Example: --ccache=off to disable ccache ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3363 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 测试点清单 测试 1: 默认行为(不传参数) bash build.sh --ophost 预期: - CMake 日志显示 Enable ccache ON 或 TRUE - 如果系统有 ccache,编译使用 ccache 加速 测试 2: 禁用 ccache - 使用 off bash build.sh --ophost --ccache=off 预期: - CMake 日志显示 Enable ccache FALSE - CMakeLists.txt 中 find_program(CCACHE_PROGRAM ccache) 不执行 - 编译不使用 ccache 测试 3: 禁用 ccache - 使用 false bash build.sh --ophost --ccache=false 预期: 同测试 2 测试 4: 禁用 ccache - 使用 disable bash build.sh --ophost --ccache=disable 预期: 同测试 2 测试 5: 验证 CMakeCache.txt bash build.sh --ophost --ccache=off grep ENABLE_CCACHE build/CMakeCache.txt 预期输出: ENABLE_CCACHE:BOOL=FALSE 测试 6: 验证 cmake_init() 参数传递 bash build.sh --pkg --soc=ascend910b --ccache=off 验证点: 查看 cmake_init() 执行时的日志输出,确认 -DENABLE_CCACHE=FALSE 参数已传递 测试 7: 其他编译模式 ### 测试各种编译模式 bash build.sh --pkg --soc=ascend910b --ccache=off bash build.sh --opkernel --soc=ascend910b --ccache=off bash build.sh --opapi --ccache=off bash build.sh -u --ccache=off 预期: 所有模式都正确传递 ENABLE_CCACHE 参数 测试 8: 参数无效值处理 bash build.sh --ophost --ccache=invalid_value 预期: - ENABLE_CCACHE 保持默认值 TRUE - CMake 日志显示 Enable ccache ON ccache -s 统计ccache命中情况 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6146 | 2 个月前 | |
社区贡献 Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !6366 merge master into master 社区贡献 Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 更新完善社区贡献的流程,增加新增需求到sig例会评审的过程。 补充各类场景的贡献说明。 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> NA ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 更新完善社区贡献的流程,增加新增需求到sig例会评审的过程。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6366 | 2 个月前 | |
init | 10 个月前 | |
index kernel ut Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !5501 merge master into master index kernel ut Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> Kernel UT 中存在大量分散的测试数据准备代码,使用 system() 调用执行 shell 命令: 重复样板代码多:至少 131 个文件包含 system() 调用 依赖 GNU/Linux 工具:cp、chmod、rm、get_current_dir_name(非跨平台) 错误定位困难:system() 返回码粗糙,无法区分路径错误、权限问题、Python缺失等 维护成本高:同一套逻辑散落在大量算子测试中 修改方案 统一测试数据生命周期管理:拷贝、清理、生成、比对 改善报错体验:使用项目标准日志宏 OP_LOGI/OP_LOGE,区分路径错误、脚本执行失败等 降低贡献门槛:开发者只需声明数据目录和参数 本次修改对index 目录下的部分算子 迁移过程中 代码格式做整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2337 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5501 | 2 个月前 | |
readme添加committer链接 Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !6810 merge kernel into master readme添加committer链接 Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 readme中添加committer链接,供开发者查看 ## 关联的Issue [#3726](https://gitcode.com/cann/ops-nn/issues/3726) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 更新了README.md文件。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6810 | 1 个月前 | |
nn仓doc tools扫描内容修改 Co-authored-by: caiwenwen<caiwenwen6@h-partners.com> # message auto-generated for no-merge-commit merge: !3414 merge master into master nn仓doc tools扫描内容修改 Created-by: caiwenwen Commit-by: caiwenwen Merged-by: cann-robot Description: ## 描述 修改markdown语法和链接,1000个左右。 ## 关联的Issue 关联Issue [#1783](https://gitcode.com/cann/ops-nn/issues/1783) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 更新了README.md、gitcode、cmake、common、control、conv、docs、examples、experimental、hash、index、loss、matmul、optim、pooling等文件。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!3414 | 4 个月前 | |
fix Third_Party_Open_Source_Software_List.yaml Co-authored-by: liuyufan0725<liuyufan9@huawei.com> # message auto-generated for no-merge-commit merge: !1879 merge fix_yaml into master fix Third_Party_Open_Source_Software_List.yaml Created-by: liuyufan0725 Commit-by: liuyufan0725 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 更新三方依赖清单Third_Party_Open_Source_Software_List.yaml 1、增加protobuf 2、将nlohmann/json修改为json ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#1042](https://gitcode.com/cann/ops-nn/issues/1042) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 不涉及 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了Third_Party_Open_Source_Software_List.yaml ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!1879 | 6 个月前 | |
【描 述】 eigen update to 5.0.0 Co-authored-by: j00427146<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !1152 merge master into master 【描 述】 eigen update to 5.0.0 Created-by: jialimin1 Commit-by: j00427146 Merged-by: cann-robot Description: ## 描述 现开源软件eigen 3.4.0 EOM,Eigen 从3.4.0版本升级到5.0.0,解决生命周期问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/975 https://gitcode.com/cann/ops-nn/issues/389 ## 测试   ## 文档更新 SECURITY.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:Update Eigen to 5.0.0 See merge request: cann/ops-nn!1152 | 6 个月前 | |
ccache option Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !6146 merge master into master ccache option Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 构建增加ccache 参数控制,支持编译时禁用ccache, 构建时灵活选择缓存方式 ccache=VALUE "Enable or disable ccache compilation acceleration, VALUE options: on/off/true/false/disable, Default: on" Example: --ccache=off to disable ccache ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3363 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 测试点清单 测试 1: 默认行为(不传参数) bash build.sh --ophost 预期: - CMake 日志显示 Enable ccache ON 或 TRUE - 如果系统有 ccache,编译使用 ccache 加速 测试 2: 禁用 ccache - 使用 off bash build.sh --ophost --ccache=off 预期: - CMake 日志显示 Enable ccache FALSE - CMakeLists.txt 中 find_program(CCACHE_PROGRAM ccache) 不执行 - 编译不使用 ccache 测试 3: 禁用 ccache - 使用 false bash build.sh --ophost --ccache=false 预期: 同测试 2 测试 4: 禁用 ccache - 使用 disable bash build.sh --ophost --ccache=disable 预期: 同测试 2 测试 5: 验证 CMakeCache.txt bash build.sh --ophost --ccache=off grep ENABLE_CCACHE build/CMakeCache.txt 预期输出: ENABLE_CCACHE:BOOL=FALSE 测试 6: 验证 cmake_init() 参数传递 bash build.sh --pkg --soc=ascend910b --ccache=off 验证点: 查看 cmake_init() 执行时的日志输出,确认 -DENABLE_CCACHE=FALSE 参数已传递 测试 7: 其他编译模式 ### 测试各种编译模式 bash build.sh --pkg --soc=ascend910b --ccache=off bash build.sh --opkernel --soc=ascend910b --ccache=off bash build.sh --opapi --ccache=off bash build.sh -u --ccache=off 预期: 所有模式都正确传递 ENABLE_CCACHE 参数 测试 8: 参数无效值处理 bash build.sh --ophost --ccache=invalid_value 预期: - ENABLE_CCACHE 保持默认值 TRUE - CMake 日志显示 Enable ccache ON ccache -s 统计ccache命中情况 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6146 | 2 个月前 | |
soft_margin_loss_grad修改魔鬼数字和初始化问题,classfy_rule补齐threshold_grad_v2_d,exp目录删除hard_sigmod算子 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !6733 merge 0628 into master soft_margin_loss_grad修改魔鬼数字和初始化问题,classfy_rule补齐threshold_grad_v2_d,exp目录删除hard_sigmod算子 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> soft_margin_loss_grad修改魔鬼数字和初始化问题,classfy_rule补齐threshold_grad_v2_d,exp目录删除hard_sigmod算子 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3630 https://gitcode.com/cann/ops-nn/issues/3445 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6733 | 2 个月前 | |
批量修改md中冗余空格 Co-authored-by: wuyao51511<wuyao61@h-partners.com> # message auto-generated for no-merge-commit merge: !6027 merge master into master 批量修改md中冗余空格 Created-by: wuyao51511 Commit-by: wuyao51511 Merged-by: cann-robot Description: ## 描述 文档空格问题清理 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!6027 | 2 个月前 | |
fix(docs,deps,ut): 完善全量编译说明、Debian GCC 安装与 UT 状态码兼容 Co-authored-by: root<yangyang306@hisilicon.com> # message auto-generated for no-merge-commit merge: !5110 merge master into master fix(docs,deps,ut): 完善全量编译说明、Debian GCC 安装与 UT 状态码兼容 Created-by: yangyang016 Commit-by: root Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 修复社区体验测试中反馈的三类问题:文档缺少全量编译指引、Debian 系发行版依赖安装失败、以及 UT 公共头文件中 ACLNN_SUCCESS 未定义导致 nn_op_host_ut 编译失败。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> - Fixes #2790 — 文档缺少全量编译指导与耗时说明 - Fixes #2793 — install_deps.sh 在 Debian 13 等系统硬编码 gcc-9 导致安装失败 - Fixes #2794 — ut_string_utils.h 使用未定义的 ACLNN_SUCCESS 导致 UT 编译失败 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> - [x] bash -n install_deps.sh 语法检查通过 - [x] 在无 ACLNN_SUCCESS 宏的 mock 头文件下对 ut_string_utils.h 做语法检查通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> - **docs/QUICKSTART.md**:明确快速入门默认采用**单算子编译**(--ops),并引导需要整库构建时查阅 docs/zh/install/compile.md。 - **docs/zh/install/compile.md**:在「ops-nn包」章节增加全量编译说明:耗时与机器配置、-j 并行度及联网依赖相关;建议日常开发优先单算子编译。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5110 | 3 个月前 | |
[Docs] modify profile of quick_install Co-authored-by: wangzitao_leo<wangzitao4@huawei.com> # message auto-generated for no-merge-commit merge: !4156 merge profile_0423 into master [Docs] modify profile of quick_install Created-by: wangzitao_leo Commit-by: wangzitao_leo Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 更新资料中: 1. --help时新增打印--soc支持的硬件平台; 2. quick_install指导资料中对于第三方依赖的安装资料调整,使得条理更加清晰,资料更为易用。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> Issue [#2274](https://gitcode.com/cann/ops-nn/issues/2274) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 1. 根据资料安装第三方依赖 2. bash build.sh --help时打印--soc支持硬件平台列表 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 1. README.md 2. docs/zh/install/compile.md 3. docs/zh/install/quick_install.md 4. requirements.txt ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4156 | 4 个月前 | |
Remove the dependency asc-tool Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !5220 merge eng into master Remove the dependency asc-tool Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 Remove the dependency asc-tool ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 工程编译验证 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5220 | 3 个月前 |
ops-nn
🔥Latest News
- [2026/05] 优化kernel编译配置项,减少simplified_key和ascendc_config配置文件(!3330)。
- [2026/05] 引入ops-tensor,基于分层结构优化Cube类算子,减少偏移量计算和简化指令参数(!5036)。
- [2026/05] 发布生态算子的精度验收标准(!4572)。
- [2026/03] 开源算子支持下一代芯片:Ascend950PR(!450)。
- [2026/03] 新增<<<>>>的算子开发样例(!620)。
- [2026/03] 低bit类算子和融合算子支持更多数据类型:fp8/mxfp8/hifp8/mxfp4等,并支持pertensor/perchannel/pertoken/pergroup/perblock等不同量化和组合方式:全量化融合算子:quant_batch_matmul_v4,伪量化融合算子:weight_quant_batch_matmul_v2。
- [2026/03] 支持SIMD/SIMT新同构编程算子实现:[MapIndex](#660),[ScatterSub](#710)。
- [2026/01] 新增QuickStart,指导新手零基础入门算子项目部署(支持Docker环境)、算子开发和贡献流程。
- [2025/12] 开源算子支持Ascend 950PR/Ascend 950DT/KirinX90,可以通过CANN Simulator仿真工具开发调试;优化指南类文档,聚焦算子开发指南,明确最小交付件和关键示例代码,针对Ascend/samples仓算子提供迁移本项目的指导;新支持稀疏4:2量化matmul算子,针对稀疏矩阵开启硬件加速能力。
- [2025/11] 新支持算子index_fill、masked_scatter、scatter、tf_scatter_add、fused_cross_entropy_loss_with_max_sum。
- [2025/10] 新增experimental目录,完善贡献指南,支持开发者调试并贡献自定义算子。
- [2025/09] ops-nn项目首次上线,开源算子支持Atlas A2/A3系列产品。
🚀概述
ops-nn是CANN(Compute Architecture for Neural Networks)算子库中提供神经网络计算能力的高阶算子库,包括matmul类、activation类等算子,算子库架构图如下:

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