| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Abs示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4641 merge raii-abs into master Abs示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/abs/examples/test_aclnn_abs.cpp 由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4641 | 22 天前 | |
refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4187 merge master into master refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 将 math 模块下 80+ 算子的 arch35 kernel 实现从 MicroAPI 接口迁移为 Reg(寄存器)接口,统一编程范式。 ### 改动范围 涉及算子: abs, abs_grad, add_n, adjacent_difference, arg_max_with_value, assign_add, assign_sub, atan2, bitwise_xor, cast, cdist, cdist_grad, ceil, complex_abs, cummin, cumsum, div, dot, exp, eye, floor, floor_div, floor_mod, fused_mul_add_n, grouped_bias_add_grad, inv, is_close, kth_value, lerp, lin_space, log, log1p, logical_or, mod, nan_to_num, neg, pow, power, reciprocal, reduce_all, reduce_any, reduce_log_sum_exp, reduce_nansum, reduce_prod, reduce_var, right_shift, rint, round, rsqrt, rsqrt_grad, sign, signbit, sinh, sort, sort_with_index, tanh, tanh_grad, tensor_equal, top_k_v2, trunc, truncate_div 等 ### 改动方式 - 将 MicroAPI 调用替换为等价 Reg API 调用 - 适配 arch35(ascend950)指令集特性 - 保持算子功能不变 ## 测试 - 涉及算子全量回归测试 ## 类型标签 - [x] 重构 ## 关联的Issue - #2295 See merge request: cann/ops-math!4187 | 1 个月前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
Acos示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4643 merge raii-acos into master Acos示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/acos/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4643 | 22 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
feat: Acosh/Asin 使能 AICPU 常量折叠 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !4601 merge feat/enable-aicpu-constant-folding-acosh-asin into master feat: Acosh/Asin 使能 AICPU 常量折叠 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 Acosh / Asin 的 opInfo.opsFlag 在 canndev(aicpu_kernel.ini:43 / :251)与 ops-math 侧 *_aicpu_def.cpp 中均已是 OPS_FLAG_OPEN,但两个算子都没有编进 host 侧 libopconstant_folding_math.so——属于「**标志已开、实际不折叠**」的空开状态。 常量折叠生效需要两个条件同时满足:① opsFlag = OPEN;② kernel 编进折叠 so。本 PR 补上条件 ②。 **改动内容** | 文件 | 说明 | |---|---| | math/{acosh,asin}/CMakeLists.txt | add_all_modules_sources(...) 末尾追加 HOSTCPU TRUE | | math/{acosh,asin}/op_kernel_aicpu/*_aicpu.cpp | 增 #include "aicpu/math_aicpu_register.h";注册宏 REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | | math/{acosh,asin}/examples/test_geir_*_const_folding.cpp | 新增 Const → Op → Output 图,写法对齐 #2551 的 test_geir_ceil_const_folding.cpp | | math/{acosh,atanh}/op_kernel_aicpu/CMakeLists.txt | 删除。全仓无 add_subdirectory(.../op_kernel_aicpu),其内容已被 cmake/func.cmake 的 glob 覆盖,属死文件 | opsFlag 未改动(本就是 OPEN)。device-only 依赖体检干净(无 ascend_hal / halSdma / __aarch64__ / asm volatile),无需条件编译隔离。 > **关于 diff 体积**:*_aicpu.cpp 的大段变更是 clang-format 对旧格式文件的整份重排,**语义改动只有上述 2 行**。已用「去空白后逐行比对」确认其余差异全是大括号换行与参数折行,无夹带。与 #2551 中 concat_v2 / strided_slice 等文件情况相同。 ## 关联的Issue #2601 ## 测试 1. **全量构建(必须不带 --ops=)**:bash build.sh --pkg -j16,0 错误。 带 --ops= 会设 ENABLE_CUSTOM=TRUE,使 NOT ENABLE_CUSTOM 不成立、折叠 so 根本不产出,那样的「验证通过」是假绿。 2. **CMake 配置期**:新增 acosh_host_const_obj、asin_host_const_obj 两个目标(连同存量共 10 个)。 3. **so 内容三向对照**(libopconstant_folding_math.so,8146408 字节): - 正向:acosh_aicpu.cpp / asin_aicpu.cpp 源文件名与 Acosh / Asin 类型字符串均命中 - 存量:Conj / Tile / Zeta / TransData / TopKPQDistanceV2 等仍命中,未打破存量 - 反向:8 个 opsFlag=CLOSE 的算子(Asinh、Atanh、TanhGrad、Exp、MatrixDiagV3、MatrixDiagPartV3、ConjugateTranspose、ProdEnvMatACalcRij)全部缺失 - 其中 **Asin 命中而 Asinh 缺失**,排除 strings 子串碰巧匹配 4. **so 进 run 包**:--list 可见于 opp/built-in/op_impl/host_cpu/,与构建产物 md5 一致(7f06b290...)。 5. **V2 注册路径**:新增 .o 中含 weak 符号 aicpu::RegistCpuKernelV2 与 Creator_kAcosh_Kernel / Creator_kAsin_Kernel。 6. **device 侧零回归**:宏在未定义 OPS_MATH_AICPU_HOST_KERNEL 时展开为原 REGISTER_CPU_KERNEL(kAcosh, AcoshCpuKernel),与改动前源码行逐字相同(预处理探针实测)。 7. **AICPU UT:13/13 PASS**(bash build.sh -u --opkernel_aicpu --ops=acosh,asin)。 8. **端到端**:安装 run 包后跑新增的两个 example,折叠日志 Constant folding computation for node acosh_const_folding (type: Acosh) finished, return code: 0.(Asin 同),数值正确;Registered V2 ops from so[libopconstant_folding_math.so] 由 **1 增至 9**。 ## 文档更新 无。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4601 | 20 天前 | |
[CANNBOT]acosh_grad支持数据类型校验,population_count、scale golden修改 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !4381 merge ticket into master [CANNBOT]acosh_grad支持数据类型校验,population_count、scale golden修改 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> acosh_grad支持数据类型校验,population_count、scale golden修改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2478 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4381 | 1 个月前 | |
【共性问题排查】补充 AdaCast InferDataType 实现 Co-authored-by: zhouxuan78<zhouxuan78@huawei.com> # message auto-generated for no-merge-commit merge: !4340 merge master into master 【共性问题排查】补充 AdaCast InferDataType 实现 Created-by: zhouxuan78 Commit-by: zhouxuan78 Merged-by: cann-robot Description: ## 描述 【共性问题排查】补充 AdaCast InferDataType 实现 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2429 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4340 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
AddLora示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4645 merge raii-add_lora into master AddLora示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/add_lora/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4645 | 22 天前 | |
批量修改md文档冗余空格第2批 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !3314 merge master into master 批量修改md文档冗余空格第2批 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 批量修改md中冗余空格 ## 关联的Issue [DOC_1962#冗余空格](https://gitcode.com/cann/ops-math/issues/1962) ## 测试 自验证 ## 文档更新 all md ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [X ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3314 | 2 个月前 | |
AddN示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4646 merge raii-add_n into master AddN示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/add_n/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4646 | 22 天前 | |
test: update AddV2 and TensorRedirect golden specs Co-authored-by: raoliang_sac<raoliang4@huawei.com> # message auto-generated for no-merge-commit merge: !4540 merge fix/add-v2-tensor-redirect-golden into master test: update AddV2 and TensorRedirect golden specs Created-by: raoliang_sac Commit-by: raoliang_sac Merged-by: cann-robot Description: ## 描述 按照新的golden规范更新AddV2和TensorRedirect: - AddV2增加TestSpec注册,kernel与GEIR共用 add_v2入口,并配置PyTorch三方标杆和分dtype精度标准。 - 新增TensorRedirect golden,使用torch.clone实现逐bit拷贝,并覆盖全部11种支持的数据类型。 - 保留仓库兼容的__golden__入口,与TestSpec共用同一计算实现。 - 两个算子均不注册ACLNN和e2e通路,与ACLNNTYPE aclnn_exclude配置保持一致。 本PR描述仅体现上述golden修改;前置PR尚未合入产生的其他diff不属于本PR说明范围。 ## 关联的Issue #2559 ## 测试 - TTK TestSpec loader和validator检查通过。 - AddV2改造前后11个代表用例逐位一致,覆盖广播、标量、空Tensor、整数边界、complex64和BF16。 - TensorRedirect完成11种dtype共33个用例的逐位一致性验证,覆盖连续、非连续及空Tensor,并验证NaN payload、负零、Inf和非规格化数。 - pre-commit全部检查通过。 - git diff --check通过。 ## 文档更新 不涉及文档更新。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:测试与golden规范更新 See merge request: cann/ops-math!4540 | 27 天前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
修改addr计算序 Co-authored-by: Boyang_Zhang<zhangboyang15@h-partners.com> # message auto-generated for no-merge-commit merge: !4394 merge addr_mod into master 修改addr计算序 Created-by: BoyangZhang Commit-by: Boyang_Zhang Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改addr计算序 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2477 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4394 | 30 天前 | |
类成员变量初始化 Co-authored-by: hw-zhangpanpan<zhangpanpan5@huawei.com> # message auto-generated for no-merge-commit merge: !4413 merge master into master 类成员变量初始化 Created-by: hw-zhangpanpan Commit-by: hw-zhangpanpan Merged-by: cann-robot Description: ## 描述 类成员变量需要初始化 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2524 ## 测试 泛化用例,冒烟测试 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4413 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
AffineGrid示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4647 merge raii-affine_grid into master AffineGrid示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/affine_grid/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2642 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4647 | 21 天前 | |
style: 修复代码规范问题 Co-authored-by: xiafengkou<luojiangtao4@huawei.com> # message auto-generated for no-merge-commit merge: !4610 merge luo1 into master style: 修复代码规范问题 Created-by: xiafengkou Commit-by: xiafengkou Merged-by: cann-robot Description: style: 修复代码规范问题 ## 描述 本次改动包含三处代码规范修复,均不涉及逻辑变更: 1. cdist_grad_apt.cpp: CDIST_GRAD_LAUNCH 宏体包裹 do-while(0),防止宏在 if/else 语句中产生悬挂问题 2. amp_update_scale.h: IsFinite 中位运算表达式补充括号,明确 >> 与 == 的优先级顺序 3. aclnn_div.cpp: promoteType 变量声明与初始化合并为一行,符合"变量应在声明时初始化"的规范要求 ## 关联的Issue 无 ## 测试 未运行编译/单测。三处改动均为纯语法层面的规范调整,不影响运行时逻辑: - do-while(0) 包裹后宏作为单条语句使用,行为不变 - 括号仅明确运算优先级,原表达式已隐式满足该优先级 - 声明与初始化合并,变量值与使用时机不变 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码规范修复 See merge request: cann/ops-math!4610 | 22 天前 | |
【社区任务】AngleV2算子支持bf16实现贡献 Co-authored-by: Nice_try<nicetryzzw@163.com> # message auto-generated for no-merge-commit merge: !2643 merge dev-angle_v2 into master 【社区任务】AngleV2算子支持bf16实现贡献 Created-by: Nice_try Commit-by: Nice_try Merged-by: cann-robot Description: ## 一、 需求背景 ### 1.1 需求来源 通过社区任务完成开源仓算子贡献的需求,补充完善 Ascend C 算子库,为现有的 aclnnAngleV2 算子增加对 bfloat16 (bf16) 数据类型的支持。 ### 1.2 背景介绍 Angle 算子主要用于计算复数的辐角(相位角)或实数的角度。对于实数输入,当 $x < 0$ 时,其角度为 $\pi$;当 $x \ge 0$ 时,其角度为 $0$。当前 aclnnAngleV2 算子已支持多种数据类型,但缺少对 bf16 的支持。需要在原有代码框架下进行再开发,补齐 bf16 功能。 #### 1.2.1 TBE 算子现状分析 - **说明**:在系统的 TBE 算子库中,**未找到对应 AngleV2 的 TBE 源码**。因此,本设计文档不涉及 TBE 侧的实现逻辑对比,也无需提供 TBE 侧的实现流程图。 - 算子的核心逻辑基于 Ascend C 现有实现进行拓展。 #### 1.2.2 核心计算逻辑分析 针对 bf16 这种实数数据类型,其数学计算公式如下: $y = \begin{cases} \pi, & \text{if } x < 0 \\ 0, & \text{if } x \ge 0 \end{cases}$ 在硬件实现上,由于是对 element-wise 张量进行处理,可以通过向量比较指令(如 Cmp)生成掩码(Mask),再结合向量选择或数学运算(如乘以 $\pi$)得出最终结果。 ## 二、 需求分析 ### 2.1 外部组件依赖 不涉及。 ### 2.2 内部适配模块 适配 aclnn 接口调用框架,修改 Host 侧代码以分发 bf16 类型,并修改 Kernel 侧代码以实例化 bf16 相关的计算逻辑。 ### 2.3 需求模块设计 #### 2.3.1 Ascend C 算子原型 根据框架侧定义,算子原型如下: | 名称 | 类别 | 数据类型 | format | shape | |---|---|---|---|---| | x | 输入 | float16, float32, complex64, bool, uint8, int8, int16, int32, int64, **bf16** | ND | all | | y | 输出 | float16, float32, float32, float32, float32, float32, float32, float32, float32, **bf16** | ND | all | #### 2.3.2 Ascend C 算子相关约束 1. bf16 输入对应的输出类型严格为 bf16。 2. 算子需满足泛化数据场景的支持,输入 Shape 无强限制,作为一维向量处理。 ## 三、 需求详细设计 ### 3.1 使能方式 | 上层框架 | 涉及的框架勾选 | |---|---| | TF训练/推理 | | | Pytorch训练/推理 | | | ATC推理 | | | Aclnn直调 | ✅ | | OPAT调优 | | | SGAT子图切分 | | ### 3.2 需求总体设计 #### 3.2.1 Host侧设计 **3.2.1.1 分核策略** 采取均分满核策略。由于计算逻辑属于 element-wise 纯向量操作,将输入张量 x 的所有元素视作 1D 数据展开。根据 x 的元素总数与硬件可用核心数(coreNum)进行切分,无法整除的部分通过尾块分配策略优先分配给前置大核。 **3.2.1.2 数据分块和内存优化策略** - **空间复用**:开启 DOUBLE_BUFFER 进行双缓冲流水线设计,隐藏 MTE2 和 MTE3 的访存开销。 - UB(Unified Buffer)空间主要划分为 x 的输入缓冲、y 的输出缓冲以及用于存放 $\pi$ 常量的辅助标量/向量空间。 **3.2.1.3 tilingKey规划策略** 当前计算无复杂属性导致的静态分支,可以复用已有的 Tiling 结构,确保 bf16 类型的单元素位宽(2 Bytes)正确参与 tileDataNum 的计算即可。 #### 3.2.2 Kernel侧设计 **3.2.2.1 kernel侧实现描述** - **Init**:接收 Host 侧下发的 Tiling 数据,初始化 TPipe,分配 VECIN、VECOUT 的 TQue,并申请计算所需的临时 TBuf(若向量比较指令需要临时掩码空间)。 - **Process**: 1. **CopyIn**:使用 DataCopy 将 bf16 数据从 Global Memory 搬运至 Local Memory。 2. **Compute**:对于 bf16 类型,若硬件原生支持 bf16 的向量比较指令,则直接比较 $x < 0$;若当前架构 API 对 bf16 存在局限,可通过 Cast 指令先转换为 float32 进行掩码计算和赋值,完成后再 Cast 回 bf16。结合常数 $\pi$ ($3.1415926$) 计算得出 y。 3. **CopyOut**:将计算结果 y 从 Local Memory 搬运至 Global Memory。 **3.2.2.2 Ascend C 实现流程图** 以下为 Ascend C 侧算子执行流程图:  ### 3.3 支持硬件 - Atlas A2 训练系列产品 - Atlas A3 系列产品 ### 3.4 算子约束限制 - 输入 x 和输出 y 的 Shape 必须严格保持一致。 - 考虑到内存对齐要求,每次搬运的数据长度必须满足 32 Bytes(对于 bf16 为 16 个元素)的整数倍。 ## 四、 特性交叉分析 不涉及。 ## 五、 可维可测分析 ### 5.1 精度标准/性能标准 | 验收标准 | 描述 | 来源 | |---|---|---| | 精度标准 | 算子计算精度需满足 AscendOpTest 工具默认阈值。 | 任务书要求 | | 性能标准 | **bf16 性能需和 fp16 数据类型持平。** | 任务书要求 | ### 5.2 兼容性分析 本需求为在现有 aclnnAngleV2 算子中**追加类型支持**,不破坏原有接口签名与调用规范。原有针对 float16、float32 等数据类型的逻辑均保持不动,对上层框架及现有业务完全向后兼容。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1493 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [.] 文档更新 - [ ] 其他,请描述:AngleV2算子新增bf16支持 See merge request: cann/ops-math!2643 | 24 天前 | |
fix: def-driven dtype + InferDataType分离 for ApproximateEqual/Inv/Ndtri Co-authored-by: babeiee<125106023003@njust.edu.cn> # message auto-generated for no-merge-commit merge: !4549 merge fix/def-driven-dtype-and-infer-approximateequal into master fix: def-driven dtype + InferDataType分离 for ApproximateEqual/Inv/Ndtri Created-by: babeiee Commit-by: babeiee Merged-by: cann-robot Description: ## 描述 approximate_equal inv ndtri 算子共性问题修改 ## 关联的issue []https://gitcode.com/cann/ops-math/issues/2660 ## 测试 ## 文档更新 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-math!4549 | 20 天前 | |
ArgMaxV2示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4648 merge raii-arg_max_v2 into master ArgMaxV2示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/arg_max_v2/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2643 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4648 | 21 天前 | |
ArgMaxWithValue示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4649 merge raii-arg_max_with_value into master ArgMaxWithValue示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/arg_max_with_value/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2644 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4649 | 21 天前 | |
ArgMin示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4650 merge raii-arg_min into master ArgMin示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/arg_min/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2645 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4650 | 21 天前 | |
ArgMinWithValue示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4651 merge raii-arg_min_with_value into master ArgMinWithValue示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/arg_min_with_value/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2646 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4651 | 21 天前 | |
feat: Acosh/Asin 使能 AICPU 常量折叠 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !4601 merge feat/enable-aicpu-constant-folding-acosh-asin into master feat: Acosh/Asin 使能 AICPU 常量折叠 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 Acosh / Asin 的 opInfo.opsFlag 在 canndev(aicpu_kernel.ini:43 / :251)与 ops-math 侧 *_aicpu_def.cpp 中均已是 OPS_FLAG_OPEN,但两个算子都没有编进 host 侧 libopconstant_folding_math.so——属于「**标志已开、实际不折叠**」的空开状态。 常量折叠生效需要两个条件同时满足:① opsFlag = OPEN;② kernel 编进折叠 so。本 PR 补上条件 ②。 **改动内容** | 文件 | 说明 | |---|---| | math/{acosh,asin}/CMakeLists.txt | add_all_modules_sources(...) 末尾追加 HOSTCPU TRUE | | math/{acosh,asin}/op_kernel_aicpu/*_aicpu.cpp | 增 #include "aicpu/math_aicpu_register.h";注册宏 REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | | math/{acosh,asin}/examples/test_geir_*_const_folding.cpp | 新增 Const → Op → Output 图,写法对齐 #2551 的 test_geir_ceil_const_folding.cpp | | math/{acosh,atanh}/op_kernel_aicpu/CMakeLists.txt | 删除。全仓无 add_subdirectory(.../op_kernel_aicpu),其内容已被 cmake/func.cmake 的 glob 覆盖,属死文件 | opsFlag 未改动(本就是 OPEN)。device-only 依赖体检干净(无 ascend_hal / halSdma / __aarch64__ / asm volatile),无需条件编译隔离。 > **关于 diff 体积**:*_aicpu.cpp 的大段变更是 clang-format 对旧格式文件的整份重排,**语义改动只有上述 2 行**。已用「去空白后逐行比对」确认其余差异全是大括号换行与参数折行,无夹带。与 #2551 中 concat_v2 / strided_slice 等文件情况相同。 ## 关联的Issue #2601 ## 测试 1. **全量构建(必须不带 --ops=)**:bash build.sh --pkg -j16,0 错误。 带 --ops= 会设 ENABLE_CUSTOM=TRUE,使 NOT ENABLE_CUSTOM 不成立、折叠 so 根本不产出,那样的「验证通过」是假绿。 2. **CMake 配置期**:新增 acosh_host_const_obj、asin_host_const_obj 两个目标(连同存量共 10 个)。 3. **so 内容三向对照**(libopconstant_folding_math.so,8146408 字节): - 正向:acosh_aicpu.cpp / asin_aicpu.cpp 源文件名与 Acosh / Asin 类型字符串均命中 - 存量:Conj / Tile / Zeta / TransData / TopKPQDistanceV2 等仍命中,未打破存量 - 反向:8 个 opsFlag=CLOSE 的算子(Asinh、Atanh、TanhGrad、Exp、MatrixDiagV3、MatrixDiagPartV3、ConjugateTranspose、ProdEnvMatACalcRij)全部缺失 - 其中 **Asin 命中而 Asinh 缺失**,排除 strings 子串碰巧匹配 4. **so 进 run 包**:--list 可见于 opp/built-in/op_impl/host_cpu/,与构建产物 md5 一致(7f06b290...)。 5. **V2 注册路径**:新增 .o 中含 weak 符号 aicpu::RegistCpuKernelV2 与 Creator_kAcosh_Kernel / Creator_kAsin_Kernel。 6. **device 侧零回归**:宏在未定义 OPS_MATH_AICPU_HOST_KERNEL 时展开为原 REGISTER_CPU_KERNEL(kAcosh, AcoshCpuKernel),与改动前源码行逐字相同(预处理探针实测)。 7. **AICPU UT:13/13 PASS**(bash build.sh -u --opkernel_aicpu --ops=acosh,asin)。 8. **端到端**:安装 run 包后跑新增的两个 example,折叠日志 Constant folding computation for node acosh_const_folding (type: Acosh) finished, return code: 0.(Asin 同),数值正确;Registered V2 ops from so[libopconstant_folding_math.so] 由 **1 增至 9**。 ## 文档更新 无。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4601 | 20 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Co-authored-by: m0_73979701<1958538170@qq.com> # message auto-generated for no-merge-commit merge: !4623 merge feat/def-dtype-infershape-exception-checks-v2 into master 整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Created-by: m0_73979701 Commit-by: m0_73979701 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 整改了 acosh、asinh、cosh、real 四个算子的 def 驱动、推导逻辑及异常拦截: - def 驱动 dtype:acosh/asinh/real 删除多余 dtype TilingKey,kernel 使用 DTYPE_X/DTYPE_OUTPUT;cosh 保留既有非 dtype 单值调度轴。 - InferShape/InferDataType:InferShape 复用 Ops::Base::InferShape4Elewise 并保留在 op_host;InferDataType 放在 op_graph/*_graph_infer.cpp,其中 Real 保留 complex 到实数的特殊映射。 - 异常拦截:补充 RegBase 私有格式、rank、负 shape size、输入输出 shape/dtype 等校验。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-math/issues/2661 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> - bash build.sh --pkg --ops=acosh,asinh,cosh,real --soc=ascend950 -j8:通过,13 个 kernel 变体完成编译。 - InferShape UT:8/8 通过。 - API UT:53/53 通过。 - pre-commit 全量检查(含 clang-format、codespell、OAT):通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无,未修改 CMake、license、README/设计文档,也未改变 DISABLE_IN_OPP 配置。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-math!4623 | 21 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
Atan示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4654 merge raii-atan into master Atan示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/atan/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2649 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4654 | 21 天前 | |
Atan2示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4655 merge raii-atan2 into master Atan2示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/atan2/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2650 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4655 | 21 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
fix/atanh-near-zero-precision Co-authored-by: leaving__<B24040621@njupt.edu.cn> # message auto-generated for no-merge-commit merge: !4482 merge master into master fix/atanh-near-zero-precision Created-by: leaving__ Commit-by: leaving__ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复内容 Atanh 算子在输入值接近零时存在浮点精度损失问题。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2662 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4482 | 20 天前 | |
feat: 补充axpy算子L0级 UT Co-authored-by: wangqi_ai<wangqi195@hisilicon.com> # message auto-generated for no-merge-commit merge: !4050 merge feat/ut_axpy into master feat: 补充axpy算子L0级 UT Created-by: wangqi_ai Commit-by: wangqi_ai Merged-by: cann-robot Description: ## 描述 补充axpy算子的op_api和op_host infershape级别单元测试,覆盖以下场景: - 各数据类型测试 - 不同维度测试 - 异常场景测试:nullptr输入输出、shape不匹配等 ## 关联的Issue #2465 ## 测试 - 编译验证:bash build.sh -u --soc=ascend950 --ops=axpy --noexec 编译通过 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:UT补充 **关联 Issue:** #2465 See merge request: cann/ops-math!4050 | 1 个月前 | |
feat: 补充axpy_v2算子L0级 UT Co-authored-by: wangqi_ai<wangqi195@hisilicon.com> # message auto-generated for no-merge-commit merge: !4051 merge feat/ut_axpy_v2 into master feat: 补充axpy_v2算子L0级 UT Created-by: wangqi_ai Commit-by: wangqi_ai Merged-by: cann-robot Description: ## 描述 补充axpy_v2算子的op_api和op_host infershape级别单元测试,覆盖以下场景: - 各数据类型测试 - 不同维度测试 - 异常场景测试:nullptr输入输出、shape不匹配等 ## 关联的Issue #2465 ## 测试 - 编译验证:bash build.sh -u --soc=ascend950 --ops=axpy_v2 --noexec 编译通过 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:UT补充 **关联 Issue:** #2465 See merge request: cann/ops-math!4051 | 1 个月前 | |
feat: add dtype and dim check Co-authored-by: Miao_Haifeng<miaohaifeng@huawei.com> # message auto-generated for no-merge-commit merge: !4407 merge mhf_for_dts into master feat: add dtype and dim check Created-by: Almost_CANN Commit-by: Miao_Haifeng Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> dawsn、spence、besseli0e算子增加dtype和dim校验 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> TTK ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4407 | 1 个月前 | |
fix expint bessel1e fill issue Co-authored-by: kangjiaming<1159380836@qq.com> # message auto-generated for no-merge-commit merge: !4439 merge feat/op-check-if-validation into master fix expint bessel1e fill issue Created-by: kangjiaming Commit-by: kangjiaming Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 描述 本 PR 为 bessel_i1e、expint、fill_diagonal_v2 三个算子的 Tiling(host 侧)代码统一补充 OP_CHECK_IF 输入合法性校验,修复异常输入无法在 Tiling 阶段提前拦截、报错信息不规范的问题。 修改前,上述算子在传入维数超过 8、不支持 dtype、dtype 不一致或输入输出 shape 不匹配时,不会在 Tiling 阶段失败,可能进入非法计算路径导致崩溃或结果错误,且报错信息缺少算子名/输入名/支持类型等可定位字段。 ### 改动内容 #### 1. conversion/fill_diagonal_v2/op_host/fill_diagonal_v2_tiling.cpp(+28) - 新增常量 MAX_DIM_NUM = 8。 - 在 Tiling4FillDiagonalV2 中新增校验: - x 维数 <= 8,否则 OP_LOGE_FOR_INVALID_SHAPEDIM_WITH_REASON 报错并返回 GRAPH_FAILED。 - x dtype 必须在支持列表 {DT_FLOAT16, DT_FLOAT, DT_DOUBLE, DT_UINT8, DT_BOOL, DT_INT8, DT_INT16, DT_INT32, DT_BF16, DT_INT64} 内,否则 OP_LOGE_WITH_INVALID_INPUT_DTYPE 报错。 - fill_value(输入 1)dtype 必须与 x dtype 一致,否则 OP_LOGE 报错。 #### 2. math/bessel_i1e/op_host/arch35/bessel_i1e_tiling_arch35.cpp(+12/-1) - 新增常量 MAX_DIM_NUM = 8。 - 在 GetShapeAttrsInfo 中新增 x 维数 <= 8 校验。 - 将原有 OP_LOGE(context, "invalid dtype") 替换为 OP_LOGE_WITH_INVALID_INPUT_DTYPE,报错包含算子名、输入名、实际 dtype 及支持列表 DT_FLOAT, DT_FLOAT16, DT_BFLOAT16。 #### 3. math/expint/op_host/arch35/expint_tiling_arch35.cpp(+19/-1) - 新增常量 MAX_DIM_NUM = 8。 - 在 GetShapeAttrsInfo 中新增校验: - x 维数 <= 8。 - 输入 x 与输出 y 的 shape size 一致,否则 OP_LOGE 报错。 - 将原有 OP_LOGE(context, "Expint: unsupported dtype=%d", ...) 替换为 OP_LOGE_WITH_INVALID_INPUT_DTYPE,报错包含算子名、输入名、实际 dtype 及支持列表 DT_FLOAT16, DT_FLOAT, DT_BFLOAT16。 #### 4. conversion/fill_diagonal_v2/tests/ut/op_host/test_fill_diagonal_v2_tiling.cpp(+34/-31) - 调整 UT 代码格式以通过 pre-commit 检查(test_fill_diagonal_v2_float 中第二个输入由 DT_FLOAT16 改为 DT_FLOAT,与新增加的 dtype 一致性校验保持一致;统一代码风格)。 ### 改动方法说明 统一采用 OP_CHECK_IF(condition, error_log, return_statement) 模式进行校验,配合规范化报错宏: - OP_LOGE_FOR_INVALID_SHAPEDIM_WITH_REASON:用于 shape 维数类错误,输出算子名、输入名、实际维数及原因。 - OP_LOGE_WITH_INVALID_INPUT_DTYPE:用于 dtype 类错误,输出算子名、输入名、实际 dtype 及支持列表。 - OP_LOGE:用于其他自定义校验(如 shape size 一致性、dtype 一致性)。 ## 关联的 Issue - 见 pr4439_issue.md:bessel_i1e / expint / fill_diagonal_v2 算子 Tiling 缺少输入校验。 ## 测试 - fill_diagonal_v2 UT:更新 test_fill_diagonal_v2_tiling.cpp,3 个用例(float / float_cube / float16)执行通过,校验新增的 dtype 一致性约束不破坏既有用例。 - CI:ci-pipeline-passed、api-check-passed 标签已通过。 - bessel_i1e、expint:本仓库无对应 UT 目录,通过二级冒烟/算子泛化验证。 ## 文档更新 无。本次仅修改 Tiling host 代码与 UT,不涉及对外接口或 README 变更。 ## 类型标签 - [x] Bug 修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## 提交记录 1. fix issue — 初始修复 2. revert: 只保留OP_CHECK_IF相关修改,恢复ASCENDC_TPL_SEL_PARAM等非OP_CHECK_IF改动 — 回退非 OP_CHECK_IF 改动,聚焦校验逻辑 3. feat: add OP_CHECK_IF validation for bessel_i1e/expint/fill_diagonal_v2 tiling — 主功能提交 4. fix: 修复 fill_diagonal_v2 tiling ut 代码格式以通过 pre-commit 检查 — 格式修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> https://gitcode.com/cann/ops-math/issues/2532 <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4439 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
Bincount示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4657 merge raii-bincount into master Bincount示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/bincount/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2654 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4657 | 21 天前 | |
BitwiseAnd示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4658 merge raii-bitwise_and into master BitwiseAnd示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/bitwise_and/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2655 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4658 | 21 天前 | |
BitwiseNot示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4659 merge raii-bitwise_not into master BitwiseNot示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/bitwise_not/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2656 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4659 | 21 天前 | |
BitwiseOr示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4660 merge raii-bitwise_or into master BitwiseOr示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/bitwise_or/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2657 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4660 | 21 天前 | |
BitwiseXor示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4661 merge raii-bitwise_xor into master BitwiseXor示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/bitwise_xor/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2658 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4661 | 21 天前 | |
Cast示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4662 merge raii-cast into master Cast示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/cast/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2659 ## 测试 未在 Ascend 环境实际编译运行;改动结构与已合并的 is_inf(PR #4531)一致。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4662 | 21 天前 | |
补充 arg_max_with_value/cdist/masked_select_v3 算子 op_host UT 用例 Co-authored-by: wow5523<wuao1@huawei.com> # message auto-generated for no-merge-commit merge: !4436 merge uttest into master 补充 arg_max_with_value/cdist/masked_select_v3 算子 op_host UT 用例 Created-by: zhu-xun Commit-by: wow5523 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补充 arg_max_with_value/cdist/masked_select_v3 算子 op_host UT 用例 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4436 | 1 个月前 | |
style: 修复代码规范问题 Co-authored-by: xiafengkou<luojiangtao4@huawei.com> # message auto-generated for no-merge-commit merge: !4610 merge luo1 into master style: 修复代码规范问题 Created-by: xiafengkou Commit-by: xiafengkou Merged-by: cann-robot Description: style: 修复代码规范问题 ## 描述 本次改动包含三处代码规范修复,均不涉及逻辑变更: 1. cdist_grad_apt.cpp: CDIST_GRAD_LAUNCH 宏体包裹 do-while(0),防止宏在 if/else 语句中产生悬挂问题 2. amp_update_scale.h: IsFinite 中位运算表达式补充括号,明确 >> 与 == 的优先级顺序 3. aclnn_div.cpp: promoteType 变量声明与初始化合并为一行,符合"变量应在声明时初始化"的规范要求 ## 关联的Issue 无 ## 测试 未运行编译/单测。三处改动均为纯语法层面的规范调整,不影响运行时逻辑: - do-while(0) 包裹后宏作为单条语句使用,行为不变 - 括号仅明确运算优先级,原表达式已隐式满足该优先级 - 声明与初始化合并,变量值与使用时机不变 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码规范修复 See merge request: cann/ops-math!4610 | 22 天前 | |
feat: 支持八个迁移算子的常量折叠(#2551) Co-authored-by: pan-tong<pantong@huawei.com> # message auto-generated for no-merge-commit merge: !4511 merge feat/constant-folding-infershape into master feat: 支持八个迁移算子的常量折叠(#2551) Created-by: pan-tong Commit-by: pan-tong Merged-by: cann-robot Description: ## 描述 为 Ceil、ConcatV2、Expand、GreaterEqual、InvertPermutation、StridedSlice、StridedSliceV2、TransData 接入 HOSTCPU 常量折叠。 - 为尚未接线的 7 个算子在 CMake 中启用 HOSTCPU TRUE,将现有 AICPU kernel 编入 libopconstant_folding_math.so。 - 8 个算子的 AICPU kernel 使用 OPS_MATH_REGISTER_CPU_KERNELV2,兼容 device 注册和 host CPU Kernel V2 注册。 - 为 GreaterEqual 补齐 OPS_FLAG_OPEN;其余算子沿用已有 OPEN 配置。 - TransData 沿用已有 HOSTCPU 配置,并复用已接入 host object 的 format_transfer 辅助源。 - 增强 Ceil AICPU UT 的输出校验,新增 Ceil 全 Const GE 图常量折叠用例。 本 PR 不修改算子的 infershape 实现。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2551 ## 测试 - AICPU UT:8 个算子共 156 个用例全部通过。 - HOSTCPU 构建:libopconstant_folding_math.so 构建成功,包含 8 个算子的 host 注册。 - 安装级 GE 常量折叠:8 个算子的全 Const 图输出均校验通过。 - 逐算子日志确认对应 host kernel 执行,ConstantFoldingPass 返回码均为 0。 - pre-commit:clang-format、codespell、OAT 等检查全部通过。 - GitCode 服务端 Hooks:通过。 ## 文档更新 无。该改动不改变算子接口和使用方式。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4511 | 25 天前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
fix: 修复topk/calc_buckets_limit_and_offset/compare_and_bit_pack算子UT问题 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !4173 merge fix/ut-issues into master fix: 修复topk/calc_buckets_limit_and_offset/compare_and_bit_pack算子UT问题 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 修复 topk、calc_buckets_limit_and_offset、compare_and_bit_pack 三个算子的 UT 问题及内核参数校验缺失。 **calc_buckets_limit_and_offset 算子:** - 内核代码新增 total_limit >= 0 参数校验和 bucket_list[i] >= 0 输入范围检查 - 修复 UT 中 input2_num 赋值 typo(input1->NumElements() → input2->NumElements()) **compare_and_bit_pack 算子:** - COMPLEX64 用例重命名为 INPUT_COMPLEX64_UNSUPPORTED,移除无效输出验证 - BOOL 用例修正 input1 值(true → false)及期望结果 - DIM_ERROR 用例修正 shape 和输入数据指针 **topk 算子:** - 重写 SMALLEST_LAST_DIM 测试:修正输出维度、使用随机值填充、按行排序取 top-2、添加完整结果校验 ## 关联的Issue #2285 ## 测试 1. **单元测试验证** - 执行 calc_buckets_limit_and_offset 算子 UT,验证参数校验和范围检查生效 - 执行 compare_and_bit_pack 算子 UT,验证 COMPLEX64/BOOL/DIM_ERROR 用例通过 - 执行 topk 算子 UT,验证 SMALLEST_LAST_DIM 用例排序结果正确 2. **回归测试** - 确保修改不影响其他已有 UT 用例的通过 ## 文档更新 无文档更新 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4173 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4187 merge master into master refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 将 math 模块下 80+ 算子的 arch35 kernel 实现从 MicroAPI 接口迁移为 Reg(寄存器)接口,统一编程范式。 ### 改动范围 涉及算子: abs, abs_grad, add_n, adjacent_difference, arg_max_with_value, assign_add, assign_sub, atan2, bitwise_xor, cast, cdist, cdist_grad, ceil, complex_abs, cummin, cumsum, div, dot, exp, eye, floor, floor_div, floor_mod, fused_mul_add_n, grouped_bias_add_grad, inv, is_close, kth_value, lerp, lin_space, log, log1p, logical_or, mod, nan_to_num, neg, pow, power, reciprocal, reduce_all, reduce_any, reduce_log_sum_exp, reduce_nansum, reduce_prod, reduce_var, right_shift, rint, round, rsqrt, rsqrt_grad, sign, signbit, sinh, sort, sort_with_index, tanh, tanh_grad, tensor_equal, top_k_v2, trunc, truncate_div 等 ### 改动方式 - 将 MicroAPI 调用替换为等价 Reg API 调用 - 适配 arch35(ascend950)指令集特性 - 保持算子功能不变 ## 测试 - 涉及算子全量回归测试 ## 类型标签 - [x] 重构 ## 关联的Issue - #2295 See merge request: cann/ops-math!4187 | 1 个月前 | |
Conj/InplaceTopKDistance/TopKPQDistanceV2 使能 AICPU 常量折叠 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !4305 merge feat/enable-aicpu-constant-folding-conj-topk into master Conj/InplaceTopKDistance/TopKPQDistanceV2 使能 AICPU 常量折叠 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 Conj、InplaceTopKDistance、TopKPQDistanceV2 三个 AICPU 算子的 opInfo.opsFlag 已置为 OPS_FLAG_OPEN,但 kernel 实现并未编入 libopconstant_folding_math.so,折叠标志位处于「空开」状态——GE 图编译期即使命中常量输入,也找不到可在编译机上执行的 host 侧 kernel。 AICPU 算子参与常量折叠需同时满足两个条件:opsFlag 为 OPS_FLAG_OPEN(已满足),以及 kernel 以 host 版本编入 libopconstant_folding_math.so 并安装到 opp/built-in/op_impl/host_cpu/(本次补齐)。 改动共 6 个文件、9 增 6 删,沿用 math/tile 已验证的路径,未新增任何公共基础设施: **1)CMakeLists 追加 HOSTCPU TRUE** cmake -add_all_modules_sources(OPTYPE conj ACLNNTYPE aclnn_exclude) +add_all_modules_sources(OPTYPE conj ACLNNTYPE aclnn_exclude HOSTCPU TRUE) 该参数经 cmake/func.cmake 的 add_all_modules_sources 解析后,创建 OBJECT 目标 <op>_host_const_obj(编译期定义 OPS_MATH_AICPU_HOST_KERNEL),登记进 cache 变量 AICPU_HOST_OBJ_TARGETS;cmake/symbol.cmake 的 gen_aicpu_const_symbol() 汇总链接出 so 并 install 到 AICPU_HOST_KERNEL_IMPL。 **2)kernel 注册宏改用 OPS_MATH_REGISTER_CPU_KERNELV2** cpp +#include "aicpu/math_aicpu_register.h" -REGISTER_CPU_KERNEL(kConj, Conj); +OPS_MATH_REGISTER_CPU_KERNELV2(kConj, Conj); 与 math/tile 现状对齐。该宏为条件包装:未定义 OPS_MATH_AICPU_HOST_KERNEL 时(device 侧 aicpu so、cust 包、UT)展开为原 REGISTER_CPU_KERNEL;定义时以 weak 符号探测 RegistCpuKernelV2,存在则注册 V2、缺失则回退 V1,兼容旧版 libaicpu_context_host.a。 **未改动项**:*_aicpu_def.cpp 无需变更(opsFlag 本就是 OPS_FLAG_OPEN);三个算子的 kernel 均未依赖 driver/ascend_hal.h 等 device-only 接口,无需像 Tile 那样为 halSdmaCopy 增加条件隔离;三个算子无 tiling 文件,无需 DISABLE_IN_OPP 参数。 ## 关联的Issue #2414 ## 测试 **1. device 侧零回归验证** 将改动前的 conj_aicpu.cpp 单独预处理,与改动后 device 模式(不定义 OPS_MATH_AICPU_HOST_KERNEL)输出对比注册语句,**逐字节完全一致**: cpp std::shared_ptr<CpuKernel> Creator_kConj_Kernel() { ... } bool g_kConj_Kernel_Creator __attribute__((unused)) = RegistCpuKernel(kConj, Creator_kConj_Kernel); 整份预处理输出的差异仅为新增的 RegistCpuKernelV2 weak 声明,及 __LINE__ 因新增 include 的整体偏移。 **2. 编译构建测试** bash build.sh --pkg -j16 全量构建通过,EXIT=0,构建错误数 0。CMake 配置期确认三个新 OBJECT 目标建立: -- add_aicpu_host_kernel_modules for conj_host_const_obj -- add_aicpu_host_kernel_modules for inplace_top_k_distance_host_const_obj -- add_aicpu_host_kernel_modules for top_k_pq_distance_v2_host_const_obj 构建期确认链接成功:Linking libopconstant_folding_math.so using host compiler okay. **3. so 内容核对(正反对照)** | 算子 | HOSTCPU | so 中 | |---|---|---| | Conj / InplaceTopKDistance / TopKPQDistanceV2 | 本次新开 | 命中 | | Tile / TransData | 原有 | 命中 | | AbsGrad / BesselI0e / Bincount / AdjacentDifference | 未开 | 缺失(预期) | 反向对照用于排除字符串偶然匹配。另确认三个新 .o 各含 1 个 Creator_*_Kernel 符号且均引用 RegistCpuKernelV2。 **4. 打包验证** so 已进 run 包,路径与 AICPU_HOST_KERNEL_IMPL 一致: $ ./cann-910b-ops-math_9.1.0_linux-aarch64.run --list | grep opconstant -r--r----- 1000/1000 8015336 ./opp/built-in/op_impl/host_cpu/libopconstant_folding_math.so 解包后与构建产物 md5 一致(b9f723f0fc67519aff285e8ab535c314),并对解包实物重跑了上述正反对照,结果相同。 **5. AICPU UT 回归** bash build.sh -u --opkernel_aicpu --ops=conj,inplace_top_k_distance,top_k_pq_distance_v2 -j16 [==========] Running 26 tests from 3 test suites. TEST_CONJ_UT 6 tests TEST_INPLACE_TOP_K_DISTANCE_UT 8 tests TEST_TOP_K_PQ_DISTANCE_V2_UT 12 tests [ PASSED ] 26 tests. ## 文档更新 无。本改动不涉及对外接口与文档。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4305 | 1 个月前 | |
批量算子使用elewise16B接口 Co-authored-by: ligen<ligen75@h-partners.com> # message auto-generated for no-merge-commit merge: !4390 merge master into master 批量算子使用elewise16B接口 Created-by: ligen75 Commit-by: ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> elewise算子使用elewise16B接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2493 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 自验通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4390 | 1 个月前 | |
整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Co-authored-by: m0_73979701<1958538170@qq.com> # message auto-generated for no-merge-commit merge: !4623 merge feat/def-dtype-infershape-exception-checks-v2 into master 整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Created-by: m0_73979701 Commit-by: m0_73979701 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 整改了 acosh、asinh、cosh、real 四个算子的 def 驱动、推导逻辑及异常拦截: - def 驱动 dtype:acosh/asinh/real 删除多余 dtype TilingKey,kernel 使用 DTYPE_X/DTYPE_OUTPUT;cosh 保留既有非 dtype 单值调度轴。 - InferShape/InferDataType:InferShape 复用 Ops::Base::InferShape4Elewise 并保留在 op_host;InferDataType 放在 op_graph/*_graph_infer.cpp,其中 Real 保留 complex 到实数的特殊映射。 - 异常拦截:补充 RegBase 私有格式、rank、负 shape size、输入输出 shape/dtype 等校验。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-math/issues/2661 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> - bash build.sh --pkg --ops=acosh,asinh,cosh,real --soc=ascend950 -j8:通过,13 个 kernel 变体完成编译。 - InferShape UT:8/8 通过。 - API UT:53/53 通过。 - pre-commit 全量检查(含 clang-format、codespell、OAT):通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无,未修改 CMake、license、README/设计文档,也未改变 DISABLE_IN_OPP 配置。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-math!4623 | 21 天前 | |
docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !4580 merge doc into master docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新8个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2614 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4580 | 24 天前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
feat: cummin补充infershape和inferdtype实现及UT用例 Co-authored-by: clinglai0517<laichangling@huawei.com> # message auto-generated for no-merge-commit merge: !4635 merge cummin-infershape into master feat: cummin补充infershape和inferdtype实现及UT用例 Created-by: clinglai0517 Commit-by: clinglai0517 Merged-by: cann-robot Description: ## 描述 补充Cummin 算子 GE 图层推断(InferShape/InferDataType)。原实现仅注册了单输入单输出工具 InferShape4Elewise,而 Cummin 是 1 输入 2 输出(y、argmin),第二个输出 argmin 的 shape 无法得到保证;且原 UT 用例按 2 输入 1 输出编写,与算子定义不符,掩盖了该问题。 修改内容 1. **math/cummin/op_host/cummin_infershape.cpp** - 重写 InferShape:显式处理双输出,y 与 argmin 的 shape 均与输入 x 一致(支持动态 shape 与未知 rank 透传); - 新增 InferDataType:y.dtype 跟随输入 x,argmin.dtype 固定为 int32。 2. **math/cummin/tests/ut/op_host/test_cummin_infershape.cpp** - 按 1 输入 2 输出重写用例,覆盖: - shape:同 shape、标量、动态(-1)、未知 rank(-2); - dtype:float / float16 / bf16 / int32(验证 y 跟随 x、argmin 为 int32)。 ## 关联的Issue Issue [#2620](https://gitcode.com/cann/ops-math/issues/2620) ## 测试 bash bash build.sh -u --ophost --soc=ascend910b --ops=cummin --gtest_filter=CumminInfershape.* 结果:**8/8 用例全部通过**。 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4635 | 20 天前 | |
fix aclnncumprod nullptr issue Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4401 merge master_bak into master fix aclnncumprod nullptr issue Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> fix aclnncumprod nullptr issue ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2483 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4401 | 1 个月前 | |
docs: 修复多个算子文档格式与描述一致性 Co-authored-by: chensi79<chensi79@huawei.com> # message auto-generated for no-merge-commit merge: !4565 merge fix/issues-2573-2584-doc-format-20260811T082625Z-6364 into master docs: 修复多个算子文档格式与描述一致性 Created-by: chensi79 Commit-by: chensi79 Merged-by: cann-robot Description: ## 描述 - 修复 Cumsum 与 CumulativeLogsumexp 数学下标的 Markdown 渲染。 - 统一 DataCompare 的 FLOAT 类型描述、幂次格式并去除重复约束。 - 修正 Digamma 参数引用,规范函数原型和参数表格。 ## 关联的Issue Closes #2573, #2575, #2577, #2578, #2579, #2580, #2581, #2582, #2584 ## 测试 - git diff --check - 使用 CommonMark 解析器检查 6 个修改文档 - 提交前 trailing-whitespace、codespell、密钥检测和 OAT 合规检查通过 ## 文档更新 更新 Cumsum、CumulativeLogsumexp、DataCompare 和 Digamma 文档。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4565 | 26 天前 | |
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 个月前 | |
docs: 修复多个算子文档格式与描述一致性 Co-authored-by: chensi79<chensi79@huawei.com> # message auto-generated for no-merge-commit merge: !4565 merge fix/issues-2573-2584-doc-format-20260811T082625Z-6364 into master docs: 修复多个算子文档格式与描述一致性 Created-by: chensi79 Commit-by: chensi79 Merged-by: cann-robot Description: ## 描述 - 修复 Cumsum 与 CumulativeLogsumexp 数学下标的 Markdown 渲染。 - 统一 DataCompare 的 FLOAT 类型描述、幂次格式并去除重复约束。 - 修正 Digamma 参数引用,规范函数原型和参数表格。 ## 关联的Issue Closes #2573, #2575, #2577, #2578, #2579, #2580, #2581, #2582, #2584 ## 测试 - git diff --check - 使用 CommonMark 解析器检查 6 个修改文档 - 提交前 trailing-whitespace、codespell、密钥检测和 OAT 合规检查通过 ## 文档更新 更新 Cumsum、CumulativeLogsumexp、DataCompare 和 Digamma 文档。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4565 | 26 天前 | |
3个算子原型增加去重宏 Co-authored-by: zhoulong50_hw<zhoulong50@huawei.com> # message auto-generated for no-merge-commit merge: !4564 merge proto-add-dedup-macro into master 3个算子原型增加去重宏 Created-by: zhoulong50_hw Commit-by: zhoulong50_hw Merged-by: cann-robot Description: ## 描述 为 DataCompare、SliceLastDim、SliceWithAxes 三个算子原型头文件增加去重宏保护 (#ifndef OPS_PROTO_DEF_<OP> / #define / #endif),包裹 REG_OP ... OP_END_FACTORY_REG 块。 在多仓组合编译或头文件交叉包含场景下,可避免同一算子被重复注册导致的编译/链接冲突。 宏名按算子名大写、去分隔符命名:OPS_PROTO_DEF_DATACOMPARE、OPS_PROTO_DEF_SLICELASTDIM、OPS_PROTO_DEF_SLICEWITHAXES。 本次仅增加预处理宏保护,不改变算子功能、数据类型、约束与调用路径。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2590 ## 测试 算子级冒烟/泛化测试。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:算子原型去重宏保护(构建健壮性) See merge request: cann/ops-math!4564 | 26 天前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
docs: 修复多个算子文档格式与描述一致性 Co-authored-by: chensi79<chensi79@huawei.com> # message auto-generated for no-merge-commit merge: !4565 merge fix/issues-2573-2584-doc-format-20260811T082625Z-6364 into master docs: 修复多个算子文档格式与描述一致性 Created-by: chensi79 Commit-by: chensi79 Merged-by: cann-robot Description: ## 描述 - 修复 Cumsum 与 CumulativeLogsumexp 数学下标的 Markdown 渲染。 - 统一 DataCompare 的 FLOAT 类型描述、幂次格式并去除重复约束。 - 修正 Digamma 参数引用,规范函数原型和参数表格。 ## 关联的Issue Closes #2573, #2575, #2577, #2578, #2579, #2580, #2581, #2582, #2584 ## 测试 - git diff --check - 使用 CommonMark 解析器检查 6 个修改文档 - 提交前 trailing-whitespace、codespell、密钥检测和 OAT 合规检查通过 ## 文档更新 更新 Cumsum、CumulativeLogsumexp、DataCompare 和 Digamma 文档。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4565 | 26 天前 | |
style: 修复代码规范问题 Co-authored-by: xiafengkou<luojiangtao4@huawei.com> # message auto-generated for no-merge-commit merge: !4610 merge luo1 into master style: 修复代码规范问题 Created-by: xiafengkou Commit-by: xiafengkou Merged-by: cann-robot Description: style: 修复代码规范问题 ## 描述 本次改动包含三处代码规范修复,均不涉及逻辑变更: 1. cdist_grad_apt.cpp: CDIST_GRAD_LAUNCH 宏体包裹 do-while(0),防止宏在 if/else 语句中产生悬挂问题 2. amp_update_scale.h: IsFinite 中位运算表达式补充括号,明确 >> 与 == 的优先级顺序 3. aclnn_div.cpp: promoteType 变量声明与初始化合并为一行,符合"变量应在声明时初始化"的规范要求 ## 关联的Issue 无 ## 测试 未运行编译/单测。三处改动均为纯语法层面的规范调整,不影响运行时逻辑: - do-while(0) 包裹后宏作为单条语句使用,行为不变 - 括号仅明确运算优先级,原表达式已隐式满足该优先级 - 声明与初始化合并,变量值与使用时机不变 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码规范修复 See merge request: cann/ops-math!4610 | 22 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
修改dot算子readme.md文档错误 Co-authored-by: sunzhongwen1<sunzhongwen1@huawei.com> # message auto-generated for no-merge-commit merge: !4622 merge docsmodify into master 修改dot算子readme.md文档错误 Created-by: sunzhongwen1 Commit-by: sunzhongwen1 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改dot算子README.md文档的错误 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4622 | 24 天前 | |
修复 CMakeLists 中 aclnn_exclude 配置 Co-authored-by: ForestFrame<24011210883@stu.xidian.edu.cn> # message auto-generated for no-merge-commit merge: !3735 merge fix-aclnn-exclude-master into master 修复 CMakeLists 中 aclnn_exclude 配置 Created-by: ForestFrame Commit-by: ForestFrame Merged-by: cann-robot Description: ## 描述 修复 CMakeLists 中 aclnn_exclude 配置 ## 关联的Issue 关联 Issue:#2119 [Bug-Report|缺陷反馈]: 算子不应自动生成aclnn api ## 测试 已检查算子相关配置,确认修改后不会再自动生成 aclnn api。暂未执行完整二级冒烟测试。 ## 文档更新 无文档更新。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3735 | 2 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
FIx the null-check macros for the five operators Co-authored-by: yangjinhan<yangjinhan@huawei.com> # message auto-generated for no-merge-commit merge: !4561 merge fix-add-null-check-macro into master FIx the null-check macros for the five operators Created-by: Ruyue1550 Commit-by: yangjinhan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补全5个算子(MatrixSetDiagV2、Erfc、GetShape、HistogramFixedWidth、TileWithAxis)的判空宏 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4561 | 26 天前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
test: 更新CumulativeLogsumexp/ExpSegsumGrad/FusedMulAddnL2loss的golden测试数据 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4537 merge master into master test: 更新CumulativeLogsumexp/ExpSegsumGrad/FusedMulAddnL2loss的golden测试数据 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 更新 3 个算子的 golden 测试数据,新增 CumulativeLogsumexp 多路径 spec 及同步其他算子最新参考值。 | 算子 | 文件 | 变化 | |------|------|------| | CumulativeLogsumexp | golden.py | +81 | | ExpSegsumGrad | golden.py | +165 | | FusedMulAddnL2loss | golden.py | +56 | ## 类型标签 - [x] 测试 ## 关联的Issue - #2564 See merge request: cann/ops-math!4537 | 27 天前 | |
feat: 支持八个迁移算子的常量折叠(#2551) Co-authored-by: pan-tong<pantong@huawei.com> # message auto-generated for no-merge-commit merge: !4511 merge feat/constant-folding-infershape into master feat: 支持八个迁移算子的常量折叠(#2551) Created-by: pan-tong Commit-by: pan-tong Merged-by: cann-robot Description: ## 描述 为 Ceil、ConcatV2、Expand、GreaterEqual、InvertPermutation、StridedSlice、StridedSliceV2、TransData 接入 HOSTCPU 常量折叠。 - 为尚未接线的 7 个算子在 CMake 中启用 HOSTCPU TRUE,将现有 AICPU kernel 编入 libopconstant_folding_math.so。 - 8 个算子的 AICPU kernel 使用 OPS_MATH_REGISTER_CPU_KERNELV2,兼容 device 注册和 host CPU Kernel V2 注册。 - 为 GreaterEqual 补齐 OPS_FLAG_OPEN;其余算子沿用已有 OPEN 配置。 - TransData 沿用已有 HOSTCPU 配置,并复用已接入 host object 的 format_transfer 辅助源。 - 增强 Ceil AICPU UT 的输出校验,新增 Ceil 全 Const GE 图常量折叠用例。 本 PR 不修改算子的 infershape 实现。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2551 ## 测试 - AICPU UT:8 个算子共 156 个用例全部通过。 - HOSTCPU 构建:libopconstant_folding_math.so 构建成功,包含 8 个算子的 host 注册。 - 安装级 GE 常量折叠:8 个算子的全 Const 图输出均校验通过。 - 逐算子日志确认对应 host kernel 执行,ConstantFoldingPass 返回码均为 0。 - pre-commit:clang-format、codespell、OAT 等检查全部通过。 - GitCode 服务端 Hooks:通过。 ## 文档更新 无。该改动不改变算子接口和使用方式。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4511 | 25 天前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
feat: 补充eye算子op_api UT Co-authored-by: wangqi_ai<wangqi195@hisilicon.com> # message auto-generated for no-merge-commit merge: !4061 merge feat/ut_eye into master feat: 补充eye算子op_api UT Created-by: wangqi_ai Commit-by: wangqi_ai Merged-by: cann-robot Description: ## 描述 补充eye算子的op_api和op_host infershape级别单元测试,覆盖以下场景: - 各数据类型测试 - 不同维度测试 - 异常场景测试:nullptr输入输出、shape不匹配等 ## 关联的Issue #2465 ## 测试 - 编译验证:bash build.sh -u --soc=ascend950 --ops=eye --noexec 编译通过 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:UT补充 **关联 Issue:** #2465 See merge request: cann/ops-math!4061 | 1 个月前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
docs: 更新 fused_mul_add/fused_mul_add_add/mul_no_nan 算子 README 产品支持表,标记 Atlas A2/A3 系列产品为支持 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !4554 merge master into master docs: 更新 fused_mul_add/fused_mul_add_add/mul_no_nan 算子 README 产品支持表,标记 Atlas A2/A3 系列产品为支持 Created-by: pingchuantang Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 更新 fused_mul_add、fused_mul_add_add、mul_no_nan 三个算子的 README「产品支持情况」表,将 Atlas A2/A3 训练/推理系列产品由「不支持(×)」标记为「支持(√)」。 ## 关联的Issue - #2583 ## 测试 本次为纯文档变更(README 产品支持表更新),不涉及算子功能逻辑改动,无需算子功能测试。 ## 文档更新 - math/fused_mul_add/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 - math/fused_mul_add_add/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 - math/mul_no_nan/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4554 | 26 天前 | |
docs: 更新 fused_mul_add/fused_mul_add_add/mul_no_nan 算子 README 产品支持表,标记 Atlas A2/A3 系列产品为支持 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !4554 merge master into master docs: 更新 fused_mul_add/fused_mul_add_add/mul_no_nan 算子 README 产品支持表,标记 Atlas A2/A3 系列产品为支持 Created-by: pingchuantang Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 更新 fused_mul_add、fused_mul_add_add、mul_no_nan 三个算子的 README「产品支持情况」表,将 Atlas A2/A3 训练/推理系列产品由「不支持(×)」标记为「支持(√)」。 ## 关联的Issue - #2583 ## 测试 本次为纯文档变更(README 产品支持表更新),不涉及算子功能逻辑改动,无需算子功能测试。 ## 文档更新 - math/fused_mul_add/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 - math/fused_mul_add_add/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 - math/mul_no_nan/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4554 | 26 天前 | |
refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4187 merge master into master refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 将 math 模块下 80+ 算子的 arch35 kernel 实现从 MicroAPI 接口迁移为 Reg(寄存器)接口,统一编程范式。 ### 改动范围 涉及算子: abs, abs_grad, add_n, adjacent_difference, arg_max_with_value, assign_add, assign_sub, atan2, bitwise_xor, cast, cdist, cdist_grad, ceil, complex_abs, cummin, cumsum, div, dot, exp, eye, floor, floor_div, floor_mod, fused_mul_add_n, grouped_bias_add_grad, inv, is_close, kth_value, lerp, lin_space, log, log1p, logical_or, mod, nan_to_num, neg, pow, power, reciprocal, reduce_all, reduce_any, reduce_log_sum_exp, reduce_nansum, reduce_prod, reduce_var, right_shift, rint, round, rsqrt, rsqrt_grad, sign, signbit, sinh, sort, sort_with_index, tanh, tanh_grad, tensor_equal, top_k_v2, trunc, truncate_div 等 ### 改动方式 - 将 MicroAPI 调用替换为等价 Reg API 调用 - 适配 arch35(ascend950)指令集特性 - 保持算子功能不变 ## 测试 - 涉及算子全量回归测试 ## 类型标签 - [x] 重构 ## 关联的Issue - #2295 See merge request: cann/ops-math!4187 | 1 个月前 | |
test: 更新CumulativeLogsumexp/ExpSegsumGrad/FusedMulAddnL2loss的golden测试数据 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4537 merge master into master test: 更新CumulativeLogsumexp/ExpSegsumGrad/FusedMulAddnL2loss的golden测试数据 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 更新 3 个算子的 golden 测试数据,新增 CumulativeLogsumexp 多路径 spec 及同步其他算子最新参考值。 | 算子 | 文件 | 变化 | |------|------|------| | CumulativeLogsumexp | golden.py | +81 | | ExpSegsumGrad | golden.py | +165 | | FusedMulAddnL2loss | golden.py | +56 | ## 类型标签 - [x] 测试 ## 关联的Issue - #2564 See merge request: cann/ops-math!4537 | 27 天前 | |
fix: 规范示例代码格式 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !4464 merge master into master fix: 规范示例代码格式 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 描述 规范 math/ 目录下相关算子的示例代码格式,不涉及功能逻辑变更: - 将 CHECK_RET(..., return ret;); 统一为 CHECK_RET(..., return ret);,涉及 24 个文件、29 处。 - 将文档中的 while(0) 统一为 while (0),涉及 less、less_equal、gcd 共 5 个文件、10 处。 - 为 not_equal 文档中三元运算符的冒号后补充空格,涉及 2 个文件、4 处。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2527 ## 测试 - 使用全文检索确认修改范围内无上述格式问题残留。 - 检查 Git diff,确认共修改 31 个文件、43 处,均为格式调整。 - 推送时 Git Hooks 检查通过。 - 本次仅修改示例及文档格式,未执行算子功能测试。 ## 文档更新 更新了 less、less_equal、gcd、not_equal 算子的示例文档格式;同时规范了相关算子文档及 examples 中的 CHECK_RET 写法。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:代码格式规范 See merge request: cann/ops-math!4464 | 1 个月前 | |
feat: 补充ger算子op_api UT Co-authored-by: wangqi_ai<wangqi195@hisilicon.com> # message auto-generated for no-merge-commit merge: !4063 merge feat/ut_ger into master feat: 补充ger算子op_api UT Created-by: wangqi_ai Commit-by: wangqi_ai Merged-by: cann-robot Description: ## 描述 补充ger算子的op_api和op_host infershape级别单元测试,覆盖以下场景: - 各数据类型测试 - 不同维度测试 - 异常场景测试:nullptr输入输出、shape不匹配等 ## 关联的Issue #2465 ## 测试 - 编译验证:bash build.sh -u --soc=ascend950 --ops=ger --noexec 编译通过 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:UT补充 **关联 Issue:** #2465 See merge request: cann/ops-math!4063 | 1 个月前 | |
feat(math): add GetDynamicDims AICPU op Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !4142 merge migrate-get-dynamic-dims into master feat(math): add GetDynamicDims AICPU op Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 为 math/get_dynamic_dims 新增 GetDynamicDims AICPU 算子迁移实现,补齐图模式构图、AICPU kernel 注册、UT、GEIR example 和文档入口。 主要改动: - 新增 math/get_dynamic_dims 算子目录,包含 CMake 接入、op_graph 定义、AICPU kernel 和 AICPU OpDef。 - 新增 GEIR graph example,用于验证图模式调用链路。 - 新增 AICPU UT,覆盖 GetDynamicDims AICPU kernel 的基础功能和异常路径。 - 新增 README,并更新 docs/zh/op_list.md。 本次迁移保持 op_host/infershape 和 aclnn/op_api 不支持,不额外新增对应实现。 ## 关联的Issue 暂无。 ## 测试 已执行并通过: bash bash build.sh -u --opkernel_aicpu --ops=get_dynamic_dims --gtest_filter=GetDynamicDimsAicpuTest* 已执行并通过自定义包构建: bash bash build.sh --pkg --ops=get_dynamic_dims --vendor_name=custom 已执行并通过 GEIR graph example: bash bash build.sh --run_example get_dynamic_dims graph 日志已确认自定义 AICPU 路径:aicpu_custom_scheduler RunCpuKernel[GetDynamicDims]。 已执行并通过 pre-commit: bash pre-commit run --files docs/zh/op_list.md math/get_dynamic_dims/CMakeLists.txt math/get_dynamic_dims/README.md math/get_dynamic_dims/examples/test_geir_get_dynamic_dims.cpp math/get_dynamic_dims/op_graph/get_dynamic_dims_proto.h math/get_dynamic_dims/op_kernel_aicpu/get_dynamic_dims_aicpu.cpp math/get_dynamic_dims/op_kernel_aicpu/get_dynamic_dims_aicpu.h math/get_dynamic_dims/op_kernel_aicpu/get_dynamic_dims_aicpu_def.cpp math/get_dynamic_dims/tests/ut/op_kernel_aicpu/test_get_dynamic_dims.cpp ## 文档更新 - 新增 math/get_dynamic_dims/README.md。 - 更新 docs/zh/op_list.md。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4142 | 1 个月前 | |
FIx the null-check macros for the five operators Co-authored-by: yangjinhan<yangjinhan@huawei.com> # message auto-generated for no-merge-commit merge: !4561 merge fix-add-null-check-macro into master FIx the null-check macros for the five operators Created-by: Ruyue1550 Commit-by: yangjinhan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补全5个算子(MatrixSetDiagV2、Erfc、GetShape、HistogramFixedWidth、TileWithAxis)的判空宏 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4561 | 26 天前 | |
fix: 规范示例代码格式 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !4464 merge master into master fix: 规范示例代码格式 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 描述 规范 math/ 目录下相关算子的示例代码格式,不涉及功能逻辑变更: - 将 CHECK_RET(..., return ret;); 统一为 CHECK_RET(..., return ret);,涉及 24 个文件、29 处。 - 将文档中的 while(0) 统一为 while (0),涉及 less、less_equal、gcd 共 5 个文件、10 处。 - 为 not_equal 文档中三元运算符的冒号后补充空格,涉及 2 个文件、4 处。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2527 ## 测试 - 使用全文检索确认修改范围内无上述格式问题残留。 - 检查 Git diff,确认共修改 31 个文件、43 处,均为格式调整。 - 推送时 Git Hooks 检查通过。 - 本次仅修改示例及文档格式,未执行算子功能测试。 ## 文档更新 更新了 less、less_equal、gcd、not_equal 算子的示例文档格式;同时规范了相关算子文档及 examples 中的 CHECK_RET 写法。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:代码格式规范 See merge request: cann/ops-math!4464 | 1 个月前 | |
feat: 支持八个迁移算子的常量折叠(#2551) Co-authored-by: pan-tong<pantong@huawei.com> # message auto-generated for no-merge-commit merge: !4511 merge feat/constant-folding-infershape into master feat: 支持八个迁移算子的常量折叠(#2551) Created-by: pan-tong Commit-by: pan-tong Merged-by: cann-robot Description: ## 描述 为 Ceil、ConcatV2、Expand、GreaterEqual、InvertPermutation、StridedSlice、StridedSliceV2、TransData 接入 HOSTCPU 常量折叠。 - 为尚未接线的 7 个算子在 CMake 中启用 HOSTCPU TRUE,将现有 AICPU kernel 编入 libopconstant_folding_math.so。 - 8 个算子的 AICPU kernel 使用 OPS_MATH_REGISTER_CPU_KERNELV2,兼容 device 注册和 host CPU Kernel V2 注册。 - 为 GreaterEqual 补齐 OPS_FLAG_OPEN;其余算子沿用已有 OPEN 配置。 - TransData 沿用已有 HOSTCPU 配置,并复用已接入 host object 的 format_transfer 辅助源。 - 增强 Ceil AICPU UT 的输出校验,新增 Ceil 全 Const GE 图常量折叠用例。 本 PR 不修改算子的 infershape 实现。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2551 ## 测试 - AICPU UT:8 个算子共 156 个用例全部通过。 - HOSTCPU 构建:libopconstant_folding_math.so 构建成功,包含 8 个算子的 host 注册。 - 安装级 GE 常量折叠:8 个算子的全 Const 图输出均校验通过。 - 逐算子日志确认对应 host kernel 执行,ConstantFoldingPass 返回码均为 0。 - pre-commit:clang-format、codespell、OAT 等检查全部通过。 - GitCode 服务端 Hooks:通过。 ## 文档更新 无。该改动不改变算子接口和使用方式。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4511 | 25 天前 | |
feat(fallback) Co-authored-by: esok11<yangsifa@huawei.com> # message auto-generated for no-merge-commit merge: !4624 merge f0813 into master feat(fallback) Created-by: esok11 Commit-by: esok11 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4624 | 24 天前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
FIx the null-check macros for the five operators Co-authored-by: yangjinhan<yangjinhan@huawei.com> # message auto-generated for no-merge-commit merge: !4561 merge fix-add-null-check-macro into master FIx the null-check macros for the five operators Created-by: Ruyue1550 Commit-by: yangjinhan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补全5个算子(MatrixSetDiagV2、Erfc、GetShape、HistogramFixedWidth、TileWithAxis)的判空宏 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4561 | 26 天前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
Conj/InplaceTopKDistance/TopKPQDistanceV2 使能 AICPU 常量折叠 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !4305 merge feat/enable-aicpu-constant-folding-conj-topk into master Conj/InplaceTopKDistance/TopKPQDistanceV2 使能 AICPU 常量折叠 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 Conj、InplaceTopKDistance、TopKPQDistanceV2 三个 AICPU 算子的 opInfo.opsFlag 已置为 OPS_FLAG_OPEN,但 kernel 实现并未编入 libopconstant_folding_math.so,折叠标志位处于「空开」状态——GE 图编译期即使命中常量输入,也找不到可在编译机上执行的 host 侧 kernel。 AICPU 算子参与常量折叠需同时满足两个条件:opsFlag 为 OPS_FLAG_OPEN(已满足),以及 kernel 以 host 版本编入 libopconstant_folding_math.so 并安装到 opp/built-in/op_impl/host_cpu/(本次补齐)。 改动共 6 个文件、9 增 6 删,沿用 math/tile 已验证的路径,未新增任何公共基础设施: **1)CMakeLists 追加 HOSTCPU TRUE** cmake -add_all_modules_sources(OPTYPE conj ACLNNTYPE aclnn_exclude) +add_all_modules_sources(OPTYPE conj ACLNNTYPE aclnn_exclude HOSTCPU TRUE) 该参数经 cmake/func.cmake 的 add_all_modules_sources 解析后,创建 OBJECT 目标 <op>_host_const_obj(编译期定义 OPS_MATH_AICPU_HOST_KERNEL),登记进 cache 变量 AICPU_HOST_OBJ_TARGETS;cmake/symbol.cmake 的 gen_aicpu_const_symbol() 汇总链接出 so 并 install 到 AICPU_HOST_KERNEL_IMPL。 **2)kernel 注册宏改用 OPS_MATH_REGISTER_CPU_KERNELV2** cpp +#include "aicpu/math_aicpu_register.h" -REGISTER_CPU_KERNEL(kConj, Conj); +OPS_MATH_REGISTER_CPU_KERNELV2(kConj, Conj); 与 math/tile 现状对齐。该宏为条件包装:未定义 OPS_MATH_AICPU_HOST_KERNEL 时(device 侧 aicpu so、cust 包、UT)展开为原 REGISTER_CPU_KERNEL;定义时以 weak 符号探测 RegistCpuKernelV2,存在则注册 V2、缺失则回退 V1,兼容旧版 libaicpu_context_host.a。 **未改动项**:*_aicpu_def.cpp 无需变更(opsFlag 本就是 OPS_FLAG_OPEN);三个算子的 kernel 均未依赖 driver/ascend_hal.h 等 device-only 接口,无需像 Tile 那样为 halSdmaCopy 增加条件隔离;三个算子无 tiling 文件,无需 DISABLE_IN_OPP 参数。 ## 关联的Issue #2414 ## 测试 **1. device 侧零回归验证** 将改动前的 conj_aicpu.cpp 单独预处理,与改动后 device 模式(不定义 OPS_MATH_AICPU_HOST_KERNEL)输出对比注册语句,**逐字节完全一致**: cpp std::shared_ptr<CpuKernel> Creator_kConj_Kernel() { ... } bool g_kConj_Kernel_Creator __attribute__((unused)) = RegistCpuKernel(kConj, Creator_kConj_Kernel); 整份预处理输出的差异仅为新增的 RegistCpuKernelV2 weak 声明,及 __LINE__ 因新增 include 的整体偏移。 **2. 编译构建测试** bash build.sh --pkg -j16 全量构建通过,EXIT=0,构建错误数 0。CMake 配置期确认三个新 OBJECT 目标建立: -- add_aicpu_host_kernel_modules for conj_host_const_obj -- add_aicpu_host_kernel_modules for inplace_top_k_distance_host_const_obj -- add_aicpu_host_kernel_modules for top_k_pq_distance_v2_host_const_obj 构建期确认链接成功:Linking libopconstant_folding_math.so using host compiler okay. **3. so 内容核对(正反对照)** | 算子 | HOSTCPU | so 中 | |---|---|---| | Conj / InplaceTopKDistance / TopKPQDistanceV2 | 本次新开 | 命中 | | Tile / TransData | 原有 | 命中 | | AbsGrad / BesselI0e / Bincount / AdjacentDifference | 未开 | 缺失(预期) | 反向对照用于排除字符串偶然匹配。另确认三个新 .o 各含 1 个 Creator_*_Kernel 符号且均引用 RegistCpuKernelV2。 **4. 打包验证** so 已进 run 包,路径与 AICPU_HOST_KERNEL_IMPL 一致: $ ./cann-910b-ops-math_9.1.0_linux-aarch64.run --list | grep opconstant -r--r----- 1000/1000 8015336 ./opp/built-in/op_impl/host_cpu/libopconstant_folding_math.so 解包后与构建产物 md5 一致(b9f723f0fc67519aff285e8ab535c314),并对解包实物重跑了上述正反对照,结果相同。 **5. AICPU UT 回归** bash build.sh -u --opkernel_aicpu --ops=conj,inplace_top_k_distance,top_k_pq_distance_v2 -j16 [==========] Running 26 tests from 3 test suites. TEST_CONJ_UT 6 tests TEST_INPLACE_TOP_K_DISTANCE_UT 8 tests TEST_TOP_K_PQ_DISTANCE_V2_UT 12 tests [ PASSED ] 26 tests. ## 文档更新 无。本改动不涉及对外接口与文档。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4305 | 1 个月前 | |
fix: def-driven dtype + InferDataType分离 for ApproximateEqual/Inv/Ndtri Co-authored-by: babeiee<125106023003@njust.edu.cn> # message auto-generated for no-merge-commit merge: !4549 merge fix/def-driven-dtype-and-infer-approximateequal into master fix: def-driven dtype + InferDataType分离 for ApproximateEqual/Inv/Ndtri Created-by: babeiee Commit-by: babeiee Merged-by: cann-robot Description: ## 描述 approximate_equal inv ndtri 算子共性问题修改 ## 关联的issue []https://gitcode.com/cann/ops-math/issues/2660 ## 测试 ## 文档更新 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-math!4549 | 20 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
isClose的示例中的输出类型不匹配 Co-authored-by: ji-jun1<jijun1@huawei.com> # message auto-generated for no-merge-commit merge: !4497 merge master into master isClose的示例中的输出类型不匹配 Created-by: ji-jun1 Commit-by: ji-jun1 Merged-by: cann-robot Description: ## 描述 isClose的aclnn demo中,存在变量申请的类型和使用的类型不匹配的问题 ## 关联的Issue [#2543](https://gitcode.com/cann/ops-math/issues/2543) <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 已测试通过 ## 文档更新 math/is_close/docs/aclnnIsClose.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4497 | 28 天前 | |
build: 将 op_graph 目录下所有 cpp 编入 libopsgraph_math.so Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !4484 merge master into master build: 将 op_graph 目录下所有 cpp 编入 libopsgraph_math.so Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 将 op_graph 目录下所有 cpp 文件递归编入 libopsgraph_math.so。原 cmake 配置仅编译匹配 *_graph_*.cpp、*_fallback.cpp、fusion_pass/*_pass.cpp 的文件,新增 op_graph 文件需手动调整 glob 模式;改为 GLOB_RECURSE 递归收集 op_graph 目录下所有 .cpp,后续新增文件自动纳入编译。 具体改动(cmake/func.cmake 两处): - add_all_modules_sources:file(GLOB ...) 改为 file(GLOB_RECURSE OP_GRAPH_SRCS ${SOURCE_DIR}/op_graph/*.cpp) - add_graph_plugin_sources:file(GLOB ...) 改为 file(GLOB_RECURSE OP_GRAPH_SRCS ${SOURCE_DIR}/*.cpp) ## 关联的Issue - #2540: 将 op_graph 目录下所有 cpp 自动编入 libopsgraph_math.so ## 测试 - 本地编译 ops-math,验证 libopsgraph_math.so 正常生成,op_graph 目录下新增 cpp 文件的符号被纳入。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:构建系统优化 See merge request: cann/ops-math!4484 | 1 个月前 | |
IsInf示例改用C++ RAII资源管理,与IsFinite示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4531 merge improve-example into master IsInf示例改用C++ RAII资源管理,与IsFinite示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/is_inf/examples/test_aclnn_is_inf.cpp 由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite/examples/test_aclnn_is_finite.cpp 示例风格保持一致: - 引入 StreamPtr/DeviceMemPtr/TensorPtr(unique_ptr + 自定义 deleter)及 aclGuard(shared_ptr + 析构 lambda),stream/device内存/tensor/workspace 随作用域自动回收; - Init/CreateAclTensor 改为接收智能指针引用,CreateAclTensor 补充 aclCreateTensor 判空; - 删除 main 末尾手动释放逻辑,任一 CHECK_RET 提前 return 时资源也能正确回收。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2556 ## 测试 - bash build.sh --run_example is_inf eager --soc=ascend950:编译通过,在 Ascend950PR 上运行成功,输出符合预期(输入无inf时结果全为0),示例正常退出,资源回收正常。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4531 | 27 天前 | |
fix: 修复多算子代码告警问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !3784 merge fix/code-review-warnings into master fix: 修复多算子代码告警问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> fix: 修复多算子代码告警问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/1323 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3784 | 1 个月前 | |
IsNegInf示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4630 merge isneginf-raii-example into master IsNegInf示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/is_neg_inf/examples/test_aclnn_isneginf.cpp 由手动资源管理改为 C++ RAII 管理,与同仓 math/is_inf、math/is_finite 示例风格保持一致: - 引入 StreamPtr/DeviceMemPtr/TensorPtr(unique_ptr + 自定义 deleter)及 aclGuard(shared_ptr + 析构 lambda),stream/device内存/tensor/workspace 随作用域自动回收; - Init/CreateAclTensor 改为接收智能指针引用,CreateAclTensor 补充 aclCreateTensor 判空; - 删除 main 末尾手动释放逻辑,任一 CHECK_RET 提前 return 时资源也能正确回收; - 顺带将结果打印格式 %f 修正为 %d(ACL_BOOL 输出为 0/1)。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2621 ## 测试 未在 Ascend 环境实际编译运行(缺少 aclnnop 生成头文件与设备);改动结构与已合并的 is_inf(PR #4531)、is_finite 示例完全一致。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4630 | 23 天前 | |
fix: 修复多算子代码告警问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !3784 merge fix/code-review-warnings into master fix: 修复多算子代码告警问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> fix: 修复多算子代码告警问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/1323 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3784 | 1 个月前 | |
统一.md中调用示例的代码风格 Co-authored-by: sunzhongwen1<sunzhongwen1@huawei.com> # message auto-generated for no-merge-commit merge: !4496 merge modifymd into master 统一.md中调用示例的代码风格 Created-by: sunzhongwen1 Commit-by: sunzhongwen1 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改部分算子aclnn文档中示例代码不规范问题: return ret;); --> return ret); ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4496 | 1 个月前 | |
feat: 补充kth_value算子L0级 UT Co-authored-by: wangqi_ai<wangqi195@hisilicon.com> # message auto-generated for no-merge-commit merge: !4067 merge feat/ut_kth_value into master feat: 补充kth_value算子L0级 UT Created-by: wangqi_ai Commit-by: wangqi_ai Merged-by: cann-robot Description: ## 描述 补充kth_value算子的op_api和op_host infershape级别单元测试,覆盖以下场景: - 各数据类型测试 - 不同维度测试 - 异常场景测试:nullptr输入输出、shape不匹配等 ## 关联的Issue #2465 ## 测试 - 编译验证:bash build.sh -u --soc=ascend950 --ops=kth_value --noexec 编译通过 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:UT补充 **关联 Issue:** #2465 See merge request: cann/ops-math!4067 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
fix: 规范示例代码格式 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !4464 merge master into master fix: 规范示例代码格式 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 描述 规范 math/ 目录下相关算子的示例代码格式,不涉及功能逻辑变更: - 将 CHECK_RET(..., return ret;); 统一为 CHECK_RET(..., return ret);,涉及 24 个文件、29 处。 - 将文档中的 while(0) 统一为 while (0),涉及 less、less_equal、gcd 共 5 个文件、10 处。 - 为 not_equal 文档中三元运算符的冒号后补充空格,涉及 2 个文件、4 处。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2527 ## 测试 - 使用全文检索确认修改范围内无上述格式问题残留。 - 检查 Git diff,确认共修改 31 个文件、43 处,均为格式调整。 - 推送时 Git Hooks 检查通过。 - 本次仅修改示例及文档格式,未执行算子功能测试。 ## 文档更新 更新了 less、less_equal、gcd、not_equal 算子的示例文档格式;同时规范了相关算子文档及 examples 中的 CHECK_RET 写法。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:代码格式规范 See merge request: cann/ops-math!4464 | 1 个月前 | |
fix: 规范示例代码格式 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !4464 merge master into master fix: 规范示例代码格式 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 描述 规范 math/ 目录下相关算子的示例代码格式,不涉及功能逻辑变更: - 将 CHECK_RET(..., return ret;); 统一为 CHECK_RET(..., return ret);,涉及 24 个文件、29 处。 - 将文档中的 while(0) 统一为 while (0),涉及 less、less_equal、gcd 共 5 个文件、10 处。 - 为 not_equal 文档中三元运算符的冒号后补充空格,涉及 2 个文件、4 处。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2527 ## 测试 - 使用全文检索确认修改范围内无上述格式问题残留。 - 检查 Git diff,确认共修改 31 个文件、43 处,均为格式调整。 - 推送时 Git Hooks 检查通过。 - 本次仅修改示例及文档格式,未执行算子功能测试。 ## 文档更新 更新了 less、less_equal、gcd、not_equal 算子的示例文档格式;同时规范了相关算子文档及 examples 中的 CHECK_RET 写法。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:代码格式规范 See merge request: cann/ops-math!4464 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
feat: 补充log_add_exp算子op_api UT Co-authored-by: wangqi_ai<wangqi195@hisilicon.com> # message auto-generated for no-merge-commit merge: !4068 merge feat/ut_log_add_exp into master feat: 补充log_add_exp算子op_api UT Created-by: wangqi_ai Commit-by: wangqi_ai Merged-by: cann-robot Description: ## 描述 补充log_add_exp算子的op_api和op_host infershape级别单元测试,覆盖以下场景: - 各数据类型测试 - 不同维度测试 - 异常场景测试:nullptr输入输出、shape不匹配等 ## 关联的Issue #2465 ## 测试 - 编译验证:bash build.sh -u --soc=ascend950 --ops=log_add_exp --noexec 编译通过 ## 文档更新 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:UT补充 **关联 Issue:** #2465 See merge request: cann/ops-math!4068 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
fix: 修复多算子代码告警问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !3784 merge fix/code-review-warnings into master fix: 修复多算子代码告警问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> fix: 修复多算子代码告警问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/1323 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3784 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
批量修改md文档冗余空格第3批 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !3318 merge master into master 批量修改md文档冗余空格第3批 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 批量修改md中冗余空格 ## 关联的Issue [DOC_1962#冗余空格](https://gitcode.com/cann/ops-math/issues/1962) ## 测试 自验证 ## 文档更新 all md ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [X ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3318 | 2 个月前 | |
docs: 更新 fused_mul_add/fused_mul_add_add/mul_no_nan 算子 README 产品支持表,标记 Atlas A2/A3 系列产品为支持 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !4554 merge master into master docs: 更新 fused_mul_add/fused_mul_add_add/mul_no_nan 算子 README 产品支持表,标记 Atlas A2/A3 系列产品为支持 Created-by: pingchuantang Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 更新 fused_mul_add、fused_mul_add_add、mul_no_nan 三个算子的 README「产品支持情况」表,将 Atlas A2/A3 训练/推理系列产品由「不支持(×)」标记为「支持(√)」。 ## 关联的Issue - #2583 ## 测试 本次为纯文档变更(README 产品支持表更新),不涉及算子功能逻辑改动,无需算子功能测试。 ## 文档更新 - math/fused_mul_add/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 - math/fused_mul_add_add/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 - math/mul_no_nan/README.md:产品支持表标记 Atlas A2/A3 训练/推理系列产品为支持 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4554 | 26 天前 | |
docs: 修正aclnnMuls out参数数据类型描述并补充错误码条目 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4356 merge fix/muls-out-dtype-desc into master docs: 修正aclnnMuls out参数数据类型描述并补充错误码条目 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 修正aclnnMulsGetWorkspaceSize中out参数的数据类型描述。原描述「与self的数据类型相同」与算子实现行为不一致——实现中out的数据类型经self与other推导后通过cast转换得到,不要求与self相同。同步修改self参数使用说明,去除「与out的数据类型相同」的循环矛盾表述,并在错误码表中补充「推导出的数据类型无法转换为指定输出out的类型」条目。 具体改动: 1. self参数「使用说明」:去除「与out的数据类型相同」,仅保留与other的数据类型推导规则 2. out参数「使用说明」:由「与self的数据类型相同」改为「数据类型需要是self与other推导之后可转换的数据类型(参见互转换关系)」 3. 错误码表ACLNN_ERR_PARAM_INVALID:rowspan 4→5,新增「推导出的数据类型无法转换为指定输出out的类型」 与同类算子(adds/subs/divs等)的表述及错误码条目对齐。 ## 关联的Issue - #2437 ## 测试 文档变更,无需测试。 ## 文档更新 更新了 math/muls/docs/aclnnMuls&aclnnInplaceMuls.md 中 aclnnMulsGetWorkspaceSize 段落的参数说明和错误码表。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4356 | 1 个月前 | |
refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4187 merge master into master refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 将 math 模块下 80+ 算子的 arch35 kernel 实现从 MicroAPI 接口迁移为 Reg(寄存器)接口,统一编程范式。 ### 改动范围 涉及算子: abs, abs_grad, add_n, adjacent_difference, arg_max_with_value, assign_add, assign_sub, atan2, bitwise_xor, cast, cdist, cdist_grad, ceil, complex_abs, cummin, cumsum, div, dot, exp, eye, floor, floor_div, floor_mod, fused_mul_add_n, grouped_bias_add_grad, inv, is_close, kth_value, lerp, lin_space, log, log1p, logical_or, mod, nan_to_num, neg, pow, power, reciprocal, reduce_all, reduce_any, reduce_log_sum_exp, reduce_nansum, reduce_prod, reduce_var, right_shift, rint, round, rsqrt, rsqrt_grad, sign, signbit, sinh, sort, sort_with_index, tanh, tanh_grad, tensor_equal, top_k_v2, trunc, truncate_div 等 ### 改动方式 - 将 MicroAPI 调用替换为等价 Reg API 调用 - 适配 arch35(ascend950)指令集特性 - 保持算子功能不变 ## 测试 - 涉及算子全量回归测试 ## 类型标签 - [x] 重构 ## 关联的Issue - #2295 See merge request: cann/ops-math!4187 | 1 个月前 | |
fix: def-driven dtype + InferDataType分离 for ApproximateEqual/Inv/Ndtri Co-authored-by: babeiee<125106023003@njust.edu.cn> # message auto-generated for no-merge-commit merge: !4549 merge fix/def-driven-dtype-and-infer-approximateequal into master fix: def-driven dtype + InferDataType分离 for ApproximateEqual/Inv/Ndtri Created-by: babeiee Commit-by: babeiee Merged-by: cann-robot Description: ## 描述 approximate_equal inv ndtri 算子共性问题修改 ## 关联的issue []https://gitcode.com/cann/ops-math/issues/2660 ## 测试 ## 文档更新 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-math!4549 | 20 天前 | |
批量算子使用elewise16B接口 Co-authored-by: ligen<ligen75@h-partners.com> # message auto-generated for no-merge-commit merge: !4390 merge master into master 批量算子使用elewise16B接口 Created-by: ligen75 Commit-by: ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> elewise算子使用elewise16B接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2493 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 自验通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4390 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
fix: 规范示例代码格式 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !4464 merge master into master fix: 规范示例代码格式 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 描述 规范 math/ 目录下相关算子的示例代码格式,不涉及功能逻辑变更: - 将 CHECK_RET(..., return ret;); 统一为 CHECK_RET(..., return ret);,涉及 24 个文件、29 处。 - 将文档中的 while(0) 统一为 while (0),涉及 less、less_equal、gcd 共 5 个文件、10 处。 - 为 not_equal 文档中三元运算符的冒号后补充空格,涉及 2 个文件、4 处。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2527 ## 测试 - 使用全文检索确认修改范围内无上述格式问题残留。 - 检查 Git diff,确认共修改 31 个文件、43 处,均为格式调整。 - 推送时 Git Hooks 检查通过。 - 本次仅修改示例及文档格式,未执行算子功能测试。 ## 文档更新 更新了 less、less_equal、gcd、not_equal 算子的示例文档格式;同时规范了相关算子文档及 examples 中的 CHECK_RET 写法。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:代码格式规范 See merge request: cann/ops-math!4464 | 1 个月前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
[CANNBOT]acosh_grad支持数据类型校验,population_count、scale golden修改 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !4381 merge ticket into master [CANNBOT]acosh_grad支持数据类型校验,population_count、scale golden修改 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> acosh_grad支持数据类型校验,population_count、scale golden修改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2478 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4381 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
fixed README.md Co-authored-by: littlecc<wangguocheng3@huawei.com> # message auto-generated for no-merge-commit merge: !4211 merge br_power_fix into master fixed README.md Created-by: littlecc Commit-by: littlecc Merged-by: cann-robot Description: ## 描述 power算子按规范修改文档 ## 关联的Issue [#2307](https://gitcode.com/cann/ops-math/issues/2307) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4211 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
math仓新增InplaceTopKDistance、TopKPQDistanceV2与ProdEnvMatACalcRij AICPU算子 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !4133 merge aicpu_migrate_inplace_topk_distance_and_topk_pq_distance_v2 into master math仓新增InplaceTopKDistance、TopKPQDistanceV2与ProdEnvMatACalcRij AICPU算子 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 从 canndev 迁入三个 AICPU 算子到 math 目录,交付件含 op_graph(proto + InferDataType)、op_host(RT2 InferShape)、op_kernel_aicpu(kernel + opdef)、UT、GE 图模式 example、README,并同步 docs/zh/op_list.md(硬件单元 AI CPU)。两算子无 aclnn 接口(ACLNNTYPE aclnn_exclude)。 **InplaceTopKDistance**(无 OUTPUT,原地更新):将一组已排序距离数据与一组新数据合并重排后取前 k 个,原地更新 topk_pq_distance/topk_pq_index/topk_pq_ivf。 - 源侧 RT1 InferShape 为空实现(无输出算子),1:1 迁为 RT2 空 InferShape;RT1 Verify 无 RT2 适配接口,不迁,相关输入校验由 kernel 运行期守卫承担。 - example 以 SetInputs().SetTargets() 驱动(无输出算子不能进 SetOutputs)。 **TopKPQDistanceV2**:借助分组极值剪枝,在最后一维查找 k 个最大/最小元素及索引。 - RT2 InferShape 迁自 canndev op_proto/runtime,输出 shape [batch, k]。 - 补 RT2 InferDataType:canndev RT1 在 InferShape 内用 SetDataType 设了输出 dtype(topk_distance=输入 dtype、topk_index=int32),拆到 RT2 后归 op_graph/*_graph_infer.cpp。 - 迁移即重构(仅本次迁入文件):VLA Item<T>[k_] 改 std::vector;ParallelFor 返回值纳入错误传播;移除死代码/未定义声明/无用 include;fp16 统一 Eigen::half;补 k>0 守卫(源 kernel 的 VLA 在 k<=0 时为 UB),且 kernel 与 InferShape 两侧校验边界对齐;group_size 除零守卫按 G.EXP.22-CPP 改为紧邻单一 ==0 判断。 两算子 opInfo 逐个回 canndev 源核对:opsFlag=OPS_FLAG_OPEN、formatAgnostic=True 显式覆盖默认,subTypeOfInferShape=1 用默认;打包后回查生成的 aicpu_kernel.ini 与源一致。新增守卫仅拒绝非法输入,不改变合法输入下的行为。 ## 关联的Issue #2259 ## 测试 验证环境:Ascend 910B3,全量算子包(安装未用 --force)。 1. **AICPU UT**:bash build.sh -u --opkernel_aicpu --ops=inplace_top_k_distance,top_k_pq_distance_v2 --soc=ascend910b —— **19/19 通过**(InplaceTopKDistance 7 + TopKPQDistanceV2 12)。成功路径均校验实际输出数值,覆盖 Compute 各失败分支;UT 数据构造为无并列值(std::sort/堆非稳定排序)。 2. **infershape UT**:**13/13 通过**(TopKPQDistanceV2 10 含 k_not_positive + InplaceTopKDistance 3)。 3. **全量打包**:bash build.sh --pkg --soc=ascend910b,exe_compile 失败数 0。 4. **符号自检**:libmath_aicpu_kernels.so 含两个 *_aicpu.cpp;libcust_opsproto_rt2.0.so 含 InferDataType4TopKPQDistanceV2。 5. **安装**:.run --quiet 成功(未用 --force)。 6. **图模式 example 上板**: - TopKPQDistanceV2:topk_distance=DT_FLOAT(InferDataType 生效)、topk_index=DT_INT32,值 1 2 3 5 / 1 5 3 0 与预期一致。 - InplaceTopKDistance:图执行成功(无输出,结果原地更新在 device 侧输入 buffer,数值正确性由 UT 覆盖)。 - 两者日志均确认经 aicpu_custom_scheduler 执行 RunCpuKernel,即走到自定义 AICPU kernel。 ## 文档更新 - 新增 math/inplace_top_k_distance/README.md、math/top_k_pq_distance_v2/README.md。 - docs/zh/op_list.md 新增两个算子条目,硬件单元 AI CPU。 - 无 aclnn 接口,不涉及 docs/zh/op_api_list.md 与 docs/aclnn*.md。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4133 | 1 个月前 | |
docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !4580 merge doc into master docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新8个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2614 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4580 | 24 天前 | |
docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !4580 merge doc into master docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新8个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2614 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4580 | 24 天前 | |
合并q_r和linalg_gr算子目录 Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4290 merge master into master 合并q_r和linalg_gr算子目录 Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 此 PR 将原本分布在 math/q_r/ 和 math/linalg_qr/ 两个独立目录中的 QR 分解相关算子代码统一整合到 math/qr/ 目录下,同时将算子 API 实现层级从 op_host/op_api/ 扁平化为 op_api/ ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2406 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4290 | 1 个月前 | |
RadixTopK关闭自动同步 Co-authored-by: huang-wei-chen<chenhuangwei1@huawei.com> # message auto-generated for no-merge-commit merge: !4184 merge radixtopk_without_autosync into master RadixTopK关闭自动同步 Created-by: huang-wei-chen Commit-by: huang-wei-chen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 关闭RadixTopK自动同步,手动插入同步,优化算子性能。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2286](https://gitcode.com/cann/ops-math/issues/2286) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 算子泛化200+用例精度通过,性能提升2%-5% ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4184 | 1 个月前 | |
修改aclnnArange空指针校验返回码 Co-authored-by: xiu_ling_wang<wangxiuling2@h-partners.com> # message auto-generated for no-merge-commit merge: !4426 merge aclnnArange into master 修改aclnnArange空指针校验返回码 Created-by: xiu_ling_wang Commit-by: xiu_ling_wang Merged-by: cann-robot Description: ## 描述 修改aclnnArange空指针校验返回码 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2501 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4426 | 1 个月前 | |
fix: rm operator list ymal Co-authored-by: wangrui<wangrui124@huawei.com> # message auto-generated for no-merge-commit merge: !2837 merge br_ci into master fix: rm operator list ymal Created-by: wangrui_ Commit-by: wangrui Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1. 移除 CI 分组编译的强制校验 2. 清理 CMakeLists 中的调试打印 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1624 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2837 | 3 个月前 | |
整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Co-authored-by: m0_73979701<1958538170@qq.com> # message auto-generated for no-merge-commit merge: !4623 merge feat/def-dtype-infershape-exception-checks-v2 into master 整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Created-by: m0_73979701 Commit-by: m0_73979701 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 整改了 acosh、asinh、cosh、real 四个算子的 def 驱动、推导逻辑及异常拦截: - def 驱动 dtype:acosh/asinh/real 删除多余 dtype TilingKey,kernel 使用 DTYPE_X/DTYPE_OUTPUT;cosh 保留既有非 dtype 单值调度轴。 - InferShape/InferDataType:InferShape 复用 Ops::Base::InferShape4Elewise 并保留在 op_host;InferDataType 放在 op_graph/*_graph_infer.cpp,其中 Real 保留 complex 到实数的特殊映射。 - 异常拦截:补充 RegBase 私有格式、rank、负 shape size、输入输出 shape/dtype 等校验。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-math/issues/2661 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> - bash build.sh --pkg --ops=acosh,asinh,cosh,real --soc=ascend950 -j8:通过,13 个 kernel 变体完成编译。 - InferShape UT:8/8 通过。 - API UT:53/53 通过。 - pre-commit 全量检查(含 clang-format、codespell、OAT):通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无,未修改 CMake、license、README/设计文档,也未改变 DISABLE_IN_OPP 配置。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-math!4623 | 21 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
规范化修改产品术语名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4493 merge master into master 规范化修改产品术语名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 规范化修改产品术语名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> readme和aclnn API MD ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4493 | 1 个月前 | |
统一.md中调用示例的代码风格 Co-authored-by: sunzhongwen1<sunzhongwen1@huawei.com> # message auto-generated for no-merge-commit merge: !4496 merge modifymd into master 统一.md中调用示例的代码风格 Created-by: sunzhongwen1 Commit-by: sunzhongwen1 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改部分算子aclnn文档中示例代码不规范问题: return ret;); --> return ret); ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4496 | 1 个月前 | |
feat: reduce_log_sum补充inferdtype实现及UT用例 Co-authored-by: clinglai0517<laichangling@huawei.com> # message auto-generated for no-merge-commit merge: !4774 merge reducelogsum-infershape into master feat: reduce_log_sum补充inferdtype实现及UT用例 Created-by: clinglai0517 Commit-by: clinglai0517 Merged-by: cann-robot Description: ## 描述 ReduceLogSum 算子未注册 InferDataType,输出 y 的 dtype 无法在构图阶段推导。 ## 修改内容 1. **math/reduce_log_sum/op_host/reduce_log_sum_infershape.cpp** - 新增 InferDataType:y.dtype 跟随输入 x(float / float16 / bf16); - 注册 .InferDataType(...),保留原有 InferShape 与 InputsDataDependency({1})。 2. **math/reduce_log_sum/tests/ut/op_host/test_reduce_log_sum_infershape.cpp** - 新增 3 个 InferDataType 用例:float / float16 / bf16(验证输出 dtype 取 x 的 dtype); - 原有 9 个 shape 用例保留。 ## 关联的Issue Issue [#2626](https://gitcode.com/cann/ops-math/issues/2626) ## 测试 bash bash build.sh -u --ophost --soc=ascend950 --ops=reduce_log_sum --gtest_filter=ReduceLogSumInferShape.* 结果:**12/12 用例全部通过**。 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4774 | 20 天前 | |
feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Co-authored-by: Sunee<sunyi35@huawei.com> # message auto-generated for no-merge-commit merge: !4386 merge feature/infer2.0 into master feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Created-by: Sunee Commit-by: Sunee Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2549 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4386 | 30 天前 | |
feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Co-authored-by: Sunee<sunyi35@huawei.com> # message auto-generated for no-merge-commit merge: !4386 merge feature/infer2.0 into master feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Created-by: Sunee Commit-by: Sunee Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2549 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4386 | 30 天前 | |
修复tiling获取不到axes值信息的bug Co-authored-by: sunzhongwen1<sunzhongwen1@huawei.com> # message auto-generated for no-merge-commit merge: !4598 merge bugfix/reducetiling into master 修复tiling获取不到axes值信息的bug Created-by: sunzhongwen1 Commit-by: sunzhongwen1 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> axes作为const_value,需要在tiling注册接口处配置TilingInputsDataDependency ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4598 | 23 天前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Co-authored-by: Sunee<sunyi35@huawei.com> # message auto-generated for no-merge-commit merge: !4386 merge feature/infer2.0 into master feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Created-by: Sunee Commit-by: Sunee Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2549 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4386 | 30 天前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Co-authored-by: Sunee<sunyi35@huawei.com> # message auto-generated for no-merge-commit merge: !4386 merge feature/infer2.0 into master feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Created-by: Sunee Commit-by: Sunee Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2549 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4386 | 30 天前 | |
fix(reduce_var,reduce_std_v2): 空tensor及corner case路径workspaceSize未正确获取 Co-authored-by: andong_hw<andong2@huawei.com> # message auto-generated for no-merge-commit merge: !4545 merge fix-var-std-workspace-size into master fix(reduce_var,reduce_std_v2): 空tensor及corner case路径workspaceSize未正确获取 Created-by: andong_hw Commit-by: andong_hw Merged-by: cann-robot Description: Closes #2565 ## 问题 aclnnVar/aclnnVarCorrection/aclnnStd 的 GetWorkspaceSize 中,空tensor及 shapeProd<=correction 等 corner case 路径调用了 CheckFillScalarShapeStdAndVar,该函数内部使用 AllocIntArray/l0op::Fill/l0op::ViewCopy,均需要 workspace 中转,但后续误写 *workspaceSize = 0,导致 workspace 不足。 ## 修复 将 *workspaceSize = 0 改为 *workspaceSize = uniqueExecutor->GetWorkspaceSize()。 ## 涉及文件 - math/reduce_var/op_api/aclnn_var.cpp (4处) - math/reduce_std_v2/op_api/aclnn_std.cpp (3处) See merge request: cann/ops-math!4545 | 26 天前 | |
fix: 修复 ReduceStdV2Update 多路径精度异常 Co-authored-by: zhongheng<m202474569@hust.edu.cn> # message auto-generated for no-merge-commit merge: !4579 merge codex/reduce-std-v2-update-kernel-mask-fix into master fix: 修复 ReduceStdV2Update 多路径精度异常 Created-by: zhongheng Commit-by: zhongheng Merged-by: cann-robot Description: ## 描述 ReduceStdV2Update 的 Arch35 kernel 存在两类精度问题: - AscendC::Reg::UpdateMask 会通过引用自动更新剩余元素数,原实现又手工递减一次,导致处理超过单轮 64 个 FP32 元素时重复扣减,后续数据被跳过。 - FP16/BF16 group tail-A 路径按 FP32 而非输入 dtype 计算 cache 到 workspace 的源步长,造成部分输出读取 padding 数据并错误变为 0。 本 PR 移除 normal/empty kernel 中 UpdateMask 后的重复递减,按输入 dtype 恢复 tail-A 对齐步长,并将 GEIR 示例扩展到 128 个输入元素以覆盖跨 64 元素 mask 边界。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2593 ## 测试 - Ascend950 package 构建通过,覆盖 FP16、FP32、BF16。 - 最新 ops-test-kit e559b7f1:210/210 Golden 精度 PASS、内存越界检查 PASS、性能状态 PASS。 - 问题用例 wb_reduce_std_v2_update_0165、wb_reduce_std_v2_update_0201 定向回归 PASS。 - GEIR 方差、标准差回归 2/2 PASS。 - Host UT 9/9 PASS。 - pre-commit、clang-format、codespell、OAT 全部通过。 - 冒烟已过 ## 文档更新 不涉及对外文档更新;仅扩展 GEIR 回归示例的测试规模。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4579 | 24 天前 | |
补充 aclnn_batch_norm_stats op_api UT 用例 Co-authored-by: andong_hw<andong2@huawei.com> # message auto-generated for no-merge-commit merge: !4452 merge batch_norm_stats into master 补充 aclnn_batch_norm_stats op_api UT 用例 Created-by: andong_hw Commit-by: andong_hw Merged-by: cann-robot Description: ## 关联 Issue Closes #2520 ## 背景 aclnn_batch_norm_stats.cpp 的 op_api UT 覆盖率不达标。测试文件 test_batch_norm_stats.cpp 命名不符合 test_aclnn_*.cpp 的 glob 规则,导致 ut.cmake 未收集到该文件,测试未被编译运行,覆盖率为 0%。 ## 修改内容 1. 重命名 test_batch_norm_stats.cpp → test_aclnn_batch_norm_stats.cpp,使构建系统能识别并编译 2. 新增 3 个格式校验用例: - batch_norm_stats_input_private_format:input 使用 NC1HWC0 格式 - batch_norm_stats_mean_private_format:mean 使用 NC1HWC0 格式 - batch_norm_stats_invstd_private_format:invstd 使用 NC1HWC0 格式 ## 验证 - 12 个 TestGetWorkspaceSize 用例全部通过 - aclnn_batch_norm_stats.cpp 覆盖率从 0% 提升至 75.69%(144 行) - 剩余未覆盖行为 IsRegBase 路径(需 ascend950 环境)和 aclnnBatchNormStats 执行函数(TestPrecision 在当前环境 crash) See merge request: cann/ops-math!4452 | 1 个月前 | |
修复tiling获取不到axes值信息的bug Co-authored-by: sunzhongwen1<sunzhongwen1@huawei.com> # message auto-generated for no-merge-commit merge: !4598 merge bugfix/reducetiling into master 修复tiling获取不到axes值信息的bug Created-by: sunzhongwen1 Commit-by: sunzhongwen1 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> axes作为const_value,需要在tiling注册接口处配置TilingInputsDataDependency ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4598 | 23 天前 | |
fix(reduce_var,reduce_std_v2): 空tensor及corner case路径workspaceSize未正确获取 Co-authored-by: andong_hw<andong2@huawei.com> # message auto-generated for no-merge-commit merge: !4545 merge fix-var-std-workspace-size into master fix(reduce_var,reduce_std_v2): 空tensor及corner case路径workspaceSize未正确获取 Created-by: andong_hw Commit-by: andong_hw Merged-by: cann-robot Description: Closes #2565 ## 问题 aclnnVar/aclnnVarCorrection/aclnnStd 的 GetWorkspaceSize 中,空tensor及 shapeProd<=correction 等 corner case 路径调用了 CheckFillScalarShapeStdAndVar,该函数内部使用 AllocIntArray/l0op::Fill/l0op::ViewCopy,均需要 workspace 中转,但后续误写 *workspaceSize = 0,导致 workspace 不足。 ## 修复 将 *workspaceSize = 0 改为 *workspaceSize = uniqueExecutor->GetWorkspaceSize()。 ## 涉及文件 - math/reduce_var/op_api/aclnn_var.cpp (4处) - math/reduce_std_v2/op_api/aclnn_std.cpp (3处) See merge request: cann/ops-math!4545 | 26 天前 | |
feat(fallback) Co-authored-by: esok11<yangsifa@huawei.com> # message auto-generated for no-merge-commit merge: !4624 merge f0813 into master feat(fallback) Created-by: esok11 Commit-by: esok11 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4624 | 24 天前 | |
refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4187 merge master into master refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 将 math 模块下 80+ 算子的 arch35 kernel 实现从 MicroAPI 接口迁移为 Reg(寄存器)接口,统一编程范式。 ### 改动范围 涉及算子: abs, abs_grad, add_n, adjacent_difference, arg_max_with_value, assign_add, assign_sub, atan2, bitwise_xor, cast, cdist, cdist_grad, ceil, complex_abs, cummin, cumsum, div, dot, exp, eye, floor, floor_div, floor_mod, fused_mul_add_n, grouped_bias_add_grad, inv, is_close, kth_value, lerp, lin_space, log, log1p, logical_or, mod, nan_to_num, neg, pow, power, reciprocal, reduce_all, reduce_any, reduce_log_sum_exp, reduce_nansum, reduce_prod, reduce_var, right_shift, rint, round, rsqrt, rsqrt_grad, sign, signbit, sinh, sort, sort_with_index, tanh, tanh_grad, tensor_equal, top_k_v2, trunc, truncate_div 等 ### 改动方式 - 将 MicroAPI 调用替换为等价 Reg API 调用 - 适配 arch35(ascend950)指令集特性 - 保持算子功能不变 ## 测试 - 涉及算子全量回归测试 ## 类型标签 - [x] 重构 ## 关联的Issue - #2295 See merge request: cann/ops-math!4187 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
批量算子使用elewise16B接口 Co-authored-by: ligen<ligen75@h-partners.com> # message auto-generated for no-merge-commit merge: !4390 merge master into master 批量算子使用elewise16B接口 Created-by: ligen75 Commit-by: ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> elewise算子使用elewise16B接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2493 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 自验通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4390 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
[CANNBOT]scale暂不支持-2动态shape,添加标注 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !4445 merge ticket into master [CANNBOT]scale暂不支持-2动态shape,添加标注 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> scale暂不支持不支持-2动态shape,添加标注 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2523 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4445 | 1 个月前 | |
AICPU/ACLNN SearchSorted 输入校验安全加固 Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !4479 merge fix-searchsorted-validation into master AICPU/ACLNN SearchSorted 输入校验安全加固 Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 修复 SearchSorted 输入校验中的安全问题: - aclnnSearchSortedsGetWorkspaceSize 在访问 sortedSequence/self/out 前补充空指针校验,避免空指针触发异常或 core。 - AICPU SearchSorted 在 output dtype 不支持时直接返回参数错误,避免后续调用空 std::function。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2538 ## 测试 - pre-commit run --files math/search_sorted/op_api/aclnn_searchsorted.cpp math/search_sorted/op_kernel_aicpu/search_sorted_aicpu.cpp - bash build.sh --ophost - bash build.sh -u --ops=search_sorted --gtest_filter=*SearchSorted* --ccache=off - build/tests/ut/op_kernel_aicpu/math_aicpu_op_kernel_ut --gtest_filter=TEST_SearchSorted_UTest.* ## 文档更新 无。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4479 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
fix: 规范示例代码格式 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !4464 merge master into master fix: 规范示例代码格式 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 描述 规范 math/ 目录下相关算子的示例代码格式,不涉及功能逻辑变更: - 将 CHECK_RET(..., return ret;); 统一为 CHECK_RET(..., return ret);,涉及 24 个文件、29 处。 - 将文档中的 while(0) 统一为 while (0),涉及 less、less_equal、gcd 共 5 个文件、10 处。 - 为 not_equal 文档中三元运算符的冒号后补充空格,涉及 2 个文件、4 处。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2527 ## 测试 - 使用全文检索确认修改范围内无上述格式问题残留。 - 检查 Git diff,确认共修改 31 个文件、43 处,均为格式调整。 - 推送时 Git Hooks 检查通过。 - 本次仅修改示例及文档格式,未执行算子功能测试。 ## 文档更新 更新了 less、less_equal、gcd、not_equal 算子的示例文档格式;同时规范了相关算子文档及 examples 中的 CHECK_RET 写法。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:代码格式规范 See merge request: cann/ops-math!4464 | 1 个月前 | |
新增部分用例的golden Co-authored-by: 鲜磊<xianlei4@h-partners.com> # message auto-generated for no-merge-commit merge: !3262 merge g3 into master 新增部分用例的golden Created-by: xianlei2 Commit-by: 鲜磊 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3262 | 2 个月前 | |
fix: rm operator list ymal Co-authored-by: wangrui<wangrui124@huawei.com> # message auto-generated for no-merge-commit merge: !2837 merge br_ci into master fix: rm operator list ymal Created-by: wangrui_ Commit-by: wangrui Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1. 移除 CI 分组编译的强制校验 2. 清理 CMakeLists 中的调试打印 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1624 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2837 | 3 个月前 | |
fix: rm operator list ymal Co-authored-by: wangrui<wangrui124@huawei.com> # message auto-generated for no-merge-commit merge: !2837 merge br_ci into master fix: rm operator list ymal Created-by: wangrui_ Commit-by: wangrui Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1. 移除 CI 分组编译的强制校验 2. 清理 CMakeLists 中的调试打印 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1624 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2837 | 3 个月前 | |
批量算子使用elewise16B接口 Co-authored-by: ligen<ligen75@h-partners.com> # message auto-generated for no-merge-commit merge: !4390 merge master into master 批量算子使用elewise16B接口 Created-by: ligen75 Commit-by: ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> elewise算子使用elewise16B接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2493 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 自验通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4390 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
docs(sign_bits_unpack): remove non-contiguous tensor claim Co-authored-by: ForestFrame<24011210883@stu.xidian.edu.cn> # message auto-generated for no-merge-commit merge: !4591 merge codex/docs-sign-bits-unpack-remove-noncontiguous into master docs(sign_bits_unpack): remove non-contiguous tensor claim Created-by: ForestFrame Commit-by: ForestFrame Merged-by: cann-robot Description: ## 变更说明 - 删除 SignBitsUnpack README 中“支持非连续的 Tensor”的声明。 ## 原因 当前算子文档不应对外声明该输入能力,避免 README 约束与实际支持范围不一致。 ## 影响 仅修改文档,不改变算子接口、实现或运行行为。 ## 验证 - git diff --check - 相对最新 cann/master 仅包含 math/sign_bits_unpack/README.md 的 1 行删除 ## 关联 Issue Closes #2609 See merge request: cann/ops-math!4591 | 23 天前 | |
signbit: 重构double类型实现,使用RegTraitNumTwo和reg[1]提取符号位 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4522 merge signbit into master signbit: 重构double类型实现,使用RegTraitNumTwo和reg[1]提取符号位 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 重构 signbit 算子 double 类型的符号位提取实现。原实现将 double 视为 uint64_t,通过右移 63 位提取符号位,需要额外的 uint64_t 中间寄存器和 Pack 转换步骤。新实现使用 RegTraitNumTwo 双寄存器加载 double,通过 reg[1] 直接访问高 32 位,右移 31 位提取符号位,与 float 版本(STATE_BIT_SHF_VALUE=31)保持一致,同时移除了 vregOutput、tmpMask、vlSize、countTmp 等冗余变量和 Pack 转换步骤,简化了代码逻辑。 ### 改动原因 - 原实现中 double 使用 RegTraitNumOne 单寄存器,需要 uint64_t 中间寄存器和 Pack 转换,代码较为复杂 - 重构后使用 RegTraitNumTwo 双寄存器,通过 reg[1] 直接访问高 32 位提取符号位,无需 Pack 转换 - 与 sign.h(SignCustomInt64)和 clip_by_value_dag.h 等 arch35 算子的 64 位类型处理方式保持一致 ### 改动方法 - 将 vregInput1 从 RegTraitNumOne 改为 RegTraitNumTwo - vl 计算从 GetVRegSize() 改为 VECTOR_REG_WIDTH_2XVL - 通过 vregInput1.reg[1] 访问 double 高 32 位,右移 31 位提取符号位 - 移除 vregOutput、tmpMask、vlSize、countTmp 等冗余变量和 Pack 转换步骤 - 删除 DOUBLE_STATE_BIT_SHF_VALUE 常量,复用 STATE_BIT_SHF_VALUE ## 关联的Issue - #2563 ## 测试 - 二级冒烟测试 - 算子泛化测试(覆盖 double 类型各种输入 shape) ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码重构 See merge request: cann/ops-math!4522 | 27 天前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
aclnninplacesinc空tensor校验 Co-authored-by: t00850857<tanxin44@huawei.com> # message auto-generated for no-merge-commit merge: !4535 merge master-sinc into master aclnninplacesinc空tensor校验 Created-by: tan_xin Commit-by: t00850857 Merged-by: cann-robot Description: ## 描述 为 math/sinc 算子的 aclnnInplaceSincGetWorkspaceSize 接口补充 selfRef 参数判空处理。原实现在调用 CheckInplaceParams 之前未对 selfRef 做空指针检查,当传入 nullptr 时会在 CheckInplaceDtypeValid 中访问 selfRef->GetDataType() 导致空指针崩溃。修复方式:在 CheckInplaceParams 函数入口处增加 OP_CHECK_NULL(self, return ACLNN_ERR_INNER_NULLPTR),与 aclnnSincGetWorkspaceSize 的 CheckNotNull 判空逻辑对齐。 ## 关联的Issue DTS2026080735487 ## 测试 aclnn_demo测试  ## 文档更新 无 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4535 | 27 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
整改sin和sinkhorn中的op_api ut Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4323 merge master_bak into master 整改sin和sinkhorn中的op_api ut Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 整改sin和sinkhorn中的op_api ut ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2424 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4323 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4187 merge master into master refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 将 math 模块下 80+ 算子的 arch35 kernel 实现从 MicroAPI 接口迁移为 Reg(寄存器)接口,统一编程范式。 ### 改动范围 涉及算子: abs, abs_grad, add_n, adjacent_difference, arg_max_with_value, assign_add, assign_sub, atan2, bitwise_xor, cast, cdist, cdist_grad, ceil, complex_abs, cummin, cumsum, div, dot, exp, eye, floor, floor_div, floor_mod, fused_mul_add_n, grouped_bias_add_grad, inv, is_close, kth_value, lerp, lin_space, log, log1p, logical_or, mod, nan_to_num, neg, pow, power, reciprocal, reduce_all, reduce_any, reduce_log_sum_exp, reduce_nansum, reduce_prod, reduce_var, right_shift, rint, round, rsqrt, rsqrt_grad, sign, signbit, sinh, sort, sort_with_index, tanh, tanh_grad, tensor_equal, top_k_v2, trunc, truncate_div 等 ### 改动方式 - 将 MicroAPI 调用替换为等价 Reg API 调用 - 适配 arch35(ascend950)指令集特性 - 保持算子功能不变 ## 测试 - 涉及算子全量回归测试 ## 类型标签 - [x] 重构 ## 关联的Issue - #2295 See merge request: cann/ops-math!4187 | 1 个月前 | |
TopkV2/SortWithIndex算子clearCode清理 Co-authored-by: caoyan_huawei<caoyan11@huawei.com> # message auto-generated for no-merge-commit merge: !4443 merge cy_br_clearCode_0803 into master TopkV2/SortWithIndex算子clearCode清理 Created-by: caoyan_huawei Commit-by: caoyan_huawei Merged-by: cann-robot Description: ## 描述 主要对 TopKV2 和 SortWithIndex 算子进行代码清理(clearCode),消除与标准库或其他命名空间可能的命名冲突,同时规范化变量命名、统一代码格式。核心动作是将 sort_with_index_common.h 中自定义的类型萃取模板(is_same、integral_constant、true_type/false_type)重命名为带 Sort 前缀的版本,并在所有引用处同步替换,避免与 std::is_same 等产生歧义。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2436 ## 测试 ST, UT, 二级冒烟测试通过 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: See merge request: cann/ops-math!4443 | 1 个月前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
[fix] 插件归位 Co-authored-by: nextyale<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4626 merge issue2302 into master [fix] 插件归位 Created-by: nextyale Commit-by: nextyale Merged-by: cann-robot Description: ## 描述 迁移算子插件到对应目录 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2302 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 迁移插件 See merge request: cann/ops-math!4626 | 20 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
批量算子使用elewise16B接口 Co-authored-by: ligen<ligen75@h-partners.com> # message auto-generated for no-merge-commit merge: !4390 merge master into master 批量算子使用elewise16B接口 Created-by: ligen75 Commit-by: ligen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> elewise算子使用elewise16B接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2493 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 自验通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4390 | 1 个月前 | |
feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Co-authored-by: Sunee<sunyi35@huawei.com> # message auto-generated for no-merge-commit merge: !4386 merge feature/infer2.0 into master feature: A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 Created-by: Sunee Commit-by: Sunee Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> A5 ReduceLogSumExp/SquareSumV1算子新增noop_with_empty_axes属性及相关适配 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2549 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4386 | 30 天前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
stft新增支持A5 Co-authored-by: zhouwenfang<zhouwenfang3@h-partners.com> # message auto-generated for no-merge-commit merge: !4795 merge master into master stft新增支持A5 Created-by: zhouwenfang Commit-by: zhouwenfang Merged-by: cann-robot Description: ## 描述 stft新增支持A5 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2666 ## 测试 NA ## 文档更新 stft对于的算子README和aclnn ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4795 | 20 天前 | |
docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Co-authored-by: xuejinghui<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !4580 merge doc into master docs: 更新8个算子README,新增支持Atlas A2/A3系列产品 Created-by: xuejinghui Commit-by: xuejinghui Merged-by: cann-robot Description: ## 描述 更新8个算子README,新增支持Atlas A2/A3系列产品 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2614 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4580 | 24 天前 | |
fix: 规范示例代码格式 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !4464 merge master into master fix: 规范示例代码格式 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 描述 规范 math/ 目录下相关算子的示例代码格式,不涉及功能逻辑变更: - 将 CHECK_RET(..., return ret;); 统一为 CHECK_RET(..., return ret);,涉及 24 个文件、29 处。 - 将文档中的 while(0) 统一为 while (0),涉及 less、less_equal、gcd 共 5 个文件、10 处。 - 为 not_equal 文档中三元运算符的冒号后补充空格,涉及 2 个文件、4 处。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2527 ## 测试 - 使用全文检索确认修改范围内无上述格式问题残留。 - 检查 Git diff,确认共修改 31 个文件、43 处,均为格式调整。 - 推送时 Git Hooks 检查通过。 - 本次仅修改示例及文档格式,未执行算子功能测试。 ## 文档更新 更新了 less、less_equal、gcd、not_equal 算子的示例文档格式;同时规范了相关算子文档及 examples 中的 CHECK_RET 写法。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他:代码格式规范 See merge request: cann/ops-math!4464 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
refactor: arch35算子Reg级API重命名迁移 Co-authored-by: hahaha22<wangrunze20@h-partners.com> # message auto-generated for no-merge-commit merge: !4468 merge work_8 into master refactor: arch35算子Reg级API重命名迁移 Created-by: hahaha22 Commit-by: hahaha22 Merged-by: cann-robot Description: ## 描述 将 arch35 架构下 40 个算子 kernel 文件中的 Reg 级 API 名称从旧命名迁移到新命名,与已迁移的算子(xlogy、dawsn、rint、cdist、reduce_all、power 等)保持一致。 涉及的 API 重命名映射: - __local_mem__ → __ubuf__(地址空间限定符统一) - Reg::DataCopy (LoadDist) → Reg::LoadAlign(UB 到寄存器的对齐加载) - Reg::DataCopy (StoreDist) → Reg::StoreAlign(寄存器到 UB 的对齐存储) - Reg::DataCopyUnAlignPre → Reg::LoadUnAlignPre - Reg::DataCopyUnAlign → Reg::LoadUnAlign - Reg::MaskPack → Reg::Pack - Reg::MaskUnPack → Reg::UnPack - Reg::MaskAnd → Reg::And(与已有 Reg::And 通过重载统一) - Reg::CompareScalar → Reg::Compares - Reg::UnalignReg → Reg::UnalignRegForLoad 涉及的算子包括:clip_by_value、clip_by_value_v2、adjacent_difference、bitwise_xor、div、floor_div、floor_mod、lerp、logical_or、mod、pow、signbit、tanh_grad。 此外,adjacent_difference 算子中存在原有的 __local_mem__/__ubuf__ 地址空间限定符不一致问题(左侧声明与右侧转换不匹配),本次重命名一并修复。 ### 改动原因 AscendC SDK 更新了 Reg 级 API 命名规范,将原有的 DataCopy 拆分为语义更明确的 LoadAlign/StoreAlign,并移除了 Mask 系列 API 的 "Mask" 前缀(通过重载统一)。本 PR 将相关算子迁移至新命名。 ### 改动方法 纯机械重命名,无逻辑变更。所有改动均为 1:1 的 API 名称替换,增删行数完全对称(+417 -417)。Load/Store 语义区分基于原有模板参数(LoadDist → LoadAlign, StoreDist → StoreAlign)和参数顺序(寄存器在前为 Load,地址在前为 Store)。 ## 关联的Issue - #2529 ## 测试 待补充:二级冒烟测试、算子泛化测试。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:API 重命名重构 See merge request: cann/ops-math!4468 | 1 个月前 | |
refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !4187 merge master into master refactor: 将arch35算子kernel中MicroAPI接口统一迁移为Reg接口 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 将 math 模块下 80+ 算子的 arch35 kernel 实现从 MicroAPI 接口迁移为 Reg(寄存器)接口,统一编程范式。 ### 改动范围 涉及算子: abs, abs_grad, add_n, adjacent_difference, arg_max_with_value, assign_add, assign_sub, atan2, bitwise_xor, cast, cdist, cdist_grad, ceil, complex_abs, cummin, cumsum, div, dot, exp, eye, floor, floor_div, floor_mod, fused_mul_add_n, grouped_bias_add_grad, inv, is_close, kth_value, lerp, lin_space, log, log1p, logical_or, mod, nan_to_num, neg, pow, power, reciprocal, reduce_all, reduce_any, reduce_log_sum_exp, reduce_nansum, reduce_prod, reduce_var, right_shift, rint, round, rsqrt, rsqrt_grad, sign, signbit, sinh, sort, sort_with_index, tanh, tanh_grad, tensor_equal, top_k_v2, trunc, truncate_div 等 ### 改动方式 - 将 MicroAPI 调用替换为等价 Reg API 调用 - 适配 arch35(ascend950)指令集特性 - 保持算子功能不变 ## 测试 - 涉及算子全量回归测试 ## 类型标签 - [x] 重构 ## 关联的Issue - #2295 See merge request: cann/ops-math!4187 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
add infershape for top_k_pq_distance&zeta Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !4342 merge dev into master add infershape for top_k_pq_distance&zeta Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 为 top_k_pq_distance 与 zeta 算子新增 host 侧 InferShape 实现,并将 top_k_pq_distance、top_k_v2_d、zeta 三个 AICPU 算子的注册宏从 REGISTER_CPU_KERNEL 迁移到 OPS_MATH_REGISTER_CPU_KERNELV2,同时在对应 CMakeLists.txt 中开启 HOSTCPU TRUE 以编译 host 侧 infershape 模块。 主要改动: - 新增 math/top_k_pq_distance/op_host/top_k_pq_distance_infershape.cpp:三个输出 topk_distance/topk_ivf/topk_index 的 shape 均为 {k}(k 来自属性),dtype 分别继承自 pq_distance[0]/pq_ivf[0]/pq_index[0] 的动态输入。 - 新增 math/zeta/op_host/zeta_infershape.cpp:输出 z 的 shape 为 x 与 q 的广播结果(复用 Ops::Base::InferShape4Broadcast),dtype 继承自 x;并实现 InferShapeRange 以支持动态 shape range 场景。 - 修改 math/{top_k_pq_distance,top_k_v2_d,zeta}/CMakeLists.txt:add_all_modules_sources(... HOSTCPU TRUE),启用 hostcpu infershape 编译。 - 修改 math/{top_k_pq_distance,top_k_v2_d,zeta}/op_kernel_aicpu/*_aicpu.cpp:REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2,引入 aicpu/math_aicpu_register.h。 - 更新 docs/zh/op_list.md:top_k_pq_distance、zeta 的 hostcpu infershape 支持状态由 × 更新为 √。 ## 关联的Issue #2472 https://gitcode.com/cann/ops-math/issues/2472 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 执行整仓编译 bash build.sh --pkg --jit -j16,验证三个算子 CMakeLists.txt 的 HOSTCPU TRUE 配置变更正确,hostcpu infershape 模块能正常编译产出。 2. **InferShape 功能验证** - top_k_pq_distance:验证三个输出 topk_distance/topk_ivf/topk_index 的 shape 均为 {k},dtype 分别与 pq_distance[0]/pq_ivf[0]/pq_index[0] 一致。 - zeta:验证输出 z 的 shape 为 x 与 q 广播后的 shape,dtype 与 x 一致;覆盖静态 shape 与动态 shape range 两种场景(含 0/1/-1 的 range 用例)。 3. **算子注册验证** - 验证三个算子使用 OPS_MATH_REGISTER_CPU_KERNELV2 宏注册成功,算子能正常加载与执行。 4. **二级冒烟 / 算子泛化** - 对 top_k_pq_distance、zeta 执行二级冒烟用例与泛化测试,确认 infershape 迁移后算子行为与预期一致。 ## 文档更新 - 更新 docs/zh/op_list.md:top_k_pq_distance、zeta 的 hostcpu infershape 支持状态由 × 更新为 √。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4342 | 1 个月前 | |
Conj/InplaceTopKDistance/TopKPQDistanceV2 使能 AICPU 常量折叠 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !4305 merge feat/enable-aicpu-constant-folding-conj-topk into master Conj/InplaceTopKDistance/TopKPQDistanceV2 使能 AICPU 常量折叠 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 Conj、InplaceTopKDistance、TopKPQDistanceV2 三个 AICPU 算子的 opInfo.opsFlag 已置为 OPS_FLAG_OPEN,但 kernel 实现并未编入 libopconstant_folding_math.so,折叠标志位处于「空开」状态——GE 图编译期即使命中常量输入,也找不到可在编译机上执行的 host 侧 kernel。 AICPU 算子参与常量折叠需同时满足两个条件:opsFlag 为 OPS_FLAG_OPEN(已满足),以及 kernel 以 host 版本编入 libopconstant_folding_math.so 并安装到 opp/built-in/op_impl/host_cpu/(本次补齐)。 改动共 6 个文件、9 增 6 删,沿用 math/tile 已验证的路径,未新增任何公共基础设施: **1)CMakeLists 追加 HOSTCPU TRUE** cmake -add_all_modules_sources(OPTYPE conj ACLNNTYPE aclnn_exclude) +add_all_modules_sources(OPTYPE conj ACLNNTYPE aclnn_exclude HOSTCPU TRUE) 该参数经 cmake/func.cmake 的 add_all_modules_sources 解析后,创建 OBJECT 目标 <op>_host_const_obj(编译期定义 OPS_MATH_AICPU_HOST_KERNEL),登记进 cache 变量 AICPU_HOST_OBJ_TARGETS;cmake/symbol.cmake 的 gen_aicpu_const_symbol() 汇总链接出 so 并 install 到 AICPU_HOST_KERNEL_IMPL。 **2)kernel 注册宏改用 OPS_MATH_REGISTER_CPU_KERNELV2** cpp +#include "aicpu/math_aicpu_register.h" -REGISTER_CPU_KERNEL(kConj, Conj); +OPS_MATH_REGISTER_CPU_KERNELV2(kConj, Conj); 与 math/tile 现状对齐。该宏为条件包装:未定义 OPS_MATH_AICPU_HOST_KERNEL 时(device 侧 aicpu so、cust 包、UT)展开为原 REGISTER_CPU_KERNEL;定义时以 weak 符号探测 RegistCpuKernelV2,存在则注册 V2、缺失则回退 V1,兼容旧版 libaicpu_context_host.a。 **未改动项**:*_aicpu_def.cpp 无需变更(opsFlag 本就是 OPS_FLAG_OPEN);三个算子的 kernel 均未依赖 driver/ascend_hal.h 等 device-only 接口,无需像 Tile 那样为 halSdmaCopy 增加条件隔离;三个算子无 tiling 文件,无需 DISABLE_IN_OPP 参数。 ## 关联的Issue #2414 ## 测试 **1. device 侧零回归验证** 将改动前的 conj_aicpu.cpp 单独预处理,与改动后 device 模式(不定义 OPS_MATH_AICPU_HOST_KERNEL)输出对比注册语句,**逐字节完全一致**: cpp std::shared_ptr<CpuKernel> Creator_kConj_Kernel() { ... } bool g_kConj_Kernel_Creator __attribute__((unused)) = RegistCpuKernel(kConj, Creator_kConj_Kernel); 整份预处理输出的差异仅为新增的 RegistCpuKernelV2 weak 声明,及 __LINE__ 因新增 include 的整体偏移。 **2. 编译构建测试** bash build.sh --pkg -j16 全量构建通过,EXIT=0,构建错误数 0。CMake 配置期确认三个新 OBJECT 目标建立: -- add_aicpu_host_kernel_modules for conj_host_const_obj -- add_aicpu_host_kernel_modules for inplace_top_k_distance_host_const_obj -- add_aicpu_host_kernel_modules for top_k_pq_distance_v2_host_const_obj 构建期确认链接成功:Linking libopconstant_folding_math.so using host compiler okay. **3. so 内容核对(正反对照)** | 算子 | HOSTCPU | so 中 | |---|---|---| | Conj / InplaceTopKDistance / TopKPQDistanceV2 | 本次新开 | 命中 | | Tile / TransData | 原有 | 命中 | | AbsGrad / BesselI0e / Bincount / AdjacentDifference | 未开 | 缺失(预期) | 反向对照用于排除字符串偶然匹配。另确认三个新 .o 各含 1 个 Creator_*_Kernel 符号且均引用 RegistCpuKernelV2。 **4. 打包验证** so 已进 run 包,路径与 AICPU_HOST_KERNEL_IMPL 一致: $ ./cann-910b-ops-math_9.1.0_linux-aarch64.run --list | grep opconstant -r--r----- 1000/1000 8015336 ./opp/built-in/op_impl/host_cpu/libopconstant_folding_math.so 解包后与构建产物 md5 一致(b9f723f0fc67519aff285e8ab535c314),并对解包实物重跑了上述正反对照,结果相同。 **5. AICPU UT 回归** bash build.sh -u --opkernel_aicpu --ops=conj,inplace_top_k_distance,top_k_pq_distance_v2 -j16 [==========] Running 26 tests from 3 test suites. TEST_CONJ_UT 6 tests TEST_INPLACE_TOP_K_DISTANCE_UT 8 tests TEST_TOP_K_PQ_DISTANCE_V2_UT 12 tests [ PASSED ] 26 tests. ## 文档更新 无。本改动不涉及对外接口与文档。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4305 | 1 个月前 | |
修复TopkV2算子clearCode问题 Co-authored-by: caoyan_huawei<caoyan11@huawei.com> # message auto-generated for no-merge-commit merge: !4528 merge cy_br_08_10 into master 修复TopkV2算子clearCode问题 Created-by: caoyan_huawei Commit-by: caoyan_huawei Merged-by: cann-robot Description: ## 描述 此 PR 主要修复 TopkV2 算子的clearCode问题。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2436 ## 测试 UT,ST,二级冒烟通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4528 | 21 天前 | |
add infershape for top_k_pq_distance&zeta Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !4342 merge dev into master add infershape for top_k_pq_distance&zeta Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 为 top_k_pq_distance 与 zeta 算子新增 host 侧 InferShape 实现,并将 top_k_pq_distance、top_k_v2_d、zeta 三个 AICPU 算子的注册宏从 REGISTER_CPU_KERNEL 迁移到 OPS_MATH_REGISTER_CPU_KERNELV2,同时在对应 CMakeLists.txt 中开启 HOSTCPU TRUE 以编译 host 侧 infershape 模块。 主要改动: - 新增 math/top_k_pq_distance/op_host/top_k_pq_distance_infershape.cpp:三个输出 topk_distance/topk_ivf/topk_index 的 shape 均为 {k}(k 来自属性),dtype 分别继承自 pq_distance[0]/pq_ivf[0]/pq_index[0] 的动态输入。 - 新增 math/zeta/op_host/zeta_infershape.cpp:输出 z 的 shape 为 x 与 q 的广播结果(复用 Ops::Base::InferShape4Broadcast),dtype 继承自 x;并实现 InferShapeRange 以支持动态 shape range 场景。 - 修改 math/{top_k_pq_distance,top_k_v2_d,zeta}/CMakeLists.txt:add_all_modules_sources(... HOSTCPU TRUE),启用 hostcpu infershape 编译。 - 修改 math/{top_k_pq_distance,top_k_v2_d,zeta}/op_kernel_aicpu/*_aicpu.cpp:REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2,引入 aicpu/math_aicpu_register.h。 - 更新 docs/zh/op_list.md:top_k_pq_distance、zeta 的 hostcpu infershape 支持状态由 × 更新为 √。 ## 关联的Issue #2472 https://gitcode.com/cann/ops-math/issues/2472 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 执行整仓编译 bash build.sh --pkg --jit -j16,验证三个算子 CMakeLists.txt 的 HOSTCPU TRUE 配置变更正确,hostcpu infershape 模块能正常编译产出。 2. **InferShape 功能验证** - top_k_pq_distance:验证三个输出 topk_distance/topk_ivf/topk_index 的 shape 均为 {k},dtype 分别与 pq_distance[0]/pq_ivf[0]/pq_index[0] 一致。 - zeta:验证输出 z 的 shape 为 x 与 q 广播后的 shape,dtype 与 x 一致;覆盖静态 shape 与动态 shape range 两种场景(含 0/1/-1 的 range 用例)。 3. **算子注册验证** - 验证三个算子使用 OPS_MATH_REGISTER_CPU_KERNELV2 宏注册成功,算子能正常加载与执行。 4. **二级冒烟 / 算子泛化** - 对 top_k_pq_distance、zeta 执行二级冒烟用例与泛化测试,确认 infershape 迁移后算子行为与预期一致。 ## 文档更新 - 更新 docs/zh/op_list.md:top_k_pq_distance、zeta 的 hostcpu infershape 支持状态由 × 更新为 √。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4342 | 1 个月前 | |
剥离math下op_host/op_api到op_api Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !4246 merge master into master 剥离math下op_host/op_api到op_api Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次变更主要对 math 目录下多个算子的目录结构进行扁平化整理:将原先嵌套在 op_host/op_api/ 中的 API 实现文件直接提升到 op_api/ 层级 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2392 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT/ST通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4246 | 1 个月前 | |
CosineSimilarity,Trace,StrideAdd原型增加宏保护 Co-authored-by: u010470851<shangguanqinnan@huawei.com> # message auto-generated for no-merge-commit merge: !4563 merge fix_add_proto_guard into master CosineSimilarity,Trace,StrideAdd原型增加宏保护 Created-by: u010470851 Commit-by: u010470851 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> CosineSimilarity,Trace,StrideAdd原型增加宏保护 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 安全修复 See merge request: cann/ops-math!4563 | 26 天前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
docs目录基本概念md文件名改为英文 Co-authored-by: chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !4182 merge master into master docs目录基本概念md文件名改为英文 Created-by: gitcode-chenjiao Commit-by: chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs目录基本概念md文件名改为英文: 避免link中的中文字符引发的跳转异常,例如两段式接口.md变成%E4%B8%A4%E6%AE%B5%E5%BC%8F%E6%8E%A5%E5%8F%A3.md,不易于维护,可能导致其他平台跳转有问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2283](https://gitcode.com/cann/ops-math/issues/2283) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/context所有md和对应的link ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4182 | 1 个月前 | |
修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4460 merge fix/check-ret-and-trailing-whitespace into master 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 examples 及 docs 中 CHECK_RET 宏调用末尾多余分号和行尾空格问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-nn/issues/4603 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4460 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 1 个月前 | |
增加 InplaceZerosLike L0 接口及 ZerosLikeInplaceSupport 校验 Co-authored-by: wow5523<wuao1@huawei.com> # message auto-generated for no-merge-commit merge: !4420 merge zeroslikel0 into master 增加 InplaceZerosLike L0 接口及 ZerosLikeInplaceSupport 校验 Created-by: zhu-xun Commit-by: wow5523 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 增加 InplaceZerosLike L0 接口及 ZerosLikeInplaceSupport 校验 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4420 | 26 天前 | |
add infershape for top_k_pq_distance&zeta Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !4342 merge dev into master add infershape for top_k_pq_distance&zeta Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 为 top_k_pq_distance 与 zeta 算子新增 host 侧 InferShape 实现,并将 top_k_pq_distance、top_k_v2_d、zeta 三个 AICPU 算子的注册宏从 REGISTER_CPU_KERNEL 迁移到 OPS_MATH_REGISTER_CPU_KERNELV2,同时在对应 CMakeLists.txt 中开启 HOSTCPU TRUE 以编译 host 侧 infershape 模块。 主要改动: - 新增 math/top_k_pq_distance/op_host/top_k_pq_distance_infershape.cpp:三个输出 topk_distance/topk_ivf/topk_index 的 shape 均为 {k}(k 来自属性),dtype 分别继承自 pq_distance[0]/pq_ivf[0]/pq_index[0] 的动态输入。 - 新增 math/zeta/op_host/zeta_infershape.cpp:输出 z 的 shape 为 x 与 q 的广播结果(复用 Ops::Base::InferShape4Broadcast),dtype 继承自 x;并实现 InferShapeRange 以支持动态 shape range 场景。 - 修改 math/{top_k_pq_distance,top_k_v2_d,zeta}/CMakeLists.txt:add_all_modules_sources(... HOSTCPU TRUE),启用 hostcpu infershape 编译。 - 修改 math/{top_k_pq_distance,top_k_v2_d,zeta}/op_kernel_aicpu/*_aicpu.cpp:REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2,引入 aicpu/math_aicpu_register.h。 - 更新 docs/zh/op_list.md:top_k_pq_distance、zeta 的 hostcpu infershape 支持状态由 × 更新为 √。 ## 关联的Issue #2472 https://gitcode.com/cann/ops-math/issues/2472 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 执行整仓编译 bash build.sh --pkg --jit -j16,验证三个算子 CMakeLists.txt 的 HOSTCPU TRUE 配置变更正确,hostcpu infershape 模块能正常编译产出。 2. **InferShape 功能验证** - top_k_pq_distance:验证三个输出 topk_distance/topk_ivf/topk_index 的 shape 均为 {k},dtype 分别与 pq_distance[0]/pq_ivf[0]/pq_index[0] 一致。 - zeta:验证输出 z 的 shape 为 x 与 q 广播后的 shape,dtype 与 x 一致;覆盖静态 shape 与动态 shape range 两种场景(含 0/1/-1 的 range 用例)。 3. **算子注册验证** - 验证三个算子使用 OPS_MATH_REGISTER_CPU_KERNELV2 宏注册成功,算子能正常加载与执行。 4. **二级冒烟 / 算子泛化** - 对 top_k_pq_distance、zeta 执行二级冒烟用例与泛化测试,确认 infershape 迁移后算子行为与预期一致。 ## 文档更新 - 更新 docs/zh/op_list.md:top_k_pq_distance、zeta 的 hostcpu infershape 支持状态由 × 更新为 √。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4342 | 1 个月前 | |
增加A2 A3新算子支持 Co-authored-by: slx2008<shaolixin@huawei.com> # message auto-generated for no-merge-commit merge: !448 merge master into master 增加A2 A3新算子支持 Created-by: songkai111 Commit-by: slx2008 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!448 | 8 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 22 天前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 22 天前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 22 天前 | ||
| 2 个月前 | ||
| 22 天前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 30 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 21 天前 | ||
| 22 天前 | ||
| 24 天前 | ||
| 20 天前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 21 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 21 天前 | ||
| 1 个月前 | ||
| 22 天前 | ||
| 25 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 21 天前 | ||
| 24 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 5 个月前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 22 天前 | ||
| 1 个月前 | ||
| 24 天前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 25 天前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 20 天前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 25 天前 | ||
| 24 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 28 天前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 23 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 24 天前 | ||
| 24 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 3 个月前 | ||
| 21 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 30 天前 | ||
| 30 天前 | ||
| 23 天前 | ||
| 1 个月前 | ||
| 30 天前 | ||
| 1 个月前 | ||
| 30 天前 | ||
| 26 天前 | ||
| 24 天前 | ||
| 1 个月前 | ||
| 23 天前 | ||
| 26 天前 | ||
| 24 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 23 天前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 30 天前 | ||
| 1 个月前 | ||
| 20 天前 | ||
| 24 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 21 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 8 个月前 |