| 【描 述】 AICPU supports tan-kernel and cosh implementation
Co-authored-by: jialimin1<jialimin1@huawei.com>
# message auto-generated for no-merge-commit merge:
!2214 merge master into master
【描 述】 AICPU supports tan-kernel and cosh implementation
Created-by: jialimin1
Commit-by: jialimin1
Merged-by: cann-robot
Description: ## 描述
本次 PR 实现了两个数学操作符:Cosh 和 Tan,包括:
AICPU 内核实现(支持多种数据类型)
完整的单元测试覆盖
示例代码
## 关联的Issue
Issue1187
<!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。-->
<!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。-->
## 测试
UT测试:
```
[2026-04-14 07:20:20] [----------] Global test environment set-up.
[2026-04-14 07:20:20] [----------] 12 tests from TEST_COSH_UT
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.DATA_TYPE_DT_FLOAT16
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.DATA_TYPE_DT_FLOAT16 (3 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.DATA_TYPE_DT_FLOAT
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.DATA_TYPE_DT_FLOAT (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.DATA_TYPE_DT_DOUBLE
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.DATA_TYPE_DT_DOUBLE (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.DATA_TYPE_DT_COMPLEX64
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.DATA_TYPE_DT_COMPLEX64 (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.DATA_TYPE_DT_COMPLEX128
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.DATA_TYPE_DT_COMPLEX128 (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.BAD_KERNEL_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.BAD_KERNEL_EXCEPTION (1 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.INPUT_SHAPE_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.INPUT_SHAPE_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.INPUT_DTYPE_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.INPUT_DTYPE_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.INPUT_NULL_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.INPUT_NULL_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.OUTPUT_NULL_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.OUTPUT_NULL_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.NO_OUTPUT_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.NO_OUTPUT_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_COSH_UT.INPUT_BOOL_UNSUPPORT
[2026-04-14 07:20:20] [ OK ] TEST_COSH_UT.INPUT_BOOL_UNSUPPORT (0 ms)
[2026-04-14 07:20:20] [----------] 12 tests from TEST_COSH_UT (5 ms total)
[2026-04-14 07:20:20]
[2026-04-14 07:20:20] [----------] 14 tests from TEST_TAN_UT
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.DATA_TYPE_DT_FLOAT16
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.DATA_TYPE_DT_FLOAT16 (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.DATA_TYPE_DT_FLOAT
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.DATA_TYPE_DT_FLOAT (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.DATA_TYPE_DT_DOUBLE
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.DATA_TYPE_DT_DOUBLE (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.DATA_TYPE_DT_COMPLEX64
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.DATA_TYPE_DT_COMPLEX64 (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.DATA_TYPE_DT_COMPLEX128
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.DATA_TYPE_DT_COMPLEX128 (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.BAD_KERNEL_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.BAD_KERNEL_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.INPUT_SHAPE_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.INPUT_SHAPE_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.INPUT_DIM_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.INPUT_DIM_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.INPUT_DIMSIZE_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.INPUT_DIMSIZE_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.INPUT_DTYPE_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.INPUT_DTYPE_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.INPUT_NULL_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.INPUT_NULL_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.OUTPUT_NULL_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.OUTPUT_NULL_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.NO_OUTPUT_EXCEPTION
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.NO_OUTPUT_EXCEPTION (0 ms)
[2026-04-14 07:20:20] [ RUN ] TEST_TAN_UT.INPUT_BOOL_UNSUPPORT
[2026-04-14 07:20:20] [ OK ] TEST_TAN_UT.INPUT_BOOL_UNSUPPORT (0 ms)
[2026-04-14 07:20:20] [----------] 14 tests from TEST_TAN_UT (0 ms total)
[2026-04-14 07:20:20]
```
Tan geir用例测试:
```
[2026-04-14 07:53:22] result[0] is: -2.185040
[2026-04-14 07:53:22] result[1] is: -2.185040
[2026-04-14 07:53:22] result[2] is: -2.185040
[2026-04-14 07:53:22] result[3] is: -2.185040
[2026-04-14 07:53:22] result[4] is: -2.185040
[2026-04-14 07:53:22] result[5] is: -2.185040
```
Cosh geir用例测试:
```
[2026-04-14 07:56:50] result[0] is: 3.762196
[2026-04-14 07:56:50] result[1] is: 3.762196
[2026-04-14 07:56:50] result[2] is: 3.762196
[2026-04-14 07:56:50] result[3] is: 3.762196
[2026-04-14 07:56:50] result[4] is: 3.762196
[2026-04-14 07:56:50] result[5] is: 3.762196
```
<!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。-->
## 文档更新
docs/zh/op_list.md: tan和cosh支持aicpu,以及cosh的功能描述信息。
math/cosh/README.md:修改cosh支持的数据类型,和geir用例。
<!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->
## 类型标签
<!-- [x] 表示选中 -->
- [ ] Bug修复
- [x] 新特性
- [ ] 性能优化
- [ ] 文档更新
- [ ] 其他,请描述:
See merge request: cann/ops-math!2214 | 1 个月前 |