| aclnn确定性开关配置变更和产品名变更,简化md表格语法,删除冗余css样式 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !6613 merge master into master aclnn确定性开关配置变更和产品名变更,简化md表格语法,删除冗余css样式 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> - aclnn确定性开关配置变更:aclrtCtxSetSysParamOpt改为aclrtSetSysParamOpt - 产品名变更 - 简化md表格语法,删除冗余css样式 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [# 3833](https://gitcode.com/cann/ops-math/issues/3833) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> \*.md acl\*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6613 | 19 days ago |
| fix: 恢复 TransData 的 aclnn 示例 Co-authored-by: xujiachen8<xujiachen8@h-partners.com> # message auto-generated for no-merge-commit merge: !5712 merge transdata-examples into master fix: 恢复 TransData 的 aclnn 示例 Created-by: xujiachen8 Commit-by: xujiachen8 Merged-by: cann-robot Description: ## 描述 TransData 的 aclnn 示例在 main 开头直接 return 0,实际未调用接口。本次恢复三个矩阵乘权重相关示例的执行,并修复运行时暴露的问题: - CalculateMatmulWeightSize:使用正确的 FP16 数据表示及回读字节数。 - CalculateMatmulWeightSize、TransMatmulWeight:按查询容量分配设备内存,按实际主机数据长度拷贝,避免对齐容量导致主机越界读取;释放查询数组。 - CalculateMatmulWeightSizeV2:独立验证 INT8 权重容量查询和转换,移除在 A5 上因 ND/NZ 格式要求不一致而失败的下游量化矩阵乘流程。 - 删除 CalculateConvolutionWeightSize 和 TransConvolutionWeight 两个独立示例文件;接口实现、API 文档与 UT 保留。 ## 关联的Issue 关联 #3173:https://gitcode.com/cann/ops-math/issues/3173 本 PR 处理 TransData 示例部分;ConfusionTransposeD 示例由 PR !5692 处理。 ## 测试 在 Ascend950(A5)、CANN 9.2.0 环境下,三个保留示例均编译运行成功,退出码均为 0: - CalculateMatmulWeightSize:256 个输出均为 32。 - CalculateMatmulWeightSizeV2:容量为 1024 bytes,权重转换数据检查 PASS。 - TransMatmulWeight:256 个输出均为 32。 使用独立 CMake 工程链接已安装的完整 libopapi 进行验证。仓库原生 build.sh 示例入口仅链接 libopapi_math,运行本组示例时存在 aclnnMm/aclnnMmGetWorkspaceSize 链接缺失,本 PR 未修改通用构建脚本。未重新编译安装仓库算子包;上述固定输入验证不替代完整算子 UT 或布局泛化测试。 git diff --check 通过;提交中的三个示例源码哈希与上述测试版本一致。 ## 文档更新 无。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5712 | 1 month ago |
| refactor: 为公共op_api头文件增加math后缀 Co-authored-by: clinglai0517<laichangling@huawei.com> # message auto-generated for no-merge-commit merge: !5839 merge refactor/math-prefix-common-headers into master refactor: 为公共op_api头文件增加math后缀 Created-by: clinglai0517 Commit-by: clinglai0517 Merged-by: cann-robot Description: ## 描述 ops-math/common/inc/op_api 中的 level2_base.h、level2_base_caculation.h、op_api_def.h 名称缺少仓库标识。在软件包合并交付或公共 include 目录集成时,存在被其他仓库同名文件覆盖,或因 include 路径顺序产生误引用的风险。 本 MR 参考同目录已有的 op_resource_math.h 命名,为三个公共头文件增加 _math 后缀,并通过兼容转发头分阶段迁移现有引用。 ## 修改内容 - 新增 level2_base_math.h、level2_base_caculation_math.h、op_api_def_math.h,作为带仓库标识的正式实现; - 原 level2_base.h、level2_base_caculation.h、op_api_def.h 保留为轻量兼容转发头,避免未迁移代码立即失效; - 新头文件之间的内部依赖统一使用 _math 后缀路径; - 更新 classify_rule.yaml,让 level2_base_math.h 继承原组件及 UT 覆盖率分类; - 将 89 处旧头文件引用迁移到新名称: - level2_base.h:20 处; - level2_base_caculation.h:9 处; - op_api_def.h:60 处; - 当前 MR 共修改 81 个文件,新增 434 行、删除 384 行。 为减少无关格式变化和后续合并冲突,本次未迁移会触发额外 clang-format、尾部空白或 EOF 修复,或组合触发既有 UT 隔离问题的文件。这些文件将拆分到后续 MR 逐步处理。 ## 剩余迁移 当前仓内仍有 67 处旧引用,分布在 65 个唯一文件中,继续通过兼容转发头工作: - level2_base.h:24 个文件; - level2_base_caculation.h:2 个文件; - op_api_def.h:41 个文件。 待旧引用分批迁移完成后,再结合实际打包和安装规则移除兼容转发头。本 MR 不移除旧头文件,也不声明已完成最终软件包去重。 ## 关联的 Issue 关联并在合入后关闭 #3243: https://gitcode.com/cann/ops-math/issues/3243 ## 测试 已完成: - 对本轮新增的 69 个纯引用替换文件逐行检查,80 组增删均仅修改目标 include,无其他代码或格式变化; - 额外纳入 aclnn_log10.cpp 和 aclnn_logdet.cpp,每个文件最终均为 3 行新增、3 行删除,低于 10 行修改阈值;math/sin/op_api/aclnn_sin.cpp 因聚合 UT 存在平台状态泄漏暂缓迁移; - 在 CANN 9.0.0 容器执行完整 pre-commit,尾部空白、EOF、clang-format、codespell 和 OAT 等检查全部通过; - 在 CANN 9.0.0 容器执行 bash build.sh --opapi -j32,全量构建通过; - 成功生成 build/libopapi_math.so,SHA-256:abaa8f8408979d931a8dad09f8e06875722fc42bbdddc72aaf9f14944bc163ea; - classify_rule.yaml 可正常解析,三个旧文件继续作为兼容转发头使用。 ## 文档更新 不涉及用户文档变更。 ## 类型标签 - [ ] Bug 修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他:代码重构 See merge request: cann/ops-math!5839 | 1 month ago |
| weightQuantPreprocess分支迁移 Co-authored-by: yan-chengyi123<yanchengyi@huawei.com> Co-authored-by: zhouhang96<zhouhang96@huawei.com> # message auto-generated for no-merge-commit merge: !6181 merge master into master weightQuantPreprocess分支迁移 Created-by: zhouhang96 Commit-by: zhouhang96;yan-chengyi123 Merged-by: cann-robot Description: ## 描述 新增 Ascend960 上的量化权重预处理能力,支持 A8W4、A16W4、A16MXFP4 和 A16HIF4 等数据流,完成权重格式转换及 scale、offset、bias 的预处理,为下游量化矩阵乘提供所需的数据布局 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3686 ## 测试 本地torch用例验证通过48/48 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 不涉及 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6181 | 21 days ago |
| weightQuantPreprocess分支迁移 Co-authored-by: yan-chengyi123<yanchengyi@huawei.com> Co-authored-by: zhouhang96<zhouhang96@huawei.com> # message auto-generated for no-merge-commit merge: !6181 merge master into master weightQuantPreprocess分支迁移 Created-by: zhouhang96 Commit-by: zhouhang96;yan-chengyi123 Merged-by: cann-robot Description: ## 描述 新增 Ascend960 上的量化权重预处理能力,支持 A8W4、A16W4、A16MXFP4 和 A16HIF4 等数据流,完成权重格式转换及 scale、offset、bias 的预处理,为下游量化矩阵乘提供所需的数据布局 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3686 ## 测试 本地torch用例验证通过48/48 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 不涉及 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6181 | 21 days ago |
| 修复头文件中的inline编程规范问题 Co-authored-by: weixin_45781211<zhoucong43@huawei.com> # message auto-generated for no-merge-commit merge: !6281 merge fix/trans-data-static-inline into master 修复头文件中的inline编程规范问题 Created-by: artmzhou Commit-by: weixin_45781211 Merged-by: cann-robot Description: ## 描述 头文件中使用inline且头文件函数实现中使用了特定的宏,可能造成ODR违规,产生错误的引用。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3550 ## 测试 bash # 1.构建 bash build.sh --pkg --soc=ascend950 --ops=trans_data --vendor_name=trans_static_check # 2.安装 bash "build_out/cann-ops-math-trans_static_check_linux-x86_64.run" --install-path="$test_root" vendor_dir="$test_root/vendors/trans_static_check_math" source "$vendor_dir/bin/set_env.bash" # 3.测试 bash scripts/ci/ops_st_test.sh --soc_version=ascend950 --ops=trans_data --test_type=kernel ttk kernel通路本地验证ok ## 文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [x ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6281 | 27 days ago |
| fix(aicpu): 补充5处成员函数const修饰(G.CNS.03残留) Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !5897 merge fix/aicpu-cns03-const-residual into master fix(aicpu): 补充5处成员函数const修饰(G.CNS.03残留) Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 修复 5 条 G.CNS.03 告警(不修改成员变量的成员函数应使用 const 修饰),共 8 个文件 +10/-10,声明与定义同步修改: | 告警 | 文件 | 修复 | |---|---|---| | G.CNS.03 ×1 | strided_slice_v2_aicpu.h/.cpp | CheckParam 补充 const(4 个被调成员均已为 const) | | G.CNS.03 ×2 | trans_data_aicpu.h/.cpp | DealData/PaddingTwo 补充 const(依赖均为已 const 成员或自由函数) | | G.CNS.03 ×1 | real_div_aicpu.h/.cpp | RealDivSameTypeCompute 补充 const(依赖 RealDivCompute 已 const) | | G.CNS.03 ×1 | mul_aicpu.h/.cpp | MulSameTypeCompute 补充 const(依赖 MulCompute 已 const) | ## 未包含项 - trans_data 的 DispatchDealData G.CNS.04 ×3:维持 PR #5856 的误报结论(aicpu::PtrToPtr<void, T> 无 const 重载,且 output_data_temp 确实被写入,不可 const); - strided_slice 的 G.EXP.27 ×4:由 #3267 另行跟进。 ## 验证 - 二进制级对比(父提交 b7b3d0278 vs 本提交 b51424f97,同编译参数 g++ -O2 -std=c++14):4 个改动 TU 的全部非符号节(共 4598 节,含 trans_data 中 3 个 DealData 模板实例化节与 1 个字符串常量节的 _ZN→_ZNK 重命名配对比对)**逐字节相同**; - 符号差异仅为 5 处 const 化函数的修饰名变化(_ZN→_ZNK,含 _GLOBAL__sub_I 辅助符号名内嵌变化),未定义符号集合一致——**零功能影响**; - CI 流水线待跑。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3272 ## 类型 🧹 代码清理 See merge request: cann/ops-math!5897 | 1 month ago |
| [PR3/3] migrate transdata aicpu kernel: remaining formats + OpDef + infershape + full UT Co-authored-by: pan-tong<pantong@huawei.com> # message auto-generated for no-merge-commit merge: !4115 merge transdata_pr3 into master [PR3/3] migrate transdata aicpu kernel: remaining formats + OpDef + infershape + full UT Created-by: pan-tong Commit-by: pan-tong Merged-by: cann-robot Description: ## 描述 将canndev仓TransData算子的AICPU kernel迁移到ops-math仓,PR3/3:remaining formats + OpDef + infershape + full UT + example。 ## 关联的Issue #2231 ## 测试 PR3 of 3 (final): remaining format_transfer + OpDef registration + infershape + full UT + example. - format_transfer_fractalz_3d.{cpp,h}: NCDHW/DHWCN/NDHWC <-> FRACTAL_Z_3D - format_transfer_ndc1hwc0.{cpp,h}: NCDHW/NDHWC -> NDC1HWC0 - format_transfer_transpose.{cpp,h}: format transpose - trans_data_aicpu_def.cpp: AICPU OpDef registration (activates custom_math) - trans_data_infershape.cpp: RT2 InferShape - test_trans_data.cpp: full 23 kernel UT cases - test_trans_data_infershape.cpp: 6 infershape UT cases - test_geir_trans_data.cpp: GE IR example - docs/zh/op_list.md: mark trans_data as AI Core/AI CPU This PR activates custom_math TransData. Depends on PR1 + PR2. ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述:算子迁仓 See merge request: cann/ops-math!4115 | 3 months ago |
| weightQuantPreprocess分支迁移 Co-authored-by: yan-chengyi123<yanchengyi@huawei.com> Co-authored-by: zhouhang96<zhouhang96@huawei.com> # message auto-generated for no-merge-commit merge: !6181 merge master into master weightQuantPreprocess分支迁移 Created-by: zhouhang96 Commit-by: zhouhang96;yan-chengyi123 Merged-by: cann-robot Description: ## 描述 新增 Ascend960 上的量化权重预处理能力,支持 A8W4、A16W4、A16MXFP4 和 A16HIF4 等数据流,完成权重格式转换及 scale、offset、bias 的预处理,为下游量化矩阵乘提供所需的数据布局 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3686 ## 测试 本地torch用例验证通过48/48 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 不涉及 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6181 | 21 days ago |
| 根据markdownlint规范修正md写作问题和link失效 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !6398 merge master into master 根据markdownlint规范修正md写作问题和link失效 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 根据markdownlint规范修正md写作问题和link失效 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2272](https://gitcode.com/cann/ops-math/issues/2272) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 所有md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6398 | 27 days ago |