| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
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 个月前 | |
Ceil示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Co-authored-by: zhouqilong<zhouqilong2@huawei.com> # message auto-generated for no-merge-commit merge: !4665 merge raii-ceil into master Ceil示例改用C++ RAII资源管理,与IsFinite/IsInf示例风格对齐 Created-by: zhou-qilong Commit-by: zhouqilong Merged-by: cann-robot Description: ## 描述 将 math/ceil/examples 下的 aclnn 示例由手动资源管理改为 C++ RAII 管理,与同仓 math/is_finite、math/is_inf 示例风格保持一致。 ## 测试 - bash build.sh --run_example ceil eager --soc=ascend950:编译通过,在 Ascend950PR 上运行成功,输出符合预期(输入 [0, 1.1, 2.2, …, 7.7] 的 ceil 结果 [0, 2, 3, 4, 5, 6, 7, 8] 全部正确),示例正常退出。 ## 文档更新 无。 ## 类型标签 - [x] 其他,请描述:示例代码改造(C++ RAII资源管理) See merge request: cann/ops-math!4665 | 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 个月前 | |
clean code Co-authored-by: yuanbin_22<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !1496 merge CleanCode into master clean code Created-by: yuanbin_22 Commit-by: yuanbin_22 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 类的成员变量必须显式初始化 ## 关联的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!1496 | 6 个月前 | |
supports the realization of next-generation technologies Co-authored-by: ASCEND222<dongfei16@h-partners.com> # message auto-generated for no-merge-commit merge: !812 merge master into master supports the realization of next-generation technologies Created-by: ASCEND222 Commit-by: ASCEND222 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 支持下一代实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!812 | 7 个月前 | |
批量算子使用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 个月前 | |
refactor: arch35 算子 Regbase Reg 层旧接口替换为新接口 Co-authored-by: ywx1080114<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !4527 merge fix/api-rename-regbase into master refactor: arch35 算子 Regbase Reg 层旧接口替换为新接口 Created-by: yuanbin_22 Commit-by: ywx1080114 Merged-by: cann-robot Description: ## 描述 将 ops-math 仓库中 19 个算子的 arch35 regbase kernel 实现从 Reg 层旧接口替换为新接口,同时将地址空间限定符 __local_mem__ 统一替换为 __ubuf__,使代码与 AscendC SDK 最新命名规范保持一致。 ### 改动原因 AscendC SDK 新版本对 Reg 层 API 进行了重命名,旧 API(如 Reg::DataCopy、Reg::CompareScalar、Reg::MaskAnd、Reg::MaskOr、Reg::MaskPack、Reg::FusedAbsSub、Reg::FusedMulDstAdd 等)将逐步废弃。本 PR 同步更新仓库中 arch35 regbase 算子 kernel 的接口调用,避免使用将废弃的 API。 ### 改动方法 对 22 个 arch35 regbase kernel 头文件进行批量接口替换,涉及 19 个 math 算子: add_n(2 个文件:add_n_regbase.h、add_n_regbase_fullload.h)、assign_add、assign_sub、cast(cast_impl.h)、ceil、exp、floor(3 个文件:floor_bf16.h、floor_f16.h、floor_f32.h)、is_close(is_close_dag.h)、log、log1p、nan_to_num、neg、reciprocal、round、rsqrt、rsqrt_grad、sign(sign.h)、tanh、trunc 接口替换映射如下: | 旧接口 | 新接口 | 说明 | |--------|--------|------| | Reg::DataCopy(reg, addr) | Reg::LoadAlign(reg, addr) | UB→Reg 加载 | | Reg::DataCopy(addr, reg) | Reg::StoreAlign(addr, reg) | Reg→UB 存储 | | Reg::DataCopy<T, LoadDist/StoreDist> | Reg::LoadAlign/StoreAlign<T, Dist> | 带 Dist 模板参数 | | Reg::DataCopy<T, PostLiteral, Dist> | Reg::LoadAlign/StoreAlign<T, PostLiteral, Dist> | 带 PostLiteral | | Reg::CompareScalar | Reg::Compares | 标量比较 | | CompareScalar(无命名空间) | Compares | 标量比较 | | Reg::MaskAnd | Reg::And | 掩码与运算 | | Reg::MaskOr | Reg::Or | 掩码或运算 | | Reg::MaskPack | Reg::Pack | 掩码打包 | | Reg::FusedAbsSub | Reg::AbsSub | 融合绝对差 | | Reg::FusedMulDstAdd | Reg::MulDstAdd | 融合乘加 | | __local_mem__ | __ubuf__ | 地址空间限定符(涉及 floor、is_close 算子) | > 注:上述替换同时覆盖带 AscendC:: 前缀和不带前缀两种调用形式。替换为纯命名变更,不涉及计算逻辑修改,部分接口替换伴随行格式重排(缩进调整)。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2585 ## 测试 接口替换为纯命名变更,不涉及计算逻辑修改,通过编译验证和已有 ST/UT 用例回归验证。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:接口重命名,代码规范对齐 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-math!4527 | 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 | 28 天前 | |
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 | 28 天前 | |
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 | 28 天前 | |
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 个月前 |
Ceil
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | × |
| Atlas 推理系列产品 | √ |
| Atlas 训练系列产品 | √ |
功能说明
-
算子功能:返回输入tensor中每个元素向上取整的结果
-
计算公式:
yi=⌈xi⌉y_i =⌈x_i⌉ yi=⌈xi⌉
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x | 输入 | 计算公式中的输入x。 | FLOAT16、FLOAT、BFLOAT16 | ND |
| y | 输出 | 计算公式中的输出y。 | FLOAT16、FLOAT、BFLOAT16 | ND |
约束说明
无
调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| aclnn调用 | test_aclnn_ceil.cpp | 通过aclnnCeil接口方式调用Ceil算子。 |
| 图模式调用 | test_geir_ceil.cpp | 通过算子IR构图方式调用Ceil算子。 |