| docs: 修正文档并补充 CdistGrad、Lerp、Pow2 Host UT Co-authored-by: chensi79<chensi79@huawei.com> # message auto-generated for no-merge-commit merge: !7248 merge docs/issue-4535-rowspan-20261109-issue4535 into master docs: 修正文档并补充 CdistGrad、Lerp、Pow2 Host UT Created-by: chensi79 Commit-by: chensi79 Merged-by: cann-robot Description: ## 描述 错误码表中的 rowspan 大于对应错误码实际占用的表格行数,导致表格结构不匹配。按现有 tr 结构修正 44 个文档中的 46 处错误码分组、92 个单元格跨度,保留现有报错描述及列表内容。 同时修复 Lerps 标量接口的维度约束披露缺口:同步更新正式目录中英文及 experimental 中文文档,分别说明普通和原地接口的连续性条件与非连续路径 8 维上限,补充对应 161002 场景,并保持表格跨度与新增描述行一致。全部连续时仅说明第一段接口跳过此项上限检查,不承诺任意维度均可执行。 精简中英文广播规则3:说明广播轴不明确或对齐后维度不兼容时的报错条件,补充 (2,2,2) 与 (2,2) 的轴选择及 (2,3) 的不兼容示例。规则1、2及其余内容保持原文。 为 experimental/math/cdist_grad、lerp、pow2 补充 Host 形状推导 UT,共22个用例,覆盖正常及批量形状、空张量、动态维度、广播、维度不兼容和缺失输入。仅新增3个测试源文件,通过现有 CMake 自动收集,不修改门禁脚本或算子实现。 ## 关联的Issue Closes #4535 Closes #4580 Closes #3986 ## 测试 - 使用独立 HTMLParser 检查所改 44 个文档的 98 个错误码分组:修改前 92 个单元格跨度不符,修改后为 0。 - 按字节比较确认仅 rowspan 数值发生变化,保留原有换行及所有描述内容。 - git -c core.whitespace=cr-at-eol diff --check 通过(保留三个原有 CRLF 文档的换行格式)。 - 对照正式及 experimental 的 CheckShape、MAX_SUPPORT_DIMS_NUMS=8 和原地接口复用 CalculateResult(selfRef, end, weight, selfRef) 的调用,核对维度条件和 161002 返回路径。 - Lerps 三份资料共 12 个错误码分组通过 HTML 表格检查;函数原型和示例代码保持不变。此前 #4535 的 44 份资料保持不变。 - pre-commit 检查命令通过;OAT 钩子对含 & 的路径跳过扫描,不将其视为 Markdown 内容扫描覆盖。 - 原有文档内容不变,未运行设备 Kernel 数值测试。 - 新增22项 Host InferShape UT,使用真实算子推导源码、仓库 context helper/GTest 入口及 CANN 9.3.0 库定向编译运行,22/22通过;标准 CMake 的 math_op_infershape_ut_cases 目标编译通过,Check_Example 不再报告缺 UT。 - 完整 Host UT 构建在公共 opbase 依赖处因 DAV_5162/CANN 头文件版本不匹配中断;上述22项定向测试不依赖该 tiling 公共模块,不将定向通过描述为完整 Host 构建通过。 - 逐字核对确认广播文档仅规则3及其例子与修改前不同,规则1、2和其他内容一致;中英文两份文档通过 pre-commit(含 OAT)及 diff --check。 ## 文档更新 覆盖正式目录中英文及 experimental 文档;修正表格跨行布局,不将跨度差解释为 API 报错场景缺失。另补充 aclnnLerps/aclnnInplaceLerps 条件化维度约束及相应错误码说明,保留标量 weight、类型与广播约束。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他 See merge request: cann/ops-math!7248 | 19 hours 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 |
| 【trans_data】CalculateMatmulWeightSizeV2 增加 dtype 白名单校验并补充 UT Co-authored-by: yyt_hw<yangyuting54@huawei.com> # message auto-generated for no-merge-commit merge: !6740 merge br_yyt_issue_3939 into master 【trans_data】CalculateMatmulWeightSizeV2 增加 dtype 白名单校验并补充 UT Created-by: yyt_hw Commit-by: yyt_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> CalculateMatmulWeightSizeV2 增加 dtype 白名单校验并补充 UT ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3939](https://gitcode.com/cann/ops-math/issues/3939) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT验证通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:新增 dtype 白名单校验 See merge request: cann/ops-math!6740 | 8 days ago |
| 补充trans_data 2.0 inferdtype Co-authored-by: zhangquanxin<zhangquanxin7@h-partners.com> # message auto-generated for no-merge-commit merge: !6773 merge add_transdata_inferdtype into master 补充trans_data 2.0 inferdtype Created-by: zhangquanxin Commit-by: zhangquanxin Merged-by: cann-robot Description: ## 描述 补充 trans_data 算子的 rt2.0 版本 InferDataType 推导功能。原 rt1.0 的 TransDataInferShape 逻辑中,TransData 的输出数据类型与输入数据类型保持一致;本 PR 新增 conversion/trans_data/op_graph/trans_data_graph_infer.cpp,通过 IMPL_OP(TransData).InferDataType 注册实现该推导。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/4173 ## 测试 ut+二级冒烟 ## 文档更新 无 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6773 | 11 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 | 20 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 | 26 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 |
| fix: math仓支持ut asan检查,适配asan版本的tiling so库. 暂时下掉有问题用例 Co-authored-by: yanzhi2024<yanzhi@huawei.com> # message auto-generated for no-merge-commit merge: !7056 merge master into master fix: math仓支持ut asan检查,适配asan版本的tiling so库. 暂时下掉有问题用例 Created-by: yanzhi2024 Commit-by: yanzhi2024 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 ASAN 流水线生成 op_kernel tiling 头文件时的运行库加载顺序错误。ASAN 模式下,在启动 Python 前预加载当前编译器对应的 libasan.so,并仅对头文件生成进程关闭泄漏检测,避免 Python/TBE 退出时的泄漏报告阻断构建。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/4373 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ASAN 模式下,流水线日志中失败的 13 个 tiling 头文件生成目标均构建成功。非 ASAN 模式 CMake 配置、脚本语法检查、git diff --check 和 pre-commit 检查均通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!7056 | 7 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 | 20 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 | 26 days ago |
| docs: add English translations for markdown files Co-authored-by: jenny_xiang<jenny.xiang@huawei.com> # message auto-generated for no-merge-commit merge: !7113 merge docs/add-english-translations into master docs: add English translations for markdown files Created-by: jenny_xiang Commit-by: jenny_xiang Merged-by: cann-robot Description: ## 描述 新增仓库Markdown文档英文译稿(第二批,共409个文件):第一批(已合入)之外的其余全部译稿,覆盖conversion、examples、ge、math、random各类算子README译稿,以及CHANGELOG_en.md、.gitcode PR模板英文版等。 本批内全部仓内链接均指向master已有文件(含第一批已合入的21+2篇译稿),合入后本仓432篇英文文档全部就位,链接完整生效。 本批同时包含4篇基于最新源文档的增量更新(math/ada_cast、math/prod_force_se_a、math/sinkhorn、math/xlogy,对应上游近期文档变更)。 ## 关联的Issue 无 ## 测试 文档类变更,无需算子测试;已通过链接有效性校验(本批全部相对链接仅指向master已有文件,无指向本PR外未提交文件的链接),并完成逐篇翻译规范自查与语义校对(含支持状态表、限定词、术语、数值符号核对)。 ## 文档更新 新增409个英文译稿文件(*_en.md / .en-US.md),不修改任何现有文件。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!7113 | 5 days ago |