| add aicpu:topk&calc_buckets_limit_and_offset&compare_and_bit_pack Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !3724 merge dev into master add aicpu:topk&calc_buckets_limit_and_offset&compare_and_bit_pack Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 TopK、CalcBucketsLimitAndOffset、CompareAndBitPack 三个 AICPU 算子的完整实现,共涉及 28 个文件变更。 ### 1. TopK(math/topk/) 从已有 aclnn 接口扩展为完整 AICPU 算子实现: - 新增 op_graph/topk_proto.h:算子协议定义 - 新增 op_host/topk_infershape.cpp:host 侧 shape 推导 - 新增 op_kernel_aicpu/topk_aicpu.cpp、topk_aicpu.h、topk_aicpu_def.cpp:AICPU kernel 实现及注册 - 新增 op_kernel_aicpu/CMakeLists.txt、op_graph/CMakeLists.txt:构建配置 - 新增 examples/test_geir_topk.cpp:使用示例 - 新增 tests/ut/op_kernel_aicpu/test_topk.cpp:单元测试 - 修改 CMakeLists.txt:添加 UT 测试配置 - 修改 README.md:补充完整算子文档(产品支持情况、接口说明等) ### 2. CalcBucketsLimitAndOffset(conversion/calc_buckets_limit_and_offset/) 全新 AICPU 算子,用于计算 buckets 的 limit 和 offset 值: - 新增 CMakeLists.txt、op_graph/calc_buckets_limit_and_offset_proto.h - 新增 op_kernel_aicpu/calc_buckets_limit_and_offset_aicpu.cpp、.h、_def.cpp - 新增 examples/test_geir_calc_buckets_limit_and_offset.cpp - 新增 tests/ut/op_kernel_aicpu/test_calc_buckets_limit_and_offset.cpp - 新增 README.md:算子文档 ### 3. CompareAndBitPack(math/compare_and_bit_pack/) 全新 AICPU 算子,将输入与阈值进行比较并将比较结果的比特位打包为 uint8 输出: - 新增 CMakeLists.txt、op_graph/compare_and_bit_pack_proto.h - 新增 op_kernel_aicpu/compare_and_bit_pack_aicpu.cpp、.h、_def.cpp - 新增 examples/test_geir_compare_and_bit_pack.cpp - 新增 tests/ut/op_kernel_aicpu/test_compare_and_bit_pack.cpp - 新增 README.md:算子文档 ### 4. 文档更新 - 修改 docs/zh/op_list.md:在算子列表中添加 compare_and_bit_pack 等算子条目 ## 关联的Issue #2187 ## 测试 根据代码变更,测试场景如下: 1. **算子构建测试** - 执行 cmake 配置和编译,验证三个算子(TopK、CalcBucketsLimitAndOffset、CompareAndBitPack)的 CMakeLists.txt 配置正确,能正常编译构建 2. **单元测试(UT)** - 运行 tests/ut/op_kernel_aicpu/test_topk.cpp,验证 TopK 算子在不同数据类型(float16、float32、int32)和 shape 下的计算正确性 - 运行 tests/ut/op_kernel_aicpu/test_calc_buckets_limit_and_offset.cpp,验证 CalcBucketsLimitAndOffset 算子的功能正确性 - 运行 tests/ut/op_kernel_aicpu/test_compare_and_bit_pack.cpp,验证 CompareAndBitPack 算子在不同数据类型下的比较和比特打包功能正确性 3. **Example 验证** - 编译并运行 examples/test_geir_topk.cpp,验证 TopK 算子端到端调用流程 - 编译并运行 examples/test_geir_calc_buckets_limit_and_offset.cpp,验证 CalcBucketsLimitAndOffset 算子端到端调用流程 - 编译并运行 examples/test_geir_compare_and_bit_pack.cpp,验证 CompareAndBitPack 算子端到端调用流程 4. **算子加载测试** - 验证三个算子的 AICPU kernel 注册成功,接口可正常调用 ## 文档更新 - 新增 math/topk/README.md:TopK 算子完整文档(产品支持情况、接口说明、约束限制等) - 新增 conversion/calc_buckets_limit_and_offset/README.md:CalcBucketsLimitAndOffset 算子文档 - 新增 math/compare_and_bit_pack/README.md:CompareAndBitPack 算子文档 - 修改 docs/zh/op_list.md:算子列表新增条目 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3724 | 4 months ago |
| math仓算子添加隔离宏 Co-authored-by: ayuemoon<15802951036@163.com> # message auto-generated for no-merge-commit merge: !5280 merge proto_reg_op_modify into master math仓算子添加隔离宏 Created-by: ayuemoon Commit-by: ayuemoon Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 为 CalcBucketsLimitAndOffset、CaseCondition、ConjugateTranspose、CompareAndBitpack、Conj、GetDynamicDims、InplaceTopKDistance、ProdEnvMatACalcRij、TopKPQDistance、TopKPQDistanceV2、TopKV2D、Zeta 算子添加隔离宏,防止原型重复定义。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 无 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5280 | 2 months ago |
| 补充4个算子rt2 infershape实现 + 9个算子常量折叠HOSTCPU改造 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !4821 merge dev into master 补充4个算子rt2 infershape实现 + 9个算子常量折叠HOSTCPU改造 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 本 PR 包含两部分改动: ### 1. 补充 4 个算子 rt2 infershape 实现 从 canndev 仓迁移 infershape 逻辑到 ops-math,包含 InferShape + InferDataType + InferShapeRange: - **coordinates_1d_to_2d**:rt1 改造为 rt2,3 个输出(row/col/n)的 shape+dtype+range 均来自输入 x - **split_d**:rt2 直接迁移,DYNAMIC_OUTPUT 按 split_dim/num_split 属性计算 shape+range - **slice_write**:rt1 改造为 rt2,输出 shape+dtype+range 来自输入 x,含 x/value dtype 一致性校验 - **calc_buckets_limit_and_offset**:rt1 改造为 rt2,2 个输出 shape+dtype 来自 bucket_list/ivf_offset - 同步迁移 UT 用例(共 8 个),改造为 InfershapeContextPara + ExecuteTestCase 格式 ### 2. 9 个算子常量折叠 HOSTCPU 改造 - CMakeLists.txt 加 HOSTCPU TRUE 参数 - 算子注册宏从 REGISTER_CPU_KERNEL 改为 OPS_MATH_REGISTER_CPU_KERNELV2 - 改造算子:calc_buckets_limit_and_offset、cast、coordinates_1d_to_2d、cumsum、lin_space、slice_write、split_v、topk、tile_with_axis - 编译产出 libopconstant_folding_math.so,strings 验证全部算子符号存在 ## 关联的Issue #2717 ## 测试 ### infershape UT 验证 - 执行 bash build.sh -u --ophost --soc=ascend910b --ops=<op_name> -j16 - 验证条件:exit code == 0 且日志含 [ PASSED ] N tests. - 8 个 UT 用例全部通过(含 dtype 不一致失败用例) ### 常量折叠编译验证 - 执行 bash build.sh --pkg --jit -j16 - 验证 libopconstant_folding_math.so 产出 - strings 验证 9 个算子符号均在 so 中 - RunCpuKernelV2 / GetCpuKernelV2 入口符号存在 ### 文档更新验证 - op_list.md 中 4 个算子 op_host 列 ×→√ - 2 个算子 op_kernel 列 ×→√(coordinates_1d_to_2d、slice_write) ## 文档更新 - docs/zh/op_list.md:更新 coordinates_1d_to_2d、split_d、slice_write、calc_buckets_limit_and_offset 的 op_host/op_kernel 标记 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4821 | 2 months ago |
| fix(aicpu): 清理 conversion 算子 CodeCheck 告警 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !5836 merge fix/codecheck-rules into master fix(aicpu): 清理 conversion 算子 CodeCheck 告警 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 清理 conversion 目录中已确认成立的 AICPU CodeCheck 告警,并保持修改范围仅限告警行及其必要声明: - 将 5 处 void * 转换改为仓内统一的 aicpu::PtrToPtr<void, T>。 - 为不修改成员状态的报告函数补充 const,声明与定义同步。 - 将位掩码载体改为无符号类型,并显式布尔化位运算条件。 - 将报告中的默认 lambda 捕获改为显式捕获,虚析构补充 override。 - 两个存量类型分派宏保持与 master 一致;对应 3 条 G.PRE.10 告警确认成立,按最小 diff 原则改为文件/报告行级精确屏蔽,不调整宏定义及 32 个调用点。 未扩展清理同文件中未上报的存量写法,未修改 ace 仓代码。 CI 格式门禁修复(2026-09-19):三次流水线均因 CodeCheck_precommit 失败。钩子对已改动文件执行全文件 clang-format 18.1.8,命中 strided_slice_aicpu.h 等文件的存量格式。只在本 PR 原有 9 个文件中,对 4 个实际不合规文件做了格式工具生成的机械整理;其中头文件产生约 620 行格式 diff,未额外清理告警或修改计算语义。 ## 关联的Issue 无。本次为 CodeCheck 告警清理,按约定不创建 Issue。 ## 测试 - 基于最新 origin/master 执行 AICPU UT,5 个测试套 105/105 通过。 - 最终改为 PtrToPtr 后重新编译并执行同一目标,仍为 105/105 通过。 - 构建参数包含 -Werror -ftrapv。 - git diff --check origin/master...HEAD 通过。 - 当前提交的服务端 CodeCheck/CI 待完成 3 条 G.PRE.10 精确屏蔽后确认。 - 基于最新 master 重新执行 9 个改动文件的完整 pre-commit(含格式、尾随空白与 OAT),全部通过。 - 宏修改撤回后重新执行完整 pre-commit,全部通过;重新编译并运行 5 个目标 AICPU 测试套,105/105 通过。 - 上一版服务端 run #3847 为 52/52 job 通过;本版 3 条 G.PRE.10 待按精确屏蔽理由处理后重跑 CI。 ## 文档更新 无。本次不涉及用户接口或功能语义变更。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:CodeCheck 告警清理 See merge request: cann/ops-math!5836 | 1 month ago |
| 补充4个算子rt2 infershape实现 + 9个算子常量折叠HOSTCPU改造 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !4821 merge dev into master 补充4个算子rt2 infershape实现 + 9个算子常量折叠HOSTCPU改造 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 本 PR 包含两部分改动: ### 1. 补充 4 个算子 rt2 infershape 实现 从 canndev 仓迁移 infershape 逻辑到 ops-math,包含 InferShape + InferDataType + InferShapeRange: - **coordinates_1d_to_2d**:rt1 改造为 rt2,3 个输出(row/col/n)的 shape+dtype+range 均来自输入 x - **split_d**:rt2 直接迁移,DYNAMIC_OUTPUT 按 split_dim/num_split 属性计算 shape+range - **slice_write**:rt1 改造为 rt2,输出 shape+dtype+range 来自输入 x,含 x/value dtype 一致性校验 - **calc_buckets_limit_and_offset**:rt1 改造为 rt2,2 个输出 shape+dtype 来自 bucket_list/ivf_offset - 同步迁移 UT 用例(共 8 个),改造为 InfershapeContextPara + ExecuteTestCase 格式 ### 2. 9 个算子常量折叠 HOSTCPU 改造 - CMakeLists.txt 加 HOSTCPU TRUE 参数 - 算子注册宏从 REGISTER_CPU_KERNEL 改为 OPS_MATH_REGISTER_CPU_KERNELV2 - 改造算子:calc_buckets_limit_and_offset、cast、coordinates_1d_to_2d、cumsum、lin_space、slice_write、split_v、topk、tile_with_axis - 编译产出 libopconstant_folding_math.so,strings 验证全部算子符号存在 ## 关联的Issue #2717 ## 测试 ### infershape UT 验证 - 执行 bash build.sh -u --ophost --soc=ascend910b --ops=<op_name> -j16 - 验证条件:exit code == 0 且日志含 [ PASSED ] N tests. - 8 个 UT 用例全部通过(含 dtype 不一致失败用例) ### 常量折叠编译验证 - 执行 bash build.sh --pkg --jit -j16 - 验证 libopconstant_folding_math.so 产出 - strings 验证 9 个算子符号均在 so 中 - RunCpuKernelV2 / GetCpuKernelV2 入口符号存在 ### 文档更新验证 - op_list.md 中 4 个算子 op_host 列 ×→√ - 2 个算子 op_kernel 列 ×→√(coordinates_1d_to_2d、slice_write) ## 文档更新 - docs/zh/op_list.md:更新 coordinates_1d_to_2d、split_d、slice_write、calc_buckets_limit_and_offset 的 op_host/op_kernel 标记 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4821 | 2 months ago |
| 补充4个算子rt2 infershape实现 + 9个算子常量折叠HOSTCPU改造 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !4821 merge dev into master 补充4个算子rt2 infershape实现 + 9个算子常量折叠HOSTCPU改造 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 本 PR 包含两部分改动: ### 1. 补充 4 个算子 rt2 infershape 实现 从 canndev 仓迁移 infershape 逻辑到 ops-math,包含 InferShape + InferDataType + InferShapeRange: - **coordinates_1d_to_2d**:rt1 改造为 rt2,3 个输出(row/col/n)的 shape+dtype+range 均来自输入 x - **split_d**:rt2 直接迁移,DYNAMIC_OUTPUT 按 split_dim/num_split 属性计算 shape+range - **slice_write**:rt1 改造为 rt2,输出 shape+dtype+range 来自输入 x,含 x/value dtype 一致性校验 - **calc_buckets_limit_and_offset**:rt1 改造为 rt2,2 个输出 shape+dtype 来自 bucket_list/ivf_offset - 同步迁移 UT 用例(共 8 个),改造为 InfershapeContextPara + ExecuteTestCase 格式 ### 2. 9 个算子常量折叠 HOSTCPU 改造 - CMakeLists.txt 加 HOSTCPU TRUE 参数 - 算子注册宏从 REGISTER_CPU_KERNEL 改为 OPS_MATH_REGISTER_CPU_KERNELV2 - 改造算子:calc_buckets_limit_and_offset、cast、coordinates_1d_to_2d、cumsum、lin_space、slice_write、split_v、topk、tile_with_axis - 编译产出 libopconstant_folding_math.so,strings 验证全部算子符号存在 ## 关联的Issue #2717 ## 测试 ### infershape UT 验证 - 执行 bash build.sh -u --ophost --soc=ascend910b --ops=<op_name> -j16 - 验证条件:exit code == 0 且日志含 [ PASSED ] N tests. - 8 个 UT 用例全部通过(含 dtype 不一致失败用例) ### 常量折叠编译验证 - 执行 bash build.sh --pkg --jit -j16 - 验证 libopconstant_folding_math.so 产出 - strings 验证 9 个算子符号均在 so 中 - RunCpuKernelV2 / GetCpuKernelV2 入口符号存在 ### 文档更新验证 - op_list.md 中 4 个算子 op_host 列 ×→√ - 2 个算子 op_kernel 列 ×→√(coordinates_1d_to_2d、slice_write) ## 文档更新 - docs/zh/op_list.md:更新 coordinates_1d_to_2d、split_d、slice_write、calc_buckets_limit_and_offset 的 op_host/op_kernel 标记 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4821 | 2 months ago |
| 产品名变更 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !5912 merge master into master 产品名变更 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> AI处理器对应的产品型号名称更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3258](https://gitcode.com/cann/ops-math/issues/3258) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> *.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5912 | 1 month 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 | 10 days ago |