| Files | Last commit | Last update |
|---|---|---|
数学类算子资料修改 Co-authored-by: FelixTang7<tangyanfeng@huawei.com> # message auto-generated for no-merge-commit merge: !5432 merge md into master 数学类算子资料修改 Created-by: FelixTang7 Commit-by: FelixTang7 Merged-by: cann-robot Description: ## 描述 部分数学类算子资料不清晰,需要进行修改补齐 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3040 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5432 | 1 month ago | |
合并aclnnAdds和aclnnInplaceAdds的资料,修改aclnnGtTensor资料中的typo Co-authored-by: yue-ma<mayue54@huawei.com> # message auto-generated for no-merge-commit merge: !5402 merge master into master 合并aclnnAdds和aclnnInplaceAdds的资料,修改aclnnGtTensor资料中的typo Created-by: yue-ma Commit-by: yue-ma Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 合并aclnnAdds和aclnnInplaceAdds的资料,修改aclnnGtTensor资料中的typo ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/3063 https://gitcode.com/cann/ops-math/issues/3067 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> aclnnAdds&aclnnInplaceAdds.md aclnnGtTensor&aclnnInplaceGtTensor.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5402 | 2 months ago | |
迁移开源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 | 3 months ago | |
fix: 修复 add 算子日志拼写/语法错误 Co-authored-by: sun-yibo1<sunyibo1@hisilicon.com> # message auto-generated for no-merge-commit merge: !5356 merge fix/add-log-audit into master fix: 修复 add 算子日志拼写/语法错误 Created-by: sun-yibo1 Commit-by: sun-yibo1 Merged-by: cann-robot Description: ## 描述 add 算子日志中存在拼写、语法及 copy-paste 错误,影响日志可读性与问题定位: - do no support inplace 应为 do not support(缺少 not) - itshould 应为 it should(字符串拼接缺空格) - only support 应为 only supports(主谓一致) ### 改动方法 仅修改日志文案中的拼写、语法错误,按 pre-commit clang-format 要求对文件做格式化,不改动 REG_OP/INPUT/OUTPUT/ATTR 等代码定义。 ## 关联的Issue - #3030 ## 测试 - 仅日志文案/格式修改,无逻辑变更,不影响编译与功能。 - pre-commit 全部代码 hook 通过(trailing-whitespace / end-of-file-fixer / clang-format / codespell / check-* / detect-private-key)。 ## 文档更新 无。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-math!5356 | 2 months ago | |
math仓算子代码整改 Co-authored-by: cai-chengchao<caichengchao1@h-partners.com> # message auto-generated for no-merge-commit merge: !881 merge math_op_back_1 into master math仓算子代码整改 Created-by: cai-chengchao Commit-by: cai-chengchao Merged-by: cann-robot Description: ## 描述 math仓算子代码整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!881 | 9 months ago | |
concat/pad/slice等算子支持新平台 Co-authored-by: ASCEND222<dongfei16@h-partners.com> # message auto-generated for no-merge-commit merge: !5184 merge master into master concat/pad/slice等算子支持新平台 Created-by: ASCEND222 Commit-by: ASCEND222 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 算子支持新平台 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2992 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5184 | 2 months ago | |
perf: 合并 op_kernel 的 CMakeList 到算子根目录 Co-authored-by: zhanw_coding<zhanwang@huawei.com> # message auto-generated for no-merge-commit merge: !3446 merge ft-cmake into master perf: 合并 op_kernel 的 CMakeList 到算子根目录 Created-by: zhanw_coding Commit-by: zhanw_coding Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> perf: 合并 op_kernel 的 CMakeList 到算子根目录 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2064 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:编译工程优化 See merge request: cann/ops-math!3446 | 4 months ago | |
常量折叠和infershape整改 Co-authored-by: liu-lu<www.liulu824910939@qq.com> # message auto-generated for no-merge-commit merge: !4582 merge master into master 常量折叠和infershape整改 Created-by: liu-lu Commit-by: liu-lu Merged-by: cann-robot Description: ## 描述 本 PR 为 6 个 AICPU 算子(add、round、search_sorted、select_v2、square、squared_difference)使能 GE 图编译期常量折叠,并对 search_sorted、select_v2 进行 infershape/OpDef 整改。 ### 变更内容 **1. 常量折叠使能(6 算子)** | 算子 | CMakeLists | kernel 注册 | |------|-----------|-------------| | add | 增加 HOSTCPU TRUE | REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | | round | 增加 HOSTCPU TRUE | REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | | search_sorted | 增加 HOSTCPU TRUE | REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | | select_v2 | 增加 HOSTCPU TRUE | REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | | square | 增加 HOSTCPU TRUE | REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | | squared_difference | 增加 HOSTCPU TRUE | REGISTER_CPU_KERNEL → OPS_MATH_REGISTER_CPU_KERNELV2 | - 各 kernel 增加 #include "aicpu/math_aicpu_register.h"; - CMakeLists 增加 HOSTCPU TRUE,将算子编入 host 侧折叠 so(libopconstant_folding_math.so)。 **2. infershape / OpDef 整改** - **search_sorted**:新增 op_host/search_sorted_infershape.cpp,实现 InferShape4SearchSorted,输出 shape 取 values(input1)的 shape; - **select_v2**:新增 op_kernel_aicpu/select_v2_aicpu_def.cpp(基于 OpDef 注册输入输出数据类型),删除旧 select_v2.json(JSON 配置方式),统一为 OpDef 注册链路。 ## 关联的Issue #2847 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 执行 cmake 配置与编译,验证 6 个算子 CMakeLists HOSTCPU TRUE 配置变更正确; - 确认 libopconstant_folding_math.so 中已编入上述 6 个算子的 host 侧 kernel。 2. **常量折叠验证** - 输入为常量时,验证算子可在图编译期被折叠求值(host 侧执行),运行期不再下发 device kernel; - 输入为非常量时,验证 device 侧执行逻辑与折叠前保持一致。 3. **InferShape 验证(search_sorted)** - 验证 search_sorted 输出 shape 与 values 输入 shape 一致; - 覆盖多维度、边界 shape 场景。 4. **算子注册/加载验证(select_v2)** - 验证 select_v2 基于 OpDef 注册后接口可正确加载与调用; - 覆盖全数据类型(COMPLEX128/COMPLEX64/DOUBLE/FLOAT/FLOAT16/INT16/INT32/INT64/INT8/UINT16/UINT32/UINT64/UINT8/BOOL)。 5. **算子泛化** - 对 6 个算子执行二级冒烟与泛化用例,确认功能正确性不受影响。 ## 文档更新 本 PR 不涉及 README/aclnn 接口文档更新。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4582 | 2 months ago | |
add aclnn golden Co-authored-by: gcw_CRjbEjwl<fengdaoyong@h-partners.com> # message auto-generated for no-merge-commit merge: !4593 merge 20260812 into master add aclnn golden Created-by: gcw_CRjbEjwl Commit-by: gcw_CRjbEjwl Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 算子增加aclnn的golden注册函数,由冒烟流水调用,跑新版ttk用例。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 不涉及 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 本地完成验证 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: See merge request: cann/ops-math!4593 | 2 months ago | |
abs等20个算子新增ascend350平台支持 Co-authored-by: ASCEND222<dongfei16@h-partners.com> # message auto-generated for no-merge-commit merge: !5322 merge master into master abs等20个算子新增ascend350平台支持 Created-by: ASCEND222 Commit-by: ASCEND222 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> abs等20个算子新增ascend350平台支持 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/3028 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5322 | 2 months ago | |
fix: sinh算子CheckInplaceDtypeValid参数加const修饰及math/add/README.md文档更新 Co-authored-by: xiafengkou<luojiangtao4@huawei.com> # message auto-generated for no-merge-commit merge: !5203 merge master into master fix: sinh算子CheckInplaceDtypeValid参数加const修饰及math/add/README.md文档更新 Created-by: xiafengkou Commit-by: xiafengkou Merged-by: cann-robot Description: ## 描述 本次 PR 包含两类改动: **1. 代码规范修复(sinh)** math/sinh/op_api/aclnn_sinh.cpp 中 CheckInplaceDtypeValid 函数仅对输入参数 selfRef 做只读 dtype 合法性校验,不修改其内容,参数类型改为 const aclTensor* 修饰(Clean Code G.CNS.04)。仅参数 const 修饰,函数体逻辑与接口行为不变。 **2. 文档修正(add README)** - **产品支持表格**:将"Atlas 推理系列产品"(Ascend 310P)修正为 **×(不支持)**——该算子 AICore kernel 仅注册 ascend950,310P 无 kernel 实现。 - **参数说明表格**:移除数据类型中的 STRING、COMPLEX32——aclnn 接口实际支持列表(GetDtypeSupportListBySocVersion)不含这两类,修正后与代码实现一致。 - **新增"约束说明"章节**: - STRING:add_proto.h 注册 DT_STRING 仅为兼容 TensorFlow Add 算子,图模式(GEIR)虽可通过类型推断但无对应 kernel 实现,运行时会失败; - COMPLEX32:仅 Ascend 950 内核实现支持,aclnnAdd/aclnnInplaceAdd 接口及图模式通路均不支持,请使用 COMPLEX64/COMPLEX128。 ## 关联的Issue 无。 ## 测试 - 代码逻辑无变更(仅 const 修饰),不影响功能。 - 文档内容已逐项与算子实现核对(aclnn dtype 支持列表、AICore 注册配置、add_proto.h IR 注册)。 ## 文档更新 - math/add/README.md:修正产品支持表格、参数说明表格 dtype 列表,新增约束说明章节。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:代码规范修复(Clean Code G.CNS.04 const参数修饰) See merge request: cann/ops-math!5203 | 2 months ago |
Add
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | × |
| Atlas 推理系列产品 | × |
| Atlas 训练系列产品 | √ |
功能说明
- 算子功能:对输入完成相加操作。
- 计算公式:
y=x1+x2y = x_1 + x_2 y=x1+x2
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x1 | 输入 | 公式中的输入张量x_1 | BOOL, INT8, INT16, INT32, INT64, UINT8, FLOAT64, FLOAT16, BFLOAT16, FLOAT32, COMPLEX128, COMPLEX64 | ND |
| x2 | 输入 | 公式中的输入张量x2 | 同x1 | ND |
| y | 输出 | 公式中的输出张量y | 同x1 | ND |
约束说明
- 不支持 STRING 数据类型。算子IR(add_proto.h)中注册 DT_STRING 仅为兼容 TensorFlow Add 算子,图模式(GEIR)调用通路虽可通过类型推断,但无对应kernel实现,运行时会失败。
- COMPLEX32 仅 Ascend 950 内核实现支持,aclnnAdd / aclnnInplaceAdd 接口及图模式通路均不支持,请使用 COMPLEX64 / COMPLEX128。
调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| aclnn调用 | test_aclnn_add | 通过aclnnAdd和aclnnInplaceAdd接口方式调用Add算子 |
| 图模式调用 | test_geir_add | 通过算子IR构图方式调用Add算子 |