| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix(tan): harden tiling/kernel correctness, aclnn dtype domain checks and docs Co-authored-by: dengguojie<dengguojie@huawei.com> # message auto-generated for no-merge-commit merge: !6913 merge hardening/Tan into master fix(tan): harden tiling/kernel correctness, aclnn dtype domain checks and docs Created-by: dengguojie Commit-by: dengguojie Merged-by: cann-robot Description: ## 描述 **改动原因**: Tan 算子质量加固: 修复 tiling/kernel 数值与边界缺陷,清理 aclnn 越权校验,加固 golden 标杆契约,修正文档与头注释不一致,补齐看护集与 UT 资产。 **改动方法**(24 项=代码修复 14+文档勘误 6+评审收敛 4;单 commit,18 files,+1411/-214): 代码修复(14 项): | ID | 修复项 | 文件 | |----|--------|------| | TAN-F01 | tiling 累乘/加法链 int32 窄化溢出回绕保护 | op_host/arch35/tan_tiling_arch35.cpp | | TAN-F02 | SIMT 废弃 API 迁移 + grid-stride 索引有符号溢出守卫 | op_kernel/arch35/tan_simt.h | | TAN-F03 | aclnn ND-only 越权校验删除 | op_api/aclnn_tan.cpp | | TAN-F10 | 空输入 tiling blockDim=0 修复 | op_host/arch35/tan_tiling_arch35.cpp | | TAN-F12 | 极点回归用例紧门限恢复(社区 review 采纳) | tests/st/arch35/ttk_kernel_tan_st.csv | | TAN-F13 | aclnn rank-8 上限校验删除(文档/UT 同步) | op_api/aclnn_tan.cpp, tests/ut/op_api/test_aclnn_tan.cpp, docs/aclnnTan&aclnnInplaceTan{,_en}.md | | TAN-F14 | kernel isinf/isnan 冗余特殊值分支删除 | op_kernel/arch35/tan_simt.h | | TAN-F15 | golden 自定义 torch_graph 模块删除,改用框架通用 GraphNetwork | tests/assets/golden.py | | TAN-F16 | golden third_party 双键拼接类(原生域直调,int32 拼接截断链矫正) | tests/assets/golden.py | | TAN-F17 | golden aclnn 双 spec third_party 参考类化(out/就地语义) | tests/assets/golden.py | | TAN-F18 | golden 四入口 del kwargs 冗余清理 | tests/assets/golden.py | | TAN-F24 | golden 容差表 float64 判据显式化(isclose,不再回落 mix_tolerance fp32 档) | tests/assets/golden.py | 另含 TAN-F21/F22(compute 统一重构/tf 腿三态适配),随 golden.py 交付。 文档勘误(6 项): | ID | 修复项 | 文件 | |----|--------|------| | TAN-D03 | README x/y 非连续 Tensor 转换行为声明(zh/en) | README.md, README_en.md | | TAN-D04 | aclnn_tan.h selfRef 头注释补 BFLOAT16 | op_api/aclnn_tan.h | | TAN-D05 | 产品差异 note 收敛至唯一真实差异 BFLOAT16 | docs/aclnnTan&aclnnInplaceTan{,_en}.md | | TAN-D06 | 函数原型代码块语言标记 Cpp→cpp | docs/aclnnTan&aclnnInplaceTan{,_en}.md | | TAN-D07 | aclnn_tan.h 头注释 Tanh 复制遗留修正 | op_api/aclnn_tan.h | | TAN-D09 | in→out 组合白名单表+selfRef 域说明+参数表错链修正(zh/en) | docs/aclnnTan&aclnnInplaceTan{,_en}.md | 评审收敛修复(4 项): | ID | 修复项 | 文件 | |----|--------|------| | R-A | UT 注释规范化(仅描述代码语义) | tests/ut/op_api/test_aclnn_tan.cpp, tests/ut/op_host/arch35/test_tan_tiling_arch35.cpp | | R-C | tf 看护集 CSV 表头方言修正(testcase_name/api_name) | tests/st/arch35/ttk_tf_tan_st.csv | | R-E | aclnn_tan.h self 头注释补全 12 dtype | op_api/aclnn_tan.h | | R-F | tiling 核切分向上取整改用平台助手 Ops::Base::CeilDiv | op_host/arch35/tan_tiling_arch35.cpp | 测试资产: tests/assets/golden.py + tests/st/arch35/ttk_{kernel,aclnn,geir,torch,tf}_tan_st.csv(五路看护集,kernel 101 条,其余各 100 条)。 ## 关联的Issue Closes #4349(修复汇总,含逐项清单) ## 测试 - TTK 全量 503/503(正例 500+负向拒绝 3): kernel 101+supp 1、aclnn 97+supp 4(3 负向按预期拒绝)、geir/torch/tf 各 100 全绿;判据 cross_check(fp16/bf16/fp32)/binary_equal(int32)/isclose(f64 16/16 零 FAIL);4 例超大用例按协议旁表;四路抽验 8/8 与基线一致 - 低精度输入×宽 out 少量用例系框架真值口径与实现侧 GPU 同款计算顺序固有差异,逐例定性非算子缺陷,圈定看护集外(详见 issue) - Host UT 61/61(host 23/api 24/aicpu 14/graph 0) - pre-commit 18 文件定向全绿;OAT 双 0;六静态复检零新增 ## 文档更新 - math/tan/README{,_en}.md(非连续声明 zh/en) - math/tan/docs/aclnnTan&aclnnInplaceTan{,_en}.md(zh/en) - math/tan/op_api/aclnn_tan.h(头注释) ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6913 | 5 天前 | |
fix(tan): harden tiling/kernel correctness, aclnn dtype domain checks and docs Co-authored-by: dengguojie<dengguojie@huawei.com> # message auto-generated for no-merge-commit merge: !6913 merge hardening/Tan into master fix(tan): harden tiling/kernel correctness, aclnn dtype domain checks and docs Created-by: dengguojie Commit-by: dengguojie Merged-by: cann-robot Description: ## 描述 **改动原因**: Tan 算子质量加固: 修复 tiling/kernel 数值与边界缺陷,清理 aclnn 越权校验,加固 golden 标杆契约,修正文档与头注释不一致,补齐看护集与 UT 资产。 **改动方法**(24 项=代码修复 14+文档勘误 6+评审收敛 4;单 commit,18 files,+1411/-214): 代码修复(14 项): | ID | 修复项 | 文件 | |----|--------|------| | TAN-F01 | tiling 累乘/加法链 int32 窄化溢出回绕保护 | op_host/arch35/tan_tiling_arch35.cpp | | TAN-F02 | SIMT 废弃 API 迁移 + grid-stride 索引有符号溢出守卫 | op_kernel/arch35/tan_simt.h | | TAN-F03 | aclnn ND-only 越权校验删除 | op_api/aclnn_tan.cpp | | TAN-F10 | 空输入 tiling blockDim=0 修复 | op_host/arch35/tan_tiling_arch35.cpp | | TAN-F12 | 极点回归用例紧门限恢复(社区 review 采纳) | tests/st/arch35/ttk_kernel_tan_st.csv | | TAN-F13 | aclnn rank-8 上限校验删除(文档/UT 同步) | op_api/aclnn_tan.cpp, tests/ut/op_api/test_aclnn_tan.cpp, docs/aclnnTan&aclnnInplaceTan{,_en}.md | | TAN-F14 | kernel isinf/isnan 冗余特殊值分支删除 | op_kernel/arch35/tan_simt.h | | TAN-F15 | golden 自定义 torch_graph 模块删除,改用框架通用 GraphNetwork | tests/assets/golden.py | | TAN-F16 | golden third_party 双键拼接类(原生域直调,int32 拼接截断链矫正) | tests/assets/golden.py | | TAN-F17 | golden aclnn 双 spec third_party 参考类化(out/就地语义) | tests/assets/golden.py | | TAN-F18 | golden 四入口 del kwargs 冗余清理 | tests/assets/golden.py | | TAN-F24 | golden 容差表 float64 判据显式化(isclose,不再回落 mix_tolerance fp32 档) | tests/assets/golden.py | 另含 TAN-F21/F22(compute 统一重构/tf 腿三态适配),随 golden.py 交付。 文档勘误(6 项): | ID | 修复项 | 文件 | |----|--------|------| | TAN-D03 | README x/y 非连续 Tensor 转换行为声明(zh/en) | README.md, README_en.md | | TAN-D04 | aclnn_tan.h selfRef 头注释补 BFLOAT16 | op_api/aclnn_tan.h | | TAN-D05 | 产品差异 note 收敛至唯一真实差异 BFLOAT16 | docs/aclnnTan&aclnnInplaceTan{,_en}.md | | TAN-D06 | 函数原型代码块语言标记 Cpp→cpp | docs/aclnnTan&aclnnInplaceTan{,_en}.md | | TAN-D07 | aclnn_tan.h 头注释 Tanh 复制遗留修正 | op_api/aclnn_tan.h | | TAN-D09 | in→out 组合白名单表+selfRef 域说明+参数表错链修正(zh/en) | docs/aclnnTan&aclnnInplaceTan{,_en}.md | 评审收敛修复(4 项): | ID | 修复项 | 文件 | |----|--------|------| | R-A | UT 注释规范化(仅描述代码语义) | tests/ut/op_api/test_aclnn_tan.cpp, tests/ut/op_host/arch35/test_tan_tiling_arch35.cpp | | R-C | tf 看护集 CSV 表头方言修正(testcase_name/api_name) | tests/st/arch35/ttk_tf_tan_st.csv | | R-E | aclnn_tan.h self 头注释补全 12 dtype | op_api/aclnn_tan.h | | R-F | tiling 核切分向上取整改用平台助手 Ops::Base::CeilDiv | op_host/arch35/tan_tiling_arch35.cpp | 测试资产: tests/assets/golden.py + tests/st/arch35/ttk_{kernel,aclnn,geir,torch,tf}_tan_st.csv(五路看护集,kernel 101 条,其余各 100 条)。 ## 关联的Issue Closes #4349(修复汇总,含逐项清单) ## 测试 - TTK 全量 503/503(正例 500+负向拒绝 3): kernel 101+supp 1、aclnn 97+supp 4(3 负向按预期拒绝)、geir/torch/tf 各 100 全绿;判据 cross_check(fp16/bf16/fp32)/binary_equal(int32)/isclose(f64 16/16 零 FAIL);4 例超大用例按协议旁表;四路抽验 8/8 与基线一致 - 低精度输入×宽 out 少量用例系框架真值口径与实现侧 GPU 同款计算顺序固有差异,逐例定性非算子缺陷,圈定看护集外(详见 issue) - Host UT 61/61(host 23/api 24/aicpu 14/graph 0) - pre-commit 18 文件定向全绿;OAT 双 0;六静态复检零新增 ## 文档更新 - math/tan/README{,_en}.md(非连续声明 zh/en) - math/tan/docs/aclnnTan&aclnnInplaceTan{,_en}.md(zh/en) - math/tan/op_api/aclnn_tan.h(头注释) ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6913 | 5 天前 | |
[CANNBOT]tan atanh算子适配Ascend950 Ascendc实现 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !2892 merge 0522 into master [CANNBOT]tan atanh算子适配Ascend950 Ascendc实现 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> tan atanh算子适配Ascend950 Ascendc实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1642 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> # Tan 算子 TTK 测试用例总结 总计 346 个用例,全部 PASS。 按数据类型 ┌──────────┬──────────┬────────┬─────────────────────────┬────────┐ │ 输入类型 │ 输出类型 │ 用例数 │ 精度容忍度 (rtol, atol) │ 通过率 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ float32 │ float32 │ 95 │ (0.0001, 0.0001) │ 95/95 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ float16 │ float16 │ 95 │ (0.001, 0.001) │ 95/95 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ bfloat16 │ bfloat16 │ 91 │ (0.004, 0.004) │ 91/91 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ int32 │ float32 │ 65 │ (0.0001, 0.0001) │ 65/65 │ └──────────┴──────────┴────────┴─────────────────────────┴────────┘ 按张量维度 ┌──────┬─────┬─────┬─────┬─────┬─────┐ │ 维度 │ 1D │ 2D │ 3D │ 4D │ 5D │ ├──────┼─────┼─────┼─────┼─────┼─────┤ │ 数量 │ 190 │ 74 │ 36 │ 29 │ 17 │ └──────┴─────┴─────┴─────┴─────┴─────┘ 按输入数据范围 ┌─────────────────────────┬────────┬────────────────┐ │ 范围 │ 用例数 │ 覆盖场景 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1e-6, 1e-6) │ 43 │ 极小值/零附近 │ ├─────────────────────────┼────────┼────────────────┤ │ (-0.5, 0.5) │ 35 │ 小角度 │ ├─────────────────────────┼────────┼────────────────┤ │ (-0.785, 0.785) │ 45 │ ±π/4 以内 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1.0, 1.0) / (-1, 1) │ 47 │ 一般范围 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1.5, 1.5) │ 45 │ 接近 ±π/2 极点 │ ├─────────────────────────┼────────┼────────────────┤ │ (-π, π) / (-3.14, 3.14) │ 32 │ 全周期 │ ├─────────────────────────┼────────┼────────────────┤ │ (-10, 10) │ 30 │ 多周期 │ ├─────────────────────────┼────────┼────────────────┤ │ (-100, 100) │ 37 │ 大值域 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1000, 1000) │ 10 │ 极大值域 │ └─────────────────────────┴────────┴────────────────┘ # atanh TTK 测试结果报告 (torch golden) ## 1. 测试概览 | 测试类型 | 总用例数 | 通过 | 失败 | 通过率 | |---------|--------|------|------|--------| | 黑盒测试 | 119 | 119 | 0 | 100.0% | | 白盒测试 | 24 | 24 | 0 | 100.0% | | 网络测试 | 15 | 15 | 0 | 100.0% | | **合计** | **158** | **158** | **0** | **100.0%** | ## 2. KT流程 - 黑盒测试: 冒烟通过 → dtype覆盖通过 → 全量119条100%通过 - 白盒测试: 冒烟通过 → 全量24条100%通过 - 网络测试: 冒烟通过 → 全量15条100%通过 - DYN_GOLD 和 BIN_GOLD 全部为 100.0% ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2892 | 5 个月前 | |
[CANNBOT]tan atanh算子适配Ascend950 Ascendc实现 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !2892 merge 0522 into master [CANNBOT]tan atanh算子适配Ascend950 Ascendc实现 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> tan atanh算子适配Ascend950 Ascendc实现 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1642 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> # Tan 算子 TTK 测试用例总结 总计 346 个用例,全部 PASS。 按数据类型 ┌──────────┬──────────┬────────┬─────────────────────────┬────────┐ │ 输入类型 │ 输出类型 │ 用例数 │ 精度容忍度 (rtol, atol) │ 通过率 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ float32 │ float32 │ 95 │ (0.0001, 0.0001) │ 95/95 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ float16 │ float16 │ 95 │ (0.001, 0.001) │ 95/95 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ bfloat16 │ bfloat16 │ 91 │ (0.004, 0.004) │ 91/91 │ ├──────────┼──────────┼────────┼─────────────────────────┼────────┤ │ int32 │ float32 │ 65 │ (0.0001, 0.0001) │ 65/65 │ └──────────┴──────────┴────────┴─────────────────────────┴────────┘ 按张量维度 ┌──────┬─────┬─────┬─────┬─────┬─────┐ │ 维度 │ 1D │ 2D │ 3D │ 4D │ 5D │ ├──────┼─────┼─────┼─────┼─────┼─────┤ │ 数量 │ 190 │ 74 │ 36 │ 29 │ 17 │ └──────┴─────┴─────┴─────┴─────┴─────┘ 按输入数据范围 ┌─────────────────────────┬────────┬────────────────┐ │ 范围 │ 用例数 │ 覆盖场景 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1e-6, 1e-6) │ 43 │ 极小值/零附近 │ ├─────────────────────────┼────────┼────────────────┤ │ (-0.5, 0.5) │ 35 │ 小角度 │ ├─────────────────────────┼────────┼────────────────┤ │ (-0.785, 0.785) │ 45 │ ±π/4 以内 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1.0, 1.0) / (-1, 1) │ 47 │ 一般范围 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1.5, 1.5) │ 45 │ 接近 ±π/2 极点 │ ├─────────────────────────┼────────┼────────────────┤ │ (-π, π) / (-3.14, 3.14) │ 32 │ 全周期 │ ├─────────────────────────┼────────┼────────────────┤ │ (-10, 10) │ 30 │ 多周期 │ ├─────────────────────────┼────────┼────────────────┤ │ (-100, 100) │ 37 │ 大值域 │ ├─────────────────────────┼────────┼────────────────┤ │ (-1000, 1000) │ 10 │ 极大值域 │ └─────────────────────────┴────────┴────────────────┘ # atanh TTK 测试结果报告 (torch golden) ## 1. 测试概览 | 测试类型 | 总用例数 | 通过 | 失败 | 通过率 | |---------|--------|------|------|--------| | 黑盒测试 | 119 | 119 | 0 | 100.0% | | 白盒测试 | 24 | 24 | 0 | 100.0% | | 网络测试 | 15 | 15 | 0 | 100.0% | | **合计** | **158** | **158** | **0** | **100.0%** | ## 2. KT流程 - 黑盒测试: 冒烟通过 → dtype覆盖通过 → 全量119条100%通过 - 白盒测试: 冒烟通过 → 全量24条100%通过 - 网络测试: 冒烟通过 → 全量15条100%通过 - DYN_GOLD 和 BIN_GOLD 全部为 100.0% ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2892 | 5 个月前 |