对齐生态算子开源精度标准(opbase/docs/zh/ops_precision_standard/experimental_standard.md §2.1/§2.2),将 saxpy、axpy_ex、sgemv 三个 arch35 算子的 ST 测试精度验证从旧的 MERE_MARE 模式迁移到新的 MIXED_TOLERANCE 模式。
opbase/docs/zh/ops_precision_standard/experimental_standard.md
MERE_MARE
MIXED_TOLERANCE
核心公式:
|actual - golden| ≤ atol + rtol × |golden|
|actual - golden| ≤ max(fixedLimit, 32 × ULP_at_|golden|)
matched_ratio ≥ 0.99
旧 helper 函数 getMereThreshold/getMareMultiplier 仍保留向后兼容,但新代码应使用 applyMixedTolerance。
getMereThreshold
getMareMultiplier
applyMixedTolerance
cann 开发者
switch(p.xType)
使用 applyMixedTolerance(cfg, dtype, goldenPtr, count) 一行替换原先的 MERE_MARE 设置块。dtype 通过 applyMixedTolerance 内部自动查表填充 rtol/atol/fixedLimit/mantissaBits/emin。
applyMixedTolerance(cfg, dtype, goldenPtr, count)
Background(背景信息)
对齐生态算子开源精度标准(
opbase/docs/zh/ops_precision_standard/experimental_standard.md§2.1/§2.2),将 saxpy、axpy_ex、sgemv 三个 arch35 算子的 ST 测试精度验证从旧的MERE_MARE模式迁移到新的MIXED_TOLERANCE模式。核心公式:
|actual - golden| ≤ atol + rtol × |golden||actual - golden| ≤ max(fixedLimit, 32 × ULP_at_|golden|)matched_ratio ≥ 0.99旧 helper 函数
getMereThreshold/getMareMultiplier仍保留向后兼容,但新代码应使用applyMixedTolerance。Origin(信息来源)
cann 开发者
Benefit / Necessity (价值/作用)
switch(p.xType)块)Design(设计方案)
使用
applyMixedTolerance(cfg, dtype, goldenPtr, count)一行替换原先的MERE_MARE设置块。dtype 通过applyMixedTolerance内部自动查表填充 rtol/atol/fixedLimit/mantissaBits/emin。