本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
子流水线支持更新门禁代码 Co-authored-by: jinyijian<jinyijian1@huawei.com> # message auto-generated for no-merge-commit merge: !4515 merge CI into master 子流水线支持更新门禁代码 Created-by: jinyijian Commit-by: jinyijian Merged-by: cann-robot Description: ## 描述 子流水线支持更新门禁代码 当门禁包含子流水线时,如果没有这个配置,会导致子流水线中任务无法更新最新代码,使用落后的代码跑门禁 ## 关联的Issue ## 测试 ## 文档更新 无 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4515 | 3 个月前 | |
[CANNBot]HardSigmoidGrad适配Ascend950 Co-authored-by: CANNBot<cannbot@huawei.com> # message auto-generated for no-merge-commit merge: !5034 merge builtin into master [CANNBot]HardSigmoidGrad适配Ascend950 Created-by: Coder_Nerd Commit-by: CANNBot Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 使用CANNBot开发HardSigmoidGrad适配Ascend950 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2789 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 使用 ops-test-kit 测试513条,全部通过 二级冒烟 5600 通过 OBP冒烟 22240 通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5034 | 3 个月前 | |
add mmpa dependencies Co-authored-by: zihan0007<mazihan1@huawei.com> # message auto-generated for no-merge-commit merge: !5070 merge mmpa into master add mmpa dependencies Created-by: zihan0007 Commit-by: zihan0007 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> gcc11场景依赖mmpa模块,需要引入。解决修改gcc版本之后存在的未定义mmDladdr符号而导致的core dump问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> Issue #2796 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 修改cmake引入mmpa ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5070 | 3 个月前 | |
【qbmmv3】tiling 重构 Co-authored-by: smdbha<panzhijie2@huawei.com> # message auto-generated for no-merge-commit merge: !3690 merge tiling_refactor into master 【qbmmv3】tiling 重构 Created-by: smdbha Commit-by: smdbha Merged-by: cann-robot Description: ## 描述 本次 PR 针对 QuantBatchMatmulV3 与 QuantBatchMatmulInplaceAdd 的 tiling 逻辑进行结构化重构,主要解决原 arch35 adaptive sliding window tiling 中策略选择、capability 判断、BaseBlock 计算、L1 tiling、full-load 分析、tail split、Basic API tiling data 设置等逻辑耦合较高、复用困难的问题。 主要改动如下: - QuantBatchMatmulV3: - 新增按 NpuArch + priority 分发的 tiling 策略选择逻辑,并在 compileInfo 中记录 npuArch。 - 将 adaptive sliding window tiling 拆分为 MX basic-api、perblock basic-api、cube basic-api、mix、cube 等独立策略类。 - 抽取 BaseBlockCalculator、L1TilingDataCalculator、QuantBatchMatMulV3TilingUtil,复用 BaseBlock、L1 tiling、kernel type、bias mode、dtype/shape checker 等公共逻辑。 - 维护 DAV_3510/DAV_RESV 对应的策略优先级,保留原有 arch20 等路径。 - 适配 QuantBatchMatmulV4、FusedQuantMatMul 对重构后 ASW tiling 类的引用。 - QuantBatchMatmulInplaceAdd: - 复用 QuantBatchMatmulV3 basic-api tiling 能力。 - 新增 QuantBatchMatmulInplaceAddHelper,统一输入解析、dtype/shape 校验、tiling data 初始化与 V3 basic-api tiling data 拷贝。 - 新增 MX basic-api 与 Cube basic-api tiling 策略,覆盖 mxFP8 与 HIFLOAT8 TT 场景。 - 更新 op_host UT,补充 HIFLOAT8 TT tiling 用例。 ## 关联的Issue 关联 Issue: https://gitcode.com/cann/ops-nn/issues/2524 ## 测试 - 更新 matmul/quant_batch_matmul_inplace_add/tests/ut/op_host/test_quant_batch_matmul_inplace_add_tiling.cpp,复用 QuantBatchMatmulV3CompileInfo,补充 HIFLOAT8 TT tiling 用例。 - 验证范围覆盖 QuantBatchMatmulV3 arch35 多策略 tiling 分发、mxFP8 basic-api、perblock basic-api、cube basic-api、mix/cube ASW 路径,以及 QuantBatchMatmulInplaceAdd mxFP8/HIFLOAT8 TT basic-api tiling。 ## 文档更新 无文档更新,本次为 tiling 代码重构与 UT 适配。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:tiling重构 See merge request: cann/ops-nn!3690 | 3 个月前 | |
feat: migrate aicpu opdef json payloads to cpp defs Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !4390 merge def into master feat: migrate aicpu opdef json payloads to cpp defs Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 当前部分 AICPU 算子的 opdef 仍以 JSON 形式维护,构建时需要额外收集 JSON 文件,算子定义入口和维护方式不统一,不利于后续持续迁移和统一管理。 本次 PR 做了什么: 1. 将 Elu、Assert、Identity、GatherV2、ReverseSequence、ScatterElements、TensorScatterUpdate、Where 等 AICPU 算子的 opdef 从 JSON 迁移为 C++ 定义文件。 2. 新增 common/inc/aicpu/aicpu_op_def.h,补充 AICPU opdef 的公共声明。 3. 调整相关 CMakeLists.txt 以及 cmake/opbuild.cmake、cmake/symbol.cmake,支持 *_aicpu_def.cpp 的统一收集和构建。 4. 新增 scripts/kernel/binary_script/aicpu_parser_ini_to_json.py,补齐相关脚本能力。 ## 关联的Issue - 关联 Issue #2438 - https://gitcode.com/cann/ops-nn/issues/2438 ## 测试 1. 已核对 PR 对应提交为 08453e64840072937d255e0ad154825266439ba4。 2. 已重新执行 cmake -S /home/jiumao/open/ops-nn -B /home/jiumao/open/ops-nn/build_custom,完成 build_custom 配置刷新。 3. 已执行 cmake --build /home/jiumao/open/ops-nn/build_custom --target gen_aicpu_json_from_opdef -j8,重新生成 build_custom/autogen/aicpu_kernel.ini、build_custom/aicpu_opdef_kernel.json、build_custom/cust_aicpu_kernel.json。 4. 已手动执行 python3 scripts/kernel/binary_script/aicpu_parser_ini_to_json.py build_custom/autogen/aicpu_kernel.ini /tmp/ops_nn_aicpu_verify.json,输出 Compile op info cfg successfully.。 5. 已执行 python3 -m unittest tests/scripts/parser_ini_guard/test_aicpu_parser_ini_to_json.py,6/6 用例通过。 6. 已完成 before/after JSON 对比,8 个算子的金标准字段全部保留,无字段缺失。 7. 已完成 I/O normalized vs canndev 校验,Elu、Assert、Identity、GatherV2、ReverseSequence、ScatterElements、TensorScatterUpdate、Where 与 canndev 基线一致。 8. 本次按 skill 仅验证 custom 路径;未修改 parser_ini.py,因此 AICore before/after 回归按口径豁免。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4390 | 3 个月前 | |
[conv]修复代码检视识别的group preload特性问题 Co-authored-by: cm<wangcimeng@huawei.com> # message auto-generated for no-merge-commit merge: !5163 merge __fix__ into master [conv]修复代码检视识别的group preload特性问题 Created-by: wangcimeng Commit-by: cm Merged-by: cann-robot Description: ## 描述 arch5102 暂不支持group opt preload能力,当前intf层已隔离不使能,但算子实现未隔离引入问题 ## 关联的Issue [#2837](https://gitcode.com/cann/ops-nn/issues/2837) ## 测试 已针对问题场景进行验证,精度可以通过 ## 文档更新 NA ## 类型标签 <!-- [x] 表示选中 --> - [X] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5163 | 3 个月前 | |
[CANNBot]HardSigmoidGrad适配Ascend950 Co-authored-by: CANNBot<cannbot@huawei.com> # message auto-generated for no-merge-commit merge: !5034 merge builtin into master [CANNBot]HardSigmoidGrad适配Ascend950 Created-by: Coder_Nerd Commit-by: CANNBot Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 使用CANNBot开发HardSigmoidGrad适配Ascend950 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2789 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 使用 ops-test-kit 测试513条,全部通过 二级冒烟 5600 通过 OBP冒烟 22240 通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5034 | 3 个月前 | |
remove simplified_key, default value is 0 Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !4892 merge master into master remove simplified_key, default value is 0 Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 当simplified_key中属性只有default=0,且ascendc_config中配置了算子,那么simplified_key.ini文件可以删除,因为默认值为0. 修改了ascendc_config.json文件,将算子host/config中配置了soc,但是未在ascendc_config.json中的算子补充上去。 ## 关联的Issue [#1985](https://gitcode.com/cann/ops-nn/issues/1985) ## 测试 编译950、910bpass ## 文档更新 更新了ascendc_config.json配置了算子的simplified_key的ini文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4892 | 3 个月前 | |
新增Elu算子(Ascend C) Co-authored-by: tieyutong<tieyutong@huawei.com> # message auto-generated for no-merge-commit merge: !4846 merge experimental-activation-elu-20260514 into master 新增Elu算子(Ascend C) Created-by: tieyutong Commit-by: tieyutong Merged-by: cann-robot Description: ## 描述 新增ascend c架构的elu算子至experimental/activation/elu目录下 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/2698 ## 测试 | 类型 | 条数 | 通过率 / 结论 | |------|------|----------------| | Memacllocate | 2 / 2 | 100%,Pass | | Abnormal | 15 / 15 | 100%,Pass | | Dete | 40 / 40 | 100%,Pass | | Network | 40 / 40 | 100%,Pass | | Sanitizer | 8 / 8 | 100%,Pass | | Special | 32 / 32 | 100%,Pass | | Perf | 8 / 8 | 100%,Pass | | Accu_full | 2800 / 2800 | 100%,Pass | ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x ] 新特性 - [ ] 性能优化 - [ x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4846 | 3 个月前 | |
[CANNBot]Foreach系列部分算子支持Ascend950 Co-authored-by: SGQT<shangguanqinnan@huawei.com> # message auto-generated for no-merge-commit merge: !4911 merge mix_math2nn_all into master [CANNBot]Foreach系列部分算子支持Ascend950 Created-by: u010470851 Commit-by: SGQT Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> CANNBot算子生成,foreach类15个算子支持 Ascend 950 实现SIMT,同时对Ascend 950进行tiling、kernel侧的代码隔离,确保算子功能正常。 算子包括:ForeachAtan, ForeachCos, ForeachCosh, ForeachErf, ForeachExp, ForeachMaximumList, ForeachMaximumScalar, ForeachMaximumScalarList, ForeachMinimumList, ForeachMinimumScalar, ForeachMinimumScalarList, ForeachMulList, ForeachPowScalar, ForeachSubList, ForeachSubScalar ## Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联的Issue https://gitcode.com/cann/ops-nn/issues/2786 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> david冒烟、二级冒烟已过,门槛用例已过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4911 | 3 个月前 | |
remove simplified_key, default value is 0 Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !4892 merge master into master remove simplified_key, default value is 0 Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 当simplified_key中属性只有default=0,且ascendc_config中配置了算子,那么simplified_key.ini文件可以删除,因为默认值为0. 修改了ascendc_config.json文件,将算子host/config中配置了soc,但是未在ascendc_config.json中的算子补充上去。 ## 关联的Issue [#1985](https://gitcode.com/cann/ops-nn/issues/1985) ## 测试 编译950、910bpass ## 文档更新 更新了ascendc_config.json配置了算子的simplified_key的ini文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4892 | 3 个月前 | |
embedding算子950 二进制文件夹名称整改 Co-authored-by: warming<wangming176@huawei.com> # message auto-generated for no-merge-commit merge: !4994 merge master into master embedding算子950 二进制文件夹名称整改 Created-by: wsunmoon Commit-by: warming Merged-by: cann-robot Description: ## 描述 二进制文件夹名称从ascend910_95改为ascend950 ## 关联的Issue 关联Issue [#2752](https://gitcode.com/cann/ops-nn/issues/2752) ## 测试 二级冒烟,UT/ST验证 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:文件夹名称整改 See merge request: cann/ops-nn!4994 | 3 个月前 | |
新增sigmoid_cross_entropy_with_logits_grad_v2资料 Co-authored-by: jisongyuan@h-partners.com<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !5056 merge master into master 新增sigmoid_cross_entropy_with_logits_grad_v2资料 Created-by: ji-songyuan Commit-by: jisongyuan@h-partners.com Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 新增sigmoid_cross_entropy_with_logits_grad_v2资料 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> issue [#2350](https://gitcode.com/cann/ops-nn/issues/2350) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 仅修改资料 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> loss/sigmoid_cross_entropy_with_logits_grad_v2/README.md loss/sigmoid_cross_entropy_with_logits_grad_v2/docs/aclnnBinaryCrossEntropyWithLogitsBackward.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5056 | 3 个月前 | |
fix acc | 3 个月前 | |
fix layernormquant 310p functional failed Co-authored-by: z30073777<zhaosusu1@h-partners.com> # message auto-generated for no-merge-commit merge: !5157 merge dtcase into master fix layernormquant 310p functional failed Created-by: zhaosusu Commit-by: z30073777 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> layernormquant算子在310p场景非对齐数据尾块处理有缺陷,导致部分用例功能失败,修正并验证通过。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#2836](https://gitcode.com/cann/ops-nn/issues/2836) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 本地泛化450条用例精度通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5157 | 3 个月前 | |
remove simplified_key, default value is 0 Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !4892 merge master into master remove simplified_key, default value is 0 Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 当simplified_key中属性只有default=0,且ascendc_config中配置了算子,那么simplified_key.ini文件可以删除,因为默认值为0. 修改了ascendc_config.json文件,将算子host/config中配置了soc,但是未在ascendc_config.json中的算子补充上去。 ## 关联的Issue [#1985](https://gitcode.com/cann/ops-nn/issues/1985) ## 测试 编译950、910bpass ## 文档更新 更新了ascendc_config.json配置了算子的simplified_key的ini文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4892 | 3 个月前 | |
修改AdaptiveMaxPool3D bigKernel模板dataCopyPad填充错误导致的精度异常 Co-authored-by: SimonZzz<zhouquan79@huawei.com> # message auto-generated for no-merge-commit merge: !5073 merge fixadaptiveMaxPool into master 修改AdaptiveMaxPool3D bigKernel模板dataCopyPad填充错误导致的精度异常 Created-by: SimonZzz Commit-by: SimonZzz Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改AdaptiveMaxPool3D bigKernel模板dataCopyPad填充错误导致的精度异常 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2801 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 问题用例精度pass,冒烟通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5073 | 3 个月前 | |
fix: 修复 SwigluMxQuantLastLast Process 核号边界条件 off-by-one 错误 Co-authored-by: chenfeng61<chenfeng61@huawei.com> # message auto-generated for no-merge-commit merge: !5080 merge core_num into master fix: 修复 SwigluMxQuantLastLast Process 核号边界条件 off-by-one 错误 Created-by: chenfeng61 Commit-by: chenfeng61 Merged-by: cann-robot Description: ## 描述 修复 SwigluMxQuantLastLast 算子 Process 函数中核号边界判断的 off-by-one 错误。 原代码使用 blockIdx_ > realCoreNum_ 判断越界,当 blockIdx_ == realCoreNum_ 时该核仍会继续执行后续计算,可能导致越界访问。 修改为 blockIdx_ >= realCoreNum_,确保核号超出有效范围的核正确提前返回。 ### 改动原因 blockIdx_ 取值范围为 [0, realCoreNum_),当 blockIdx_ == realCoreNum_ 时已超出有效范围。 原判断 > 无法拦住该边界情况。对于 isGroupIndex 场景下 realCoreNum_ 被动态调整为 allNum 后尤为关键——多余核继续执行会访问未初始化的 tiling 参数,导致越界或计算结果异常。 ### 改动方法 将 quant/swiglu_mx_quant/op_kernel/arch35/swiglu_mx_quant_last_last.h 第 347 行的判断条件从 blockIdx_ > realCoreNum_ 改为 blockIdx_ >= realCoreNum_。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/2812 ## 测试 已在 NPU 环境上验证多核场景下算子输出正确性,确认边界核数场景无越界异常。 ## 文档更新 无文档更新。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5080 | 3 个月前 | |
remove simplified_key, default value is 0 Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !4892 merge master into master remove simplified_key, default value is 0 Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 当simplified_key中属性只有default=0,且ascendc_config中配置了算子,那么simplified_key.ini文件可以删除,因为默认值为0. 修改了ascendc_config.json文件,将算子host/config中配置了soc,但是未在ascendc_config.json中的算子补充上去。 ## 关联的Issue [#1985](https://gitcode.com/cann/ops-nn/issues/1985) ## 测试 编译950、910bpass ## 文档更新 更新了ascendc_config.json配置了算子的simplified_key的ini文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4892 | 3 个月前 | |
修正ops_st_test.sh入参获取算子列表的逻辑 Co-authored-by: he_kan<hekan4@huawei.com> # message auto-generated for no-merge-commit merge: !4954 merge rdv into master 修正ops_st_test.sh入参获取算子列表的逻辑 Created-by: he_kan Commit-by: he_kan Merged-by: cann-robot Description: ## 描述 输入pr_filelist场景,就只跑修改文件涉及的算子用力 输入pr_filelist+ops场景,俩者的合集 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4954 | 3 个月前 | |
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 个月前 | |
remove simplified_key, default value is 0 Co-authored-by: cong-jiyu<congjiyu@h-partners.com> # message auto-generated for no-merge-commit merge: !4892 merge master into master remove simplified_key, default value is 0 Created-by: cong-jiyu Commit-by: cong-jiyu Merged-by: cann-robot Description: ## 描述 当simplified_key中属性只有default=0,且ascendc_config中配置了算子,那么simplified_key.ini文件可以删除,因为默认值为0. 修改了ascendc_config.json文件,将算子host/config中配置了soc,但是未在ascendc_config.json中的算子补充上去。 ## 关联的Issue [#1985](https://gitcode.com/cann/ops-nn/issues/1985) ## 测试 编译950、910bpass ## 文档更新 更新了ascendc_config.json配置了算子的simplified_key的ini文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4892 | 3 个月前 | |
修改clang format Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !4385 merge master into master 修改clang format Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改clang-format 规划 1、枚举的{ 跟enum 同行 2、string开头不强制换行 3、短函数实现允许同行 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 不涉及 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4385 | 4 个月前 | |
fix foreach tiling shape check Co-authored-by: alfengyuan<yuanyaofeng@h-partners.com> # message auto-generated for no-merge-commit merge: !3200 merge master into master fix foreach tiling shape check Created-by: alfengyuan Commit-by: alfengyuan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次PR主要包含两项优化和一项缺陷修复。首先,在代码库配置层面,为保持仓库整洁,添加了对ModelArts平台临时目录的忽略规则。其次,在代码逻辑层面,移除了一个算子实现中冗余的函数调用以简化流程。核心修复是针对Foreach算子输出形状检查逻辑中的一个缺陷,原逻辑过于严格,错误地限制了输出形状必须与输入完全一致,本次修复放宽了条件,允许输出形状与输入不同但元素总数不大于输入,从而支持了更灵活的操作场景。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/1738 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!3200 | 5 个月前 | |
增加pre-commit配置 Co-authored-by: jinyijian<jinyijian1@huawei.com> # message auto-generated for no-merge-commit merge: !3469 merge CI into master 增加pre-commit配置 Created-by: jinyijian Commit-by: jinyijian Merged-by: cann-robot Description: ## 描述 新增了pre-commit的yaml配置 ## 关联的Issue [1908](https://gitcode.com/cann/ops-nn/issues/1908) ## 测试 本地构造不同文件,测试拦截场景 ## 文档更新 docs/zh/develop/pre-commit_guide.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!3469 | 4 个月前 | |
修改doc tools低错 Co-authored-by: caiwenwen<caiwenwen6@h-partners.com> # message auto-generated for no-merge-commit merge: !4214 merge master into master 修改doc tools低错 Created-by: caiwenwen Commit-by: caiwenwen Merged-by: cann-robot Description: ## 描述 修改nn仓的markdown语法、htlm是否闭合、链接是否可以正常跳转、本地链接是否正常跳转修改低错修改 ## 关联的Issue 关联Issue [#1783](https://gitcode.com/cann/ops-nn/issues/1783) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 全部文档的链接跳转、htlm标签闭合、markdown语法规范问题 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [X] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4214 | 4 个月前 | |
include ops-tensor Co-authored-by: liuyufan0725<liuyufan9@huawei.com> # message auto-generated for no-merge-commit merge: !5036 merge ops_tensor into master include ops-tensor Created-by: liuyufan0725 Commit-by: liuyufan0725 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ops-nn仓引入ops-tensor作为子模块,ops-tensor包含tensor_api的实现及blaze模板 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#1986](https://gitcode.com/cann/ops-nn/issues/1986) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 本地编包正常出包,验证离线编译功能正常,线上出包正常 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了docs/zh/install/compile.md,新增了ops-tensor作为三方依赖 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5036 | 3 个月前 | |
docs: 补充生态算子精度标准引用 Co-authored-by: chaotang233<tangchao47@hisilicon.com> # message auto-generated for no-merge-commit merge: !4572 merge update_idx_to_precision into master docs: 补充生态算子精度标准引用 Created-by: chaotang233 Commit-by: chaotang233 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 增加精度标准的索引,确保NN仓可以引用到精度标准 会议纪要:https://etherpad-cann.meeting.osinfra.cn/p/TSC  ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> CONTRIBUTING.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4572 | 3 个月前 | |
init | 11 个月前 | |
规范化OAT.xml中许可证声明形式 Co-authored-by: chenyx2012<975102023@qq.com> # message auto-generated for no-merge-commit merge: !3385 merge master into master 规范化OAT.xml中许可证声明形式 Created-by: chenyx_2012 Commit-by: chenyx2012 Merged-by: cann-robot Description: ## 描述 规范化OAT.xml中许可证声明形式 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!3385 | 5 个月前 | |
update lastest news Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !4977 merge master into master update lastest news Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> update lastest news 更新readme lastest news 版本信息 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 不涉及 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4977 | 3 个月前 | |
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 | 5 个月前 | |
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 个月前 | |
修改工程默认的第三方开源软件下载路径 Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !4968 merge bugfix1 into master 修改工程默认的第三方开源软件下载路径 Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 ### 背景 工程默认的第三方开源软件路径和资料中显示的第三方开源软件路径不同 ### 主要修改 修改默认的第三方开源软件下载路径,改为资料中显示的路径 ## 关联的Issue [#2775](https://gitcode.com/cann/ops-nn/issues/2775) ## 测试  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4968 | 3 个月前 | |
添加AscendAntiQuantV2算子的classify_rule Co-authored-by: wang-siyang3<wangsiyang3@huawei.com> # message auto-generated for no-merge-commit merge: !5037 merge AscendAntiQuantV2 into master 添加AscendAntiQuantV2算子的classify_rule Created-by: clwsy1 Commit-by: wang-siyang3 Merged-by: cann-robot Description: ## 描述 添加AscendAntiQuantV2算子的classify_rule ## 关联的Issue ## 测试 无 ## 文档更新 无 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5037 | 3 个月前 | |
修改doc tools低错 Co-authored-by: caiwenwen<caiwenwen6@h-partners.com> # message auto-generated for no-merge-commit merge: !4214 merge master into master 修改doc tools低错 Created-by: caiwenwen Commit-by: caiwenwen Merged-by: cann-robot Description: ## 描述 修改nn仓的markdown语法、htlm是否闭合、链接是否可以正常跳转、本地链接是否正常跳转修改低错修改 ## 关联的Issue 关联Issue [#1783](https://gitcode.com/cann/ops-nn/issues/1783) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 全部文档的链接跳转、htlm标签闭合、markdown语法规范问题 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [X] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!4214 | 4 个月前 | |
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 个月前 | |
refactor: 引用工程公共仓cann-cmake统一打包构建API,移除本地冗余脚本 Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !4109 merge bugfix1 into master refactor: 引用工程公共仓cann-cmake统一打包构建API,移除本地冗余脚本 Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 重构 ops-nn 仓库的打包构建流程,将本地维护的打包脚本和安装脚本替换为引用工程公共仓 cann-cmake 中统一的 API,降低构建工程的复杂度和维护成本。 ### 主要改动: 1. 升级 cann-cmake 版本:从 master-001 升级到 master-002,新增 SHA256 校验(fetch_cann_cmake.cmake) 2. 替换打包脚本引用路径:将 cmake/package.cmake 中所有 ${CMAKE_SOURCE_DIR}/scripts/package/ 和 ${CMAKE_SOURCE_DIR}/cmake/ 本地路径替换为 ${CANN_CMAKE_DIR}/ 公共路径 3. 移除本地冗余脚本:删除 cmake/makeself_built_in.cmake、cmake/makeself_custom.cmake、cmake/third_party/makeself-fetch.cmake 以及 scripts/package/common/ 和 scripts/package/latest_manager/ 下的全部 21 个文件 3. 更新打包配置:新增 CPACK_PACKAGE_PARAM_NAME 参数和 share_info_name XML 配置项(ops_math.xml) 4. 更新编译文档:同步更新 cann-cmake 版本号说明(docs/zh/install/compile.md) ## 关联的Issue [#2381](https://gitcode.com/cann/ops-nn/issues/2381) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 docs/zh/install/compile.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:构建重构 See merge request: cann/ops-nn!4109 | 4 个月前 |
ops-nn
🔥Latest News
- [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}替换为分支标签名。
说明:若环境中已存在配套分支源码,可跳过本步骤,例如CANNLab默认已提供最新商发版CANN对应的源码。
git clone -b ${tag_version} https://gitcode.com/cann/ops-nn.git
说明:对于CANNLab云开发环境,已默认提供最新商发CANN版本配套的源码,如需获取其他版本源码,参考上述命令获取。
📖学习教程
💬相关信息
PS:本项目功能和文档正在持续更新和完善中,欢迎您关注最新版本。