目录

KernelRing - 昇腾 NPU 算子优化与验证资料

诸事开心(zhushikaixin)参加 CCF 开源创新大赛 MindSpore 赛道的项目资料仓库。

本仓库保留项目的优化方法说明和最小算子示例;正式参赛代码与固定候选包以提交分支中的 teams/zhushikaixin/code/yylx_current/ 为准。

方法概览

Benchmark Lite 算子
  -> 算子契约:形状、数据类型、布局、容差与状态语义
  -> 算子分簇:基础算子 / 融合归约 / 复杂状态
  -> 受约束实现与静态检查
  -> 正确性门控
  -> 重复性能测量与剖析
  -> 同一候选包的 13 算子完整回归

优化以不改变算子语义为前提,重点处理冗余中间物化、主存与片上缓冲区往返、布局变换和缓存压力。每次核心实现变更后,均需重新执行完整 13 算子验证;单算子结果只用于定位和筛选,不作为整包结论。

项目全量记录

当前 NPU Benchmark Lite 全量记录显示:

  • 13/13 算子通过正确性检查,容差为 rtol=1e-2atol=1e-2
  • 累计加权分为 1273.75,平均加速比为 2.2242
  • 10/13 算子不低于基线;代表性结果包括 moe_topk_softmax 8.65x、causal_conv1d 3.82x、add_rmsnorm_cast 3.21x、decode_mla 2.66x。

上述数字来自同一候选包的全量记录,不拼接不同尝试的单项最优值。最终比赛结果以官方环境复现为准。

性能结果

13算子相对基线的性能提升

图中虚线为 1.0x 基线。全部数据来自固定候选包的同一次 13 算子验证:预热 10 次、迭代 100 次、重复 3 轮并取中位数;所有算子均通过 rtol=1e-2atol=1e-2 正确性门控。图表用于展示该候选包的测量记录,不替代官方环境的最终复现结论。

使用方法

本仓库提供方法资料与工具。固定候选包位于队伍提交分支,可按以下流程执行完整复现:

git clone --branch submission/zhushikaixin-1273-75 \
  https://www.gitlink.org.cn/xyy011/ccf-akg.git ccf-akg
cd ccf-akg

# 在已安装 CANN、torch_npu、Triton-Ascend 的昇腾环境中执行
source <CANN与torch_npu环境脚本>
export AKG_AGENTS_EXAMPLES_DIR=<akg_agents/examples/kernel_related的绝对路径>
export AKG_BENCH_LITE_DIR=<akg_agents/benchmark/akg_kernels_bench_lite的绝对路径>

python teams/zhushikaixin/agent_framework/tools/run_existing_bench_lite_submission.py \
  --team-dir teams/zhushikaixin/code/yylx_current \
  --backend npu --warmup 10 --iterations 100 --num-trials 3 \
  --rtol 1e-2 --atol 1e-2 --timeout 300 \
  --out-json artifacts/全量验证结果.json

命令以 failed_cases=0 结束时表示 13 个算子全部通过当前 runner 的正确性检查。生成的 JSON 包含逐算子的延迟、加速比、稳定性和汇总分数;核心实现改动后,必须重新执行该完整流程。

目录

路径 内容
framework/ 受约束候选构造、静态检查、复核、剖析反馈与结果归档工具
framework/prompts/ 候选构造、性能反馈和独立复核模板
framework/SKILL.md 方法约束、准入门控与已知算子经验
docs/方法与验证说明.md 优化流程、验证规则、结果边界与复现要求
docs/runbook.md 框架运行、记录与复现规范
examples/gelu_example.py 最小 ModelNew 示例

合规边界

  • 仅面向官方 Benchmark Lite 算子和公开 NPU 运行时接口。
  • 不使用 CPU 回退、参考结果捕获、runner 拦截或隐藏状态。
  • 以同一候选包的完整 13 算子回归作为包级性能与正确性结论的准入条件。
关于
262.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号