本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
子流水线支持更新门禁代码 Co-authored-by: zhangxu-<zhangxu109@huawei.com> # message auto-generated for no-merge-commit merge: !2617 merge master into master 子流水线支持更新门禁代码 Created-by: zhangxu- Commit-by: zhangxu- Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 子流水线支持更新门禁代码 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 线上测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2617 | 3 个月前 | |
doc Tools扫描错误修改 Co-authored-by: gitee-yanglulu<yanglulul@h-partners.com> # message auto-generated for no-merge-commit merge: !1899 merge master into master doc Tools扫描错误修改 Created-by: gitee-yanglulu Commit-by: gitee-yanglulu Merged-by: cann-robot Description: doc Tools扫描错误修改 See merge request: cann/ops-math!1899 | 5 个月前 | |
revert: 支持kernel_src机制,同步ops-nn PR#3936的cmake/scripts改动 Co-authored-by: songkai111<songkai111@noreply.gitcode.com> # message auto-generated for no-merge-commit merge: !3138 merge revert-mr-3106-1780577645176-auto into master revert: 支持kernel_src机制,同步ops-nn PR#3936的cmake/scripts改动 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3138 | 2 个月前 | |
refactor: 删除废弃公共头文件,完成 math/random 算子头文件去重 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !3000 merge math_tiling into master refactor: 删除废弃公共头文件,完成 math/random 算子头文件去重 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 删除 4 个已废弃的公共头文件,并完成剩余 math 算子和全部 random 算子的重复头文件消除。本 PR 为此系列重构的收尾提交。 ### 改动原因 前三批 PR(#2951 conversion / #2969 math上 / #2980 math下)已完成所有算子到 base 仓头文件的迁移。原公共头文件已成为空壳转发或不再被引用,可安全删除: - tiling_base.h:已改为转发 tiling_base_class.h,可直接删除 - tiling_templates_registry.h:math 专用部分已拆分到 math_tiling_templates_registry.h - tiling_util.h / tiling_util.cpp:功能已迁移至 base 仓 tiling_base_util.h 此前几批遗漏了部分 math 算子(add_lora, atan2, histogram_v2, stft 等 10+ 个)以及 random 目录下全部算子。 ### 改动方法 1. 删除 4 个废弃文件并精简 common/CMakeLists.txt 2. 更新遗漏的 math 算子:#include + 命名空间修正 3. 更新 20+ 个 random 算子:同样的 #include + 命名空间修正 4. 更新示例(add_example, add_example_c_api)和 opgen 模板脚本 ## 关联的Issue - #1697 ## 测试 - 涉及的算子二级冒烟测试已通过 ## 文档更新 无文档变更 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码重构,删除废弃头文件并完成去重收尾 See merge request: cann/ops-math!3000 | 3 个月前 | |
error message change for padv3 Co-authored-by: helloAlgo<zhoulong50@huawei.com> # message auto-generated for no-merge-commit merge: !3115 merge errrorMsg_for_padv3 into master error message change for padv3 Created-by: zhoulong50_hw Commit-by: helloAlgo Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> pad_v3 算子 tiling 报错不规范,不清晰 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1861 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 二级冒烟 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 暂无文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:error message 修改,使其更加具体。 See merge request: cann/ops-math!3115 | 2 个月前 | |
docs: 更新安装文档示例版本及修正算子调用CMake变量名 Co-authored-by: chensi79@huawei.com<chensi79@huawei.com> # message auto-generated for no-merge-commit merge: !2998 merge master into master docs: 更新安装文档示例版本及修正算子调用CMake变量名 Created-by: chensi79 Commit-by: chensi79@huawei.com Merged-by: cann-robot Description: ## 描述 更新安装文档和快速入门文档中的示例版本信息,并修正算子调用示例中 CMake target 变量名引用错误。 ### 改动原因 1. 文档中的 Docker 镜像版本号(8.5.0)已过时,需更新为最新版本(9.1.0-beta.1) 2. 源码下载示例缺少具体版本号示例,用户不易理解 3. 算子调用 CMakeLists.txt 示例中 target_link_libraries、target_link_options、install 使用了错误的 target 变量名 ${op_name}_invocation,应为 ${test_aclnn_op_name} 4. 驱动/固件安装指引链接需更新为 CANN 快速安装页面 ### 改动方法 - README.md:补充 9.0.0 分支的具体 clone 示例命令,调整说明段落顺序 - docs/QUICKSTART.md:增加 soc_version 查询的分步说明,调整图片位置到说明之前 - docs/zh/install/quick_install.md:更新 Docker 镜像版本号、简化安装命令(去掉 chmod 步骤改用 bash 执行)、补充 ${arch} 查询方法、更新驱动安装指引链接 - docs/zh/invocation/quick_op_invocation.md:将 ${op_name}_invocation 修正为 ${test_aclnn_op_name}(涉及 target_link_options、target_link_libraries、install 三处) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/1578 https://gitcode.com/cann/ops-math/issues/1767 https://gitcode.com/cann/ops-math/issues/1550 ## 测试 文档变更通过审阅验证;CMake 变量名修正与实际 CMakeLists.txt 模板中 add_executable 定义的 target 名称一致。 ## 文档更新 - 更新 README.md 源码下载示例 - 更新 docs/QUICKSTART.md soc_version 查询说明 - 更新 docs/zh/install/quick_install.md 安装步骤和镜像版本 - 修正 docs/zh/invocation/quick_op_invocation.md CMake 变量名 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:修正 CMake 变量名引用错误 See merge request: cann/ops-math!2998 | 2 个月前 | |
refactor: 删除废弃公共头文件,完成 math/random 算子头文件去重 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !3000 merge math_tiling into master refactor: 删除废弃公共头文件,完成 math/random 算子头文件去重 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 删除 4 个已废弃的公共头文件,并完成剩余 math 算子和全部 random 算子的重复头文件消除。本 PR 为此系列重构的收尾提交。 ### 改动原因 前三批 PR(#2951 conversion / #2969 math上 / #2980 math下)已完成所有算子到 base 仓头文件的迁移。原公共头文件已成为空壳转发或不再被引用,可安全删除: - tiling_base.h:已改为转发 tiling_base_class.h,可直接删除 - tiling_templates_registry.h:math 专用部分已拆分到 math_tiling_templates_registry.h - tiling_util.h / tiling_util.cpp:功能已迁移至 base 仓 tiling_base_util.h 此前几批遗漏了部分 math 算子(add_lora, atan2, histogram_v2, stft 等 10+ 个)以及 random 目录下全部算子。 ### 改动方法 1. 删除 4 个废弃文件并精简 common/CMakeLists.txt 2. 更新遗漏的 math 算子:#include + 命名空间修正 3. 更新 20+ 个 random 算子:同样的 #include + 命名空间修正 4. 更新示例(add_example, add_example_c_api)和 opgen 模板脚本 ## 关联的Issue - #1697 ## 测试 - 涉及的算子二级冒烟测试已通过 ## 文档更新 无文档变更 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码重构,删除废弃头文件并完成去重收尾 See merge request: cann/ops-math!3000 | 3 个月前 | |
【社区任务】02-03 Tile算子开发任务贡献 Co-authored-by: ElevenLiu<2671289934@qq.com> # message auto-generated for no-merge-commit merge: !2417 merge 0203 into master 【社区任务】02-03 Tile算子开发任务贡献 Created-by: ElevenLiu Commit-by: ElevenLiu Merged-by: cann-robot Description: ## 描述 使用AscendC对TBE实现的tile算子进行重构,实现了AscendC实现的Tile算子对Atlas 800I/T A2硬件的适配。 ## 关联的Issue [Requirement|需求建议]: 【社区任务】tile算子需求 [#897](https://gitcode.com/cann/ops-math/issues/897) ## 测试 采用aclnn调用测试 ## 文档更新 更新了README.md文件。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2417 | 2 个月前 | |
fix(bincount): correct UB offset in weighted BATCH_LOAD path Co-authored-by: huang-qiang<huangqiang3@huawei.com> # message auto-generated for no-merge-commit merge: !3111 merge fix/bincount-batchload-weighted-ub-oob into master fix(bincount): correct UB offset in weighted BATCH_LOAD path Created-by: huang-qiang Commit-by: huang-qiang Merged-by: cann-robot Description: ## 描述 修复 Bincount 算子(arch35 / A5)带权 BATCH_LOAD 路径的 UB 写越界缺陷。 op_kernel/arch35/bincount_simt_not_full_load_ub.h 中 UbSimtComputeWithWeightLoop 的原子累加使用了**全局 bin 下标 arrayValue** 去寻址 per-UB-tile 的局部缓冲 yLocalAddr,而正确做法应使用 **tile 内偏移 arrayOffset**(= arrayValue - currentLoopMinAddr)。 当 ubLoop >= 1(输出 bins 跨多个 UB 分片)时,arrayValue 超出当前分片长度 availableUbSize,导致写穿 UB 缓冲区,触发 AICORE vector core exception (device error type 3 / 507035)。无权重版本 UbSimtComputeLoop 本就正确使用 arrayOffset,本次改动将带权版本与其对齐。 改动(1 行): diff int64_t arrayOffset = arrayValue - currentLoopMinAddr; - asc_atomic_add(yLocalAddr + arrayValue, weightGmAddr[arrayAicoreOffset + index]); + asc_atomic_add(yLocalAddr + arrayOffset, weightGmAddr[arrayAicoreOffset + index]); 触发条件(GM_ATOMIC_ADD_FACTOR=100):有 weights、(array+weights) > bins/100 (选中 SCH_ID_SIMT_BATCH_LOAD)、且 bins 跨多个 UB 分片。与 int32 越界无关 (tiling/kernel 索引均为 int64),小规模即可复现。 ## 关联的Issue <!-- 暂无,如需请补充 Issue / 问题单号 --> ## 测试 基于 ops-test-kit(TTK)在 A5 / arch35(Ascend950PR)上做了 Kernel 模式在线编译验证: - bincount_w_batchload_oob(array=1M, minlength=2M, fp32 weights,tiling key 0x10001 = BATCH_LOAD 带权路径): - 修复前:vector core exception,NO_OUTPUT,STATUS FAIL; - 修复后:**STATUS PASS,golden 100%**(DYN/CST 均通过),vector core exception 消失。 - bincount_w_fullload_ctrl(小 bins → FULL_LOAD 单分片,对照):修复前后均 PASS。 - 另用 torch.bincount(CPU 标杆)E2E 对比脚本复现同一现象。 (注:本环境 cgroup 单进程内存上限 32GB,2^31 超大规格用例 bincount_w_giant_spec 因 host 造数据 OOM 无法跑完,但其与上述用例为完全相同代码路径,修复对其同样有效。) ## 文档更新 无。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3111 | 2 个月前 | |
aclnnRandom接口修复bool类型cast操作 Co-authored-by: zhaozi3<zhaozi3@h-partners.com> # message auto-generated for no-merge-commit merge: !3098 merge master into master aclnnRandom接口修复bool类型cast操作 Created-by: zhaozi3 Commit-by: zhaozi3 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> aclnnRandom接口bool类型cast操作影响原有流程 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 泛化用例验证通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3098 | 2 个月前 | |
revert: 支持kernel_src机制,同步ops-nn PR#3936的cmake/scripts改动 Co-authored-by: songkai111<songkai111@noreply.gitcode.com> # message auto-generated for no-merge-commit merge: !3138 merge revert-mr-3106-1780577645176-auto into master revert: 支持kernel_src机制,同步ops-nn PR#3936的cmake/scripts改动 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3138 | 2 个月前 | |
设置spack脚本set -e,使其有错误也会继续执行,消除codecheck告警 Co-authored-by: moudi123<moudi1@h-partners.com> # message auto-generated for no-merge-commit merge: !3109 merge master into master 设置spack脚本set -e,使其有错误也会继续执行,消除codecheck告警 Created-by: moudi123 Commit-by: moudi123 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3109 | 2 个月前 | |
适配PG short_soc_version Co-authored-by: xufeng12121<1074805447@qq.com> # message auto-generated for no-merge-commit merge: !2804 merge mc62 into master 适配PG short_soc_version Created-by: xufeng12121 Commit-by: xufeng12121 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 算子适配PG特性,将math仓 mc62cm12a/MC62CM12A 改成 mc62/MC62 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1732 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2804 | 3 个月前 | |
update license Co-authored-by: zhaozi3<zhaozi3@h-partners.com> # message auto-generated for no-merge-commit merge: !417 merge master into master update license Created-by: zhaozi3 Commit-by: zhaozi3 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!417 | 8 个月前 | |
docs: 移除 AI Core 算子开发进阶指南文档并清理相关引用 Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !2879 merge master into master docs: 移除 AI Core 算子开发进阶指南文档并清理相关引用 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 移除 docs/zh/develop/aicore_develop_advanced_guide.md 文档文件(AI Core 算子开发进阶指南),并清理其他文档中对该进阶指南的所有引用链接。 具体改动: - 删除 docs/zh/develop/aicore_develop_advanced_guide.md(1412行) - 清理 docs/zh/develop/aicore_develop_guide.md 中 6 处指向进阶指南的引用(涉及算子原型定义、Tiling实现、Kernel实现、图模式适配、Aclnn适配、代际隔离章节) - 清理 docs/zh/develop/graph_develop_guide.md 中 1 处指向进阶指南的引用(GE图模式原型定义章节) - 更新 .gitignore 添加 .opencode/ 忽略规则 ## 关联的Issue - #1635 ## 测试 - 验证删除文档后,其余文档中无残留的失效链接引用 - 验证剩余文档结构完整,章节衔接自然 ## 文档更新 - 删除了 AI Core 算子开发进阶指南文档 - 清理了 aicore_develop_guide.md 和 graph_develop_guide.md 中的相关引用 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:清理文档引用链接 See merge request: cann/ops-math!2879 | 3 个月前 | |
贡献Ascend C实现的Equal算子 Co-authored-by: fullt<full.fu@huawei.com> # message auto-generated for no-merge-commit merge: !2890 merge equal_v2 into master 贡献Ascend C实现的Equal算子 Created-by: fullt Commit-by: fullt Merged-by: cann-robot Description: ## 描述 贡献Ascend C实现equal算子。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/368 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2890 | 3 个月前 | |
math仓的doc tools 工具检测的低错问题 Co-authored-by: caiwenwen<caiwenwen6@h-partners.com> # message auto-generated for no-merge-commit merge: !2461 merge master into master math仓的doc tools 工具检测的低错问题 Created-by: caiwenwen Commit-by: caiwenwen Merged-by: cann-robot Description: ## 描述 处理math仓的doc tools 工具检测的低错问题,包括markdown低错、htlm标签合入、链接是否可以正常跳转 ## 关联的Issue #关联issue#1262 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 更新全部文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2461 | 4 个月前 | |
适配PG short_soc_version Co-authored-by: xufeng12121<1074805447@qq.com> # message auto-generated for no-merge-commit merge: !2804 merge mc62 into master 适配PG short_soc_version Created-by: xufeng12121 Commit-by: xufeng12121 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 算子适配PG特性,将math仓 mc62cm12a/MC62CM12A 改成 mc62/MC62 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1732 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2804 | 3 个月前 | |
docs: 补充生态算子精度标准引用 Co-authored-by: chaotang233<tangchao47@hisilicon.com> # message auto-generated for no-merge-commit merge: !2634 merge master into master docs: 补充生态算子精度标准引用 Created-by: chaotang233 Commit-by: chaotang233 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。-->增加精度标准的索引,确保仓可以引用到精度标准 会议纪要:https://etherpad-cann.meeting.osinfra.cn/p/TSC  ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->CONTRIBUTING.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2634 | 3 个月前 | |
init | 11 个月前 | |
规范化OAT.xml中许可证声明形式 Co-authored-by: chenyx2012<975102023@qq.com> # message auto-generated for no-merge-commit merge: !2009 merge master into master 规范化OAT.xml中许可证声明形式 Created-by: chenyx_2012 Commit-by: chenyx2012 Merged-by: cann-robot Description: ## 描述 规范化OAT.xml中许可证声明形式 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2009 | 4 个月前 | |
docs: 更新安装文档示例版本及修正算子调用CMake变量名 Co-authored-by: chensi79@huawei.com<chensi79@huawei.com> # message auto-generated for no-merge-commit merge: !2998 merge master into master docs: 更新安装文档示例版本及修正算子调用CMake变量名 Created-by: chensi79 Commit-by: chensi79@huawei.com Merged-by: cann-robot Description: ## 描述 更新安装文档和快速入门文档中的示例版本信息,并修正算子调用示例中 CMake target 变量名引用错误。 ### 改动原因 1. 文档中的 Docker 镜像版本号(8.5.0)已过时,需更新为最新版本(9.1.0-beta.1) 2. 源码下载示例缺少具体版本号示例,用户不易理解 3. 算子调用 CMakeLists.txt 示例中 target_link_libraries、target_link_options、install 使用了错误的 target 变量名 ${op_name}_invocation,应为 ${test_aclnn_op_name} 4. 驱动/固件安装指引链接需更新为 CANN 快速安装页面 ### 改动方法 - README.md:补充 9.0.0 分支的具体 clone 示例命令,调整说明段落顺序 - docs/QUICKSTART.md:增加 soc_version 查询的分步说明,调整图片位置到说明之前 - docs/zh/install/quick_install.md:更新 Docker 镜像版本号、简化安装命令(去掉 chmod 步骤改用 bash 执行)、补充 ${arch} 查询方法、更新驱动安装指引链接 - docs/zh/invocation/quick_op_invocation.md:将 ${op_name}_invocation 修正为 ${test_aclnn_op_name}(涉及 target_link_options、target_link_libraries、install 三处) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/1578 https://gitcode.com/cann/ops-math/issues/1767 https://gitcode.com/cann/ops-math/issues/1550 ## 测试 文档变更通过审阅验证;CMake 变量名修正与实际 CMakeLists.txt 模板中 add_executable 定义的 target 名称一致。 ## 文档更新 - 更新 README.md 源码下载示例 - 更新 docs/QUICKSTART.md soc_version 查询说明 - 更新 docs/zh/install/quick_install.md 安装步骤和镜像版本 - 修正 docs/zh/invocation/quick_op_invocation.md CMake 变量名 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:修正 CMake 变量名引用错误 See merge request: cann/ops-math!2998 | 2 个月前 | |
math仓的doc tools 工具检测的低错问题 Co-authored-by: caiwenwen<caiwenwen6@h-partners.com> # message auto-generated for no-merge-commit merge: !2461 merge master into master math仓的doc tools 工具检测的低错问题 Created-by: caiwenwen Commit-by: caiwenwen Merged-by: cann-robot Description: ## 描述 处理math仓的doc tools 工具检测的低错问题,包括markdown低错、htlm标签合入、链接是否可以正常跳转 ## 关联的Issue #关联issue#1262 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 更新全部文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2461 | 4 个月前 | |
【描 述】 eigen update to 5.0.0 Co-authored-by: j00427146<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !985 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链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试   ## 文档更新 SECURITY.md docs/zh/context/build_offline.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:Update Eigen to 5.0.0 See merge request: cann/ops-math!985 | 6 个月前 | |
add_example_aicpu修改 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !2237 merge bugfix-0415 into master add_example_aicpu修改 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本PR的具体修改内容如下: 1、修复add_example_aicpu的ut 2、ut说明中添加aicpu的kernel执行 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> issue [#1122](https://gitcode.com/cann/ops-math/issues/1122) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> [2026-04-15 13:01:30] [ RUN ] TEST_AddExample_UT.INT32_VECTOR_ADD_SUCC [2026-04-15 13:01:30] [ OK ] TEST_AddExample_UT.INT32_VECTOR_ADD_SUCC (0 ms) [2026-04-15 13:01:30] [----------] 1 test from TEST_AddExample_UT (0 ms total) [2026-04-15 13:01:30] [2026-04-15 13:01:30] [----------] Global test environment tear-down [2026-04-15 13:01:30] [==========] 1 test from 1 test suite ran. (0 ms total) [2026-04-15 13:01:30] [ PASSED ] 1 test. [2026-04-15 13:01:30] [100%] Built target math_aicpu_op_kernel_ut ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了docs/zh/install/compile.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2237 | 4 个月前 | |
rename onnx plugin Co-authored-by: x00842564<xuyanke@huawei.com> # message auto-generated for no-merge-commit merge: !3039 merge master into master rename onnx plugin Created-by: yanke-xu Commit-by: x00842564 Merged-by: cann-robot Description: ## 描述 onnx插件编译打包so按照新规则整改 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/1771 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 静态检查、冒烟验证、编译验证、构建 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3039 | 2 个月前 | |
补充sort类算子CleanCode配置 Co-authored-by: BruceLP<lipeng192@huawei.com> # message auto-generated for no-merge-commit merge: !3049 merge cleancode into master 补充sort类算子CleanCode配置 Created-by: BruceLP Commit-by: BruceLP Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补充sort类算子CleanCode配置 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [issues-1757](https://gitcode.com/cann/ops-math/issues/1757) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3049 | 2 个月前 | |
fix: install_deps.sh GCC安装增加版本自动检测与回退机制,适配Debian 13等新版本系统 Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !2987 merge master into master fix: install_deps.sh GCC安装增加版本自动检测与回退机制,适配Debian 13等新版本系统 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> install_deps.sh 中 install_gcc() 的 Debian 分支原先硬编码安装 gcc-9/g++-9,在 Debian 13 等新版本系统上 gcc-9 包已不可用,导致依赖安装失败。 本次改动将 Debian 分支的 GCC 安装逻辑改为自动版本检测:遍历 gcc-9 ~ gcc-14 候选版本,通过 apt-cache show 检查包是否存在于软件源中,自动选择第一个可用的版本进行安装;若所有候选版本均不可用,则降级安装系统默认的 gcc/g++ 包,确保在各种 Debian 版本上都能成功安装 GCC。 ### 改动方法 - 新增候选版本数组 (9 10 11 12 13 14),逐个通过 apt-cache show gcc-$ver 和 apt-cache show g++-$ver 检测包可用性 - 找到可用版本后安装对应版本的 gcc 和 g++,并设置 update-alternatives - 所有候选版本均不可用时,回退到安装默认 gcc/g++ 包 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> - #1686 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> - 在 Debian 13 环境下验证安装脚本能正确检测并安装可用的 GCC 版本 - 在 Debian 11/12 环境下验证原有行为不受影响 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> - 无 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2987 | 3 个月前 | |
docs: 优化环境部署文档结构,补充基础依赖和构建参数说明 Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !2404 merge master into master docs: 优化环境部署文档结构,补充基础依赖和构建参数说明 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 重构项目环境部署相关文档,优化安装流程说明结构。将构建工具依赖安装步骤从 compile.md 迁移至 quick_install.md,使开发者在一处即可完成全部环境准备;补充 build.sh 的 --soc 参数支持列表;新增 absl-py 和 jinja2 Python 依赖。 具体改动: 1. README.md:优化源码下载说明措辞,将 WebIDE 提示改为醒目的注释块说明 2. build.sh:新增 --soc 参数所有支持值的说明,列出 ascend910b、ascend910_93、ascend950 等全部 SoC 型号 3. docs/zh/install/compile.md:移除"安装构建工具"章节(已迁移至 quick_install.md) 4. docs/zh/install/quick_install.md:重构手动安装章节,新增"安装基础依赖"小节,整合构建工具和 Python 依赖安装步骤 5. requirements.txt:新增 absl-py>=2.0.0 和 jinja2>=3.1.0 依赖 ## 关联的Issue - #1347 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 更新了 README.md、docs/zh/install/compile.md、docs/zh/install/quick_install.md 文档内容。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2404 | 4 个月前 | |
依赖cmake公共仓api,降低编译工程复杂度 Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !2311 merge master into master 依赖cmake公共仓api,降低编译工程复杂度 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 依赖cmake公共仓api,降低编译工程复杂度 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2311 | 4 个月前 |
ops-math
🔥Latest News
- [2026/01] 新增QuickStart,指导新手零基础入门算子项目部署(支持Docker环境)、算子开发和贡献流程。
- [2025/12] 开源算子支持Ascend 950PR/Ascend 950DT,可以通过CANN Simulator仿真工具开发调试;在add算子中增加了<<<>>>kernel异构调用示例,方便用户自定义使用;在多个类别中新支持算子concat、lerp、drop_out_v3等。
- [2025/11] 完善多个算子README描述,改进算子开发实例文档及example。
- [2025/10] 新增experimental目录,完善贡献指南,支持开发者调试并贡献自定义算子。
- [2025/09] ops-math项目首次上线。
🚀概述
ops-math是CANN (Compute Architecture for Neural Networks)算子库中提供数值计算的基础算子库,包括conversion类、math类、random类等,覆盖张量形态变换、基础数学运算、随机数生成等场景,子库在架构图中的位置如下。

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