| Files | Last commit | Last update |
|---|---|---|
fix(bessel_i1e): 补齐 Ascend 950 运行时 shape 和输出描述校验 Co-authored-by: Bright0313<liwenbo84@huawei.com> # message auto-generated for no-merge-commit merge: !6883 merge codex/besseli1e-output-format-guard into master fix(bessel_i1e): 补齐 Ascend 950 运行时 shape 和输出描述校验 Created-by: Bright0313 Commit-by: Bright0313 Merged-by: cann-robot Description: BesselI1e 的 tiling 原先缺少输出 dtype/format 的独立校验,只比较输入输出元素总数,并用总数是否为负判断运行时 shape。例如输入输出均为 [-2,-3] 或 [0,-3] 时,修改前实际 host tiling 返回成功。 本次补齐校验和回归覆盖: - 输出描述非空;输入输出 storage format 均为 ND,输出 dtype 与输入一致。 - 输入输出 storage shape 经既有标量归一化后逐维一致,保留 []/[1] 存储表达的兼容行为。 - 运行时 storage shape 每一维必须非负。编译期 -1/[-2] 由 GE 解析后再进入 tiling,合法空 Tensor 继续成功返回。 - tiling UT 覆盖六种负维度组合,并新增三 dtype×10 个分核/UB 边界,验证核区间连续、无重叠且完整覆盖输出。 - 动态 GEIR 样例检查输出 ND,允许合法空结果没有数据指针;同一张 -1/[-2] 图覆盖空 Tensor、标量、rank8 以及 shape 回切。 变更仅涉及 arch35 tiling、对应 UT 和动态 GEIR 样例三个文件,计算 kernel、公式和系数不变。arch22 shim 复用相同 tiling;本轮设备验证针对 Ascend 950,未进行 A2/A3 设备验证。GEIR/TF 已被图推导修正或未传入接口的 CSV 输出条件,不作为算子拒绝证据。 验证: - 前轮独立实际 host tiling 复现五种负维度漏拦截,修复后 24 条探针均符合预期;TTK kernel compile-only 已验证 9 条输出描述负例及合法对照。 - 本轮 83 条实际 host 探针均符合预期,含 30 个切分边界、12 类非法 dtype、9 种输入输出 dtype 配对及独立输入/输出非 ND 见证。 - 既有 tiling UT 前轮 14/14;本轮仅运行新增边界 UT(函数内 30 组)通过。CANN ABI=0 独立编译,包含 -Werror。 - Ascend 950 实机同图动态 GEIR 样例:-1 图 5/5、[-2] 图 9/9,检查 shape、dtype、ND 和数值。 - 本轮新增三方精度(Promote + cross_check/L1 + TF GPU):kernel-new 30/30,geir-new 30/30,dynamic-new 12/12,tf-new 42/42。kernel 30 条输入/输出越界哨兵检查均为 OK,OK;本轮未跑性能。 - 变更文件 pre-commit(含 OAT)和 git diff --check 通过。 测试使用任务独立安装目录;未替换共享安装包。compile-only/host 校验不冒充设备精度或性能验收。 See merge request: cann/ops-math!6883 | 9 days ago | |
fix(bessel_i1e): CannbotHarness 扫描问题整改(README/UT重构/示例修复/GEIR动态图) Co-authored-by: Bright0313<liwenbo84@huawei.com> # message auto-generated for no-merge-commit merge: !6248 merge fix/besseli1e-readme-bf16-labels into master fix(bessel_i1e): CannbotHarness 扫描问题整改(README/UT重构/示例修复/GEIR动态图) Created-by: Bright0313 Commit-by: Bright0313 Merged-by: cann-robot Description: ## 变更说明 针对 CannbotHarness 多轮 static-st-review / full 扫描问题的完整整改,共改 8 个文件: > **proto.h 保持不改**:与 canndev 原型( ops/built-in/op_proto/inc/elewise_calculation_ops.h 的 TensorType({FloatingDataType, DT_BF16}))保持一致——导师裁定 proto.h 尽量不改。原扫描 ROUTE.02/1 P1(proto 宽声明隐含 DT_DOUBLE)按此裁定不修,fp64 由 def/tiling 层拒绝,与 canndev 内置算子宽声明口径一致。 ### 1. README 按模板对齐(DOC.01 系列、DOC.02/1、ST-GEIR-002、DOC.07/1、DEMO.01/3、FR-07) - 调用说明:表头「调用样例」→「样例代码」、调用方式「图模式调用」→「GE图模式」,新增动态构图样例行 - 功能说明公式变量与参数表建立映射(DOC.02/1):公式改为 y_i = e^{-|x_i|}·I_1(x_i) 并显式说明 x/y 与参数表对应关系 - 产品支持表下补支持来源说明与 BF16 产品级差异 - 约束说明补:动态 shape 与动态 rank(-1 与 -2)、0 维标量与空 Tensor、特殊值输出语义(NaN→NaN、±Inf→0、±0→0) - 约束说明补调用方式条目:不写「仅支持」(算子另经框架插件支持 TensorFlow 图模式调用),表述为「支持 GE 图模式调用,不提供 aclnn 算子接口;TensorFlow 图模式经框架插件适配调用,见下方「第三方框架兼容性」」 - 第三方框架兼容性章节:对标 TensorFlow 的 tf.math.bessel_i1e,已交付框架插件适配(framework/bessel_i1e_tf_plugin.cpp);补 TensorFlow 调用指引与环境前提(FR-07:安装 TF-Ascend 适配层 npu_device + 宿主 npu_supported_ops.json 声明) ### 2. UT 重构为 faker 框架(ut-model-divergence 系列) 原 tests/ut/ 独立标量模型 UT 的 ComputeTiling 为虚构模型。按仓内 faker 框架惯例重构:test_bessel_i1e_infershape.cpp(13 用例)+ test_bessel_i1e_tiling_arch35.cpp(13 用例,期望值断言+失败路径),删除旧三件套。 ### 3. 交付样例修复(DEMO.02/1、DEMO.03/1×2、DEMO.04/1、ut-asset-fidelity/2、reviewer 观察、FR-04) examples/test_geir_bessel_i1e.cpp: - 参考实现头注释改写;补 A&S 9.7.1 渐近展开分支(|x|≥20) - max_abs 改按用例统计;WriteDataToFile 补 fwrite/fclose 检查;caller 检查返回值 - FP16/BF16 期望值改用量化后输入;VerifyOutput 以 shape/dtype 门控失败早退 - 补 <cstdio>/<ctime>/<limits> - RunGraph 每图连跑三次取末次输出(GE 静态图输出张量 lag=2,探针实验定位) - NaN 输出逃逸判定修复(std::isnan(actual) || 前置捕获) examples/arch35/test_geir_bessel_i1e_dynamic.cpp: - **渐近分支第 4 系数修正(FR-04)**:0.1441650391 → 14175.0/98304(A&S 9.7.1 精确分数),注释补 μ=4 代入推导与符号说明,截断误差声明改为实测值 ~6.0e-4 ### 4. GEIR 动态图示例(STRUCT-KERNEL-DYN-SHAPE) 新增 examples/arch35/test_geir_bessel_i1e_dynamic.cpp:-1/-2 双场景,dynamic_execute 模式,含 sameNan/bothZero 否证链判定;main 检查 GEFinalize 返回值 ## 验证 - README 过冻结版校验器 STATUS PASSED - pre-commit 全钩子通过 - 静态示例 3 dtype × 8 case 全 PASS;动态示例 -1 3/3 + -2 4/4 全过 - UT 经 CI 26 用例全 PASS > 配套归档仓(golden/测试用例/报告)变更见 opencann/operator-artifacts#201 See merge request: cann/ops-math!6248 | 21 days ago |
| Files | Last commit | Last update |
|---|---|---|
| 9 days ago | ||
| 21 days ago |