| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix(acosh): improve large-value precision Co-authored-by: wang-xing001<wangxing73@huawei.com> # message auto-generated for no-merge-commit merge: !4842 merge fix/acosh-large-value-precision into master fix(acosh): improve large-value precision Created-by: m0_73979701 Commit-by: wang-xing001 Merged-by: cann-robot Description: ## 描述 Acosh 的 Arch35 FP32 计算原先会对补偿公式结果与 log(x) + ln(2) 做全局 Min。这会在中大值区间引入系统性向下偏差;同时,直接计算 x * x 在超大 FP32 输入下存在中间结果溢出的风险。 本次修改按输入区间选择计算路径: - 接近 x = 1 的区间保留原有补偿公式,避免相消误差; - 中间区间使用直接公式 log(x + sqrt(x^2 - 1)); - 在 x^2 即将溢出前切换为渐近式 log(x) + ln(2); - 复用现有 UB 作为 Compare/Select 掩码,不增加 UB 占用; - 移除全局 Min,消除其造成的向下偏置。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2652 ## 测试 - [x] pre-commit 全部通过:trailing-whitespace、end-of-file、large-file、merge-conflict、private-key、clang-format、codespell、OAT - [x] Ascend 950 opkernel 构建通过:bash build.sh --ops=acosh --soc=ascend950 --opkernel -j16 - [x] CPU/NPU 两方精度:所有实际进入 NPU 数值比较的用例通过 - [x] GEIR:218/218 通过 - [x] ACLNN:28/28 通过 - [x] Torch eager:10/10 通过 - [x] Torch graph:10/10 通过 - [x] 精度回归扫描:36/36 通过 - [x] 当前三方结果文件中的 GEIR 部分:112/112 通过 说明:raw-kernel scalar shape 用例有 1 条在 TTK shape normalization 阶段未进入算子执行;等价 (1,) shape 用例通过,属于框架前处理问题,不是 Acosh 数值失败。 ## 文档更新 无。 ## 类型标签 - [x] Bug修复 - [ ] 新功能 - [ ] 重构 - [ ] 文档 - [ ] 测试 See merge request: cann/ops-math!4842 | 27 天前 | |
整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Co-authored-by: m0_73979701<1958538170@qq.com> # message auto-generated for no-merge-commit merge: !4623 merge feat/def-dtype-infershape-exception-checks-v2 into master 整改 Acosh/Asinh/Cosh/Real def 驱动、推导逻辑及异常拦截 Created-by: m0_73979701 Commit-by: m0_73979701 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 整改了 acosh、asinh、cosh、real 四个算子的 def 驱动、推导逻辑及异常拦截: - def 驱动 dtype:acosh/asinh/real 删除多余 dtype TilingKey,kernel 使用 DTYPE_X/DTYPE_OUTPUT;cosh 保留既有非 dtype 单值调度轴。 - InferShape/InferDataType:InferShape 复用 Ops::Base::InferShape4Elewise 并保留在 op_host;InferDataType 放在 op_graph/*_graph_infer.cpp,其中 Real 保留 complex 到实数的特殊映射。 - 异常拦截:补充 RegBase 私有格式、rank、负 shape size、输入输出 shape/dtype 等校验。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-math/issues/2661 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> - bash build.sh --pkg --ops=acosh,asinh,cosh,real --soc=ascend950 -j8:通过,13 个 kernel 变体完成编译。 - InferShape UT:8/8 通过。 - API UT:53/53 通过。 - pre-commit 全量检查(含 clang-format、codespell、OAT):通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无,未修改 CMake、license、README/设计文档,也未改变 DISABLE_IN_OPP 配置。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-math!4623 | 1 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 27 天前 | ||
| 1 个月前 |