| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: 整改责任田算子日志质量(修复日志规范问题) Co-authored-by: StoneChan_<chensitong2@huawei.com> # message auto-generated for no-merge-commit merge: !5023 merge log-quality-rectify into master fix: 整改责任田算子日志质量(修复日志规范问题) Created-by: StoneChan_ Commit-by: StoneChan_ Merged-by: cann-robot Description: #### 一、问题描述 (必填) 依据 CANN 日志规范检查规则,对责任田算子的运行时日志进行质量整改,修复以下问题: - 级别错配:GE IR 示例(test_geir_*.cpp)失败信息误标 INFO(应 ERROR),存在故障被忽略风险 - 拼写错误:caculate/negtive/faild/mat 等 - 语法错误:"is failed" 中式结构、"fail to get" 缺时态、缺助动词/介词、must same 等 - 变量越限日志缺正确范围(未给出期望值) - 中文标点(全角顿号)残留 - 示例直接 printf/std::cout 绕过统一日志接口;内部缩写 [XIR] 无法理解 - UT 测试中冗余 std::cout 状态输出 影响算子:cumsum/view_copy/addr/split/split_v/unpack/adds/concat/pack/as_strided/eye/dynamic_partition/assign/masked_fill/strided_slice_grad/triu/tril/tensor_move/asin/power/concat_d/concat_v2 #### 二、环境信息 (可选) 不涉及(纯日志文案整改,无运行时行为变化) #### 三、重现步骤 (可选) 执行算子 UT / 查看 logs/plog 中相关算子日志 #### 四、预期结果 (可选) 日志级别、文案符合日志规范,便于问题定位 💡 备注(选填):排除 experimental 目录,仅整改主仓 关联 PR:https://gitcode.com/cann/ops-math/merge_requests/5023 --- 关联的Issue:#2845 See merge request: cann/ops-math!5023 | 1 个月前 | |
fix: 迁移Adds/Cholesky算子原型至对应目录 Co-authored-by: sunchun<sunchun4@h-partners.com> # message auto-generated for no-merge-commit merge: !5129 merge auto-fix/issue-2304-proto into master fix: 迁移Adds/Cholesky算子原型至对应目录 Created-by: sunchun Commit-by: sunchun Merged-by: cann-robot Description: ## 背景 issue #2304 指出公共头文件 op_math_proto_extend.h 中定义了一批算子原型,但其中部分算子已有独立目录,其原型应迁移至对应算子目录下的 op_graph 文件夹中。 ## 修改内容 1. 新建 math/adds/op_graph/adds_proto.h,将 Adds 算子原型从公共头迁移至此。 2. 新建 math/cholesky/op_graph/cholesky_proto.h,将 Cholesky 算子原型从公共头迁移至此。 3. 从 common/inc/op_graph/op_math_proto_extend.h 中移除 Adds、Cholesky、Pdist 的原型定义(Pdist 原型已在 experimental/math/pdist/op_graph/pdist_proto.h 中定义,无需修改)。 4. 更新依赖 Adds 原型的插件文件 include 引用路径。 5. 更新 math/adds/README.md 中的算子 IR 路径引用。 ## 验证方式 - 构建可正常通过,op_graph 下新 proto 文件由 cmake/func.cmake 自动收集。 - 通过 clang-format 与 OAT License Header 格式检查。 Closes #2304 See merge request: cann/ops-math!5129 | 1 个月前 | |
feat: Adds、Expand、BroadcastTo、Tile、GetShape算子新增ascend960dt平台支持 Co-authored-by: tan_xin<tanxin44@huawei.com> # message auto-generated for no-merge-commit merge: !5447 merge master-v121 into master feat: Adds、Expand、BroadcastTo、Tile、GetShape算子新增ascend960dt平台支持 Created-by: tan_xin Commit-by: tan_xin;t00850857 Merged-by: cann-robot Description: ## 描述 为 Adds、Expand、BroadcastTo、Tile、GetShape 五个算子新增 ascend960dt 平台支持,使其可在 ascend960dt(Ascend960DT_968B7)芯片上完成编译与调用。主要改动: ### 算子定义与编译配置 - 各算子 op_host 定义文件(adds_def.cpp、expand_def.cpp、broadcast_to_def.cpp、tile_def.cpp、get_shape_def.cpp)通过 AICore().AddConfig("ascend960dt", ...) 注册平台配置 - 各算子 CMakeLists.txt 的 SUPPORT_COMPUTE_UNIT 增加 "ascend960dt",tiling 目录沿用 arch35;get_shape 的 kernel 源码 COMPUTE_UNITS 同步增加 ascend960dt - 新增各算子 ascend960dt 平台二进制编译配置 op_host/config/ascend960dt/*_binary.json 与 *_simplified_key.ini(simplified_key_mode=0) - ascendc_config.json 中 Adds、BroadcastTo、Tile 的 compute_units 增加 ascend960dt,并配置对应编译选项 ### 公共构建配置 - 顶层 CMakeLists.txt 的 ASCEND_ALL_COMPUTE_UNIT 增加 ascend960dt - scripts/build.conf.sh 的 SUPPORT_COMPUTE_UNIT_SHORT 增加 ascend960dt - scripts/kernel/binary_script/build_env.sh 的 SOC_MAP 增加 [Ascend960DT]="Ascend960DT_968B7" ### op_api 适配 - expand:aclnn_expand.cpp 的 dataTypeSupportedMap 与 expand.cpp 的 IsAiCoreSupport 增加 NpuArch::DAV_9201 分支,数据类型支持列表沿用 ASCEND910B(FLOAT、FLOAT16、INT32、UINT8、INT8、BOOL、BF16、INT64) - 公共头文件 aclnn_check.h:IsRegBase 的 regbaseArch 集合增加 NpuArch::DAV_9201、NpuArch::DAV_9202;其余为 clang-format 格式整改 ## 关联的Issue - #3561 ## 测试 - 已通过 pre-commit 检查(clang-format 格式、codespell 拼写、文件末尾换行整改,见提交记录) ## 文档更新 - 无 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5447 | 3 天前 | |
fix cleancode include:assign,mem_set,split_v,tensor_move,adds,power Co-authored-by: c00887544<chenshengze@huawei.com> # message auto-generated for no-merge-commit merge: !5264 merge 0831 into master fix cleancode include:assign,mem_set,split_v,tensor_move,adds,power Created-by: chengzhi1120 Commit-by: c00887544 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> cleancode整改 涉及assign,mem_set,split_v,tensor_move,adds,power算子 主要整改内容:去除保留标识符;修改难以理解的字面常量;删除不用的代码段;合理安排空行;避免使用reinterpret_cast;不向全局命名空间中导入符号 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/3006 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 冒烟通过 白盒用例验证通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:cleancode整改 See merge request: cann/ops-math!5264 | 1 个月前 | |
fix: 整改责任田算子日志质量(修复日志规范问题) Co-authored-by: StoneChan_<chensitong2@huawei.com> # message auto-generated for no-merge-commit merge: !5023 merge log-quality-rectify into master fix: 整改责任田算子日志质量(修复日志规范问题) Created-by: StoneChan_ Commit-by: StoneChan_ Merged-by: cann-robot Description: #### 一、问题描述 (必填) 依据 CANN 日志规范检查规则,对责任田算子的运行时日志进行质量整改,修复以下问题: - 级别错配:GE IR 示例(test_geir_*.cpp)失败信息误标 INFO(应 ERROR),存在故障被忽略风险 - 拼写错误:caculate/negtive/faild/mat 等 - 语法错误:"is failed" 中式结构、"fail to get" 缺时态、缺助动词/介词、must same 等 - 变量越限日志缺正确范围(未给出期望值) - 中文标点(全角顿号)残留 - 示例直接 printf/std::cout 绕过统一日志接口;内部缩写 [XIR] 无法理解 - UT 测试中冗余 std::cout 状态输出 影响算子:cumsum/view_copy/addr/split/split_v/unpack/adds/concat/pack/as_strided/eye/dynamic_partition/assign/masked_fill/strided_slice_grad/triu/tril/tensor_move/asin/power/concat_d/concat_v2 #### 二、环境信息 (可选) 不涉及(纯日志文案整改,无运行时行为变化) #### 三、重现步骤 (可选) 执行算子 UT / 查看 logs/plog 中相关算子日志 #### 四、预期结果 (可选) 日志级别、文案符合日志规范,便于问题定位 💡 备注(选填):排除 experimental 目录,仅整改主仓 关联 PR:https://gitcode.com/cann/ops-math/merge_requests/5023 --- 关联的Issue:#2845 See merge request: cann/ops-math!5023 | 1 个月前 | |
feat: Adds、Expand、BroadcastTo、Tile、GetShape算子新增ascend960dt平台支持 Co-authored-by: tan_xin<tanxin44@huawei.com> # message auto-generated for no-merge-commit merge: !5447 merge master-v121 into master feat: Adds、Expand、BroadcastTo、Tile、GetShape算子新增ascend960dt平台支持 Created-by: tan_xin Commit-by: tan_xin;t00850857 Merged-by: cann-robot Description: ## 描述 为 Adds、Expand、BroadcastTo、Tile、GetShape 五个算子新增 ascend960dt 平台支持,使其可在 ascend960dt(Ascend960DT_968B7)芯片上完成编译与调用。主要改动: ### 算子定义与编译配置 - 各算子 op_host 定义文件(adds_def.cpp、expand_def.cpp、broadcast_to_def.cpp、tile_def.cpp、get_shape_def.cpp)通过 AICore().AddConfig("ascend960dt", ...) 注册平台配置 - 各算子 CMakeLists.txt 的 SUPPORT_COMPUTE_UNIT 增加 "ascend960dt",tiling 目录沿用 arch35;get_shape 的 kernel 源码 COMPUTE_UNITS 同步增加 ascend960dt - 新增各算子 ascend960dt 平台二进制编译配置 op_host/config/ascend960dt/*_binary.json 与 *_simplified_key.ini(simplified_key_mode=0) - ascendc_config.json 中 Adds、BroadcastTo、Tile 的 compute_units 增加 ascend960dt,并配置对应编译选项 ### 公共构建配置 - 顶层 CMakeLists.txt 的 ASCEND_ALL_COMPUTE_UNIT 增加 ascend960dt - scripts/build.conf.sh 的 SUPPORT_COMPUTE_UNIT_SHORT 增加 ascend960dt - scripts/kernel/binary_script/build_env.sh 的 SOC_MAP 增加 [Ascend960DT]="Ascend960DT_968B7" ### op_api 适配 - expand:aclnn_expand.cpp 的 dataTypeSupportedMap 与 expand.cpp 的 IsAiCoreSupport 增加 NpuArch::DAV_9201 分支,数据类型支持列表沿用 ASCEND910B(FLOAT、FLOAT16、INT32、UINT8、INT8、BOOL、BF16、INT64) - 公共头文件 aclnn_check.h:IsRegBase 的 regbaseArch 集合增加 NpuArch::DAV_9201、NpuArch::DAV_9202;其余为 clang-format 格式整改 ## 关联的Issue - #3561 ## 测试 - 已通过 pre-commit 检查(clang-format 格式、codespell 拼写、文件末尾换行整改,见提交记录) ## 文档更新 - 无 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5447 | 3 天前 | |
docs(adds): 更正 README 中 value 属性参数说明 Co-authored-by: little_apple_12<020716ljh@gmail.com> # message auto-generated for no-merge-commit merge: !6078 merge fix/ops-math-2026-09-30-005-adds-attr-doc into master docs(adds): 更正 README 中 value 属性参数说明 Created-by: little_apple_12 Commit-by: little_apple_12 Merged-by: cann-robot Description: ## 描述 更正 math/adds/README.md 参数表中 Adds 标量参数的名称和类别:由 scalar 输入改为必填 value 属性,并注明该属性对应公式中的标量 scalar。原型只声明输入 x、必填属性 value 和输出 y;本次不改动公式、原型、Host 注册或运行时行为。此处也不同于 #1699/#3007 的调用说明调整、#2108/#3685/#3683 的换行修改,以及 #5638 的 GEIR 示例属性设置。 ## 关联的Issue 关联Issue #3368 ## 测试 - grep -nE 'scalar|value|REQUIRED_ATTR|\.INPUT\(' math/adds/README.md math/adds/op_graph/adds_proto.h math/adds/op_host/adds_def.cpp:README 参数行为 value/“属性”,原型为 .INPUT(x, ...) 和 .REQUIRED_ATTR(value, Float)。 - Python HTMLParser 表格核对:4 行解析成功;value 行为 ['value', '属性', '必填标量属性,对应公式中的scalar。', 'FLOAT', '-'];旧的 scalar 输入行不存在。 - git diff --check:退出码 0,无空白错误;diff 仅 1 个 hunk、3 行替换。 - 本次为文档修订,未运行 NPU 算子测试。 ## 文档更新 仅更新 math/adds/README.md 参数表中的必填属性行;无其他文档改动。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ### 当前PR是否有AI参与: [] 否 [x] 是 __1. Agent平台信息: Codex CLI 0.153.4 __2. 模型信息: gpt-5.6-luna __3. Prompt摘要: 独立核对 Adds README 参数表与原型/Host 注册、全页去重,并仅修正必填 value 属性的文档字段。 ### 希望检视人员了解: 1. 本次静态复核、去重和核对由 Codex 执行;未进行 NPU 测试。提交后由人类贡献者审阅 diff 并负责回应维护者意见。 See merge request: cann/ops-math!6078 | 4 天前 |
Adds
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR&950DT系列产品 | √ |
| Atlas A3系列产品 | √ |
| Atlas A2系列产品 | √ |
| Atlas 200I/500 A2推理产品 | × |
| Atlas推理系列产品 | × |
| Atlas训练系列产品 | √ |
功能说明
-
算子功能:实现张量与标量的加法操作,对输入张量的每个元素加上一个标量值,输出结果张量。
-
计算公式:
yi=xi+scalary_i = x_i + scalar yi=xi+scalar
其中:
- xix_ixi:输入张量的第i个元素
- scalarscalarscalar:标量值
- yiy_iyi:输出张量的第i个元素
-
使用场景:深度学习模型中的标量加法操作,常见于偏置添加、常数调整等场景。
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x | 输入 | 输入张量,对应公式中的x。支持1-8维Tensor。 | FLOAT16、FLOAT32、BFLOAT16、INT16、INT32、INT64 | ND |
| value | 属性 | 必填标量属性,对应公式中的scalar。 | FLOAT | - |
| y | 输出 | 输出张量,对应公式中的y。数据类型与输入张量x保持一致,shape与x一致。 | FLOAT16、FLOAT32、BFLOAT16、INT16、INT32、INT64 | ND |
约束说明
- 数据类型约束:输入张量x和输出张量y的数据类型必须一致。
- shape约束:输出张量y的shape必须与输入张量x的shape完全一致。
- 维度约束:输入输出张量支持1-8维。
调用说明
| 调用方式 | 样例代码 | 说明 |
|---|---|---|
| 图模式调用 | test_geir_adds | 通过算子IR构图方式调用Adds算子。 |