跳转至

Benchmark

Night-bench 快照

硬件 Ascend 910B1 · 提交 250b2be6447e · 运行日期 2026-09-23T09:32:42+00:00 · 149 个算子,1159 个工作负载 · 本次运行

页面渲染于 2026-10-08 01:43 UTC,数据取自最新快照。

第一阶段现在就是那份验收清单

自 2026-09-23 起,总览页和各家族数据页都只覆盖 oplist150 这份第一阶段验收清单的 149 个算子(docs/reports/R267-data/oplist150.json,150 行,占两行的算子只算一次)—— 对上汇报进度用的就是这份清单。在此之前,这些页面覆盖的是 docs/tasks/OPS-178.md 里 D018 保留下来的 158 个算子。那一天这些计数的变化,是口径变了,不是性能退了(也不是性能进了):这次调整没有重测任何一个比值,一个算子从一页挪到另一页,它的任何数字都不会变。

清单之外的算子(Attention 也在其中)只要快照为它发布了比值,就在第二阶段页上。

运行环境

timer torch_npu_profiler_device_kernel_interval_union
platform Linux-5.10.0-136.12.0.86.r1526_92.hce2.aarch64-aarch64-with-glibc2.34
python 3.9.9
provider tilelang
headline_regime graph
harness_commit c04ff24867ce4b8e59ef426e67e0518d807b9bff
backend_commit 250b2be6447e8c2699940a176103929956b99daa

本次运行未发布:image, driver, cuda, torch, tilelang。

测量方法

  • 同一个进程、同一批输入。 一个算子的所有实现都在同一个进程里、用同一批张量计时,先正序再逆序各跑一遍 —— 这样漂移不会只落在最后跑的那个实现上。
  • Ascend nightly 每个实现的采样设置为 WARMUP=10 / REPEATS=30,报告测量样本的中位数,并在每次迭代之间驱逐 192 MiB L2。
  • 编译和 workspace 准备的时间不计入。
  • 被比较的是 device 时间 —— 一次调用在 device 上执行它各个 kernel 的区间并集,通过 torch_npu.profiler 采集。取不到 device 活动的运行会失败,而不是退回另一个时钟。每个工作负载另外保留一份 host 挂钟读数作端到端参考,但比值用的是 device 时间:这台机器上 host 与 device 之差是每次测量、两侧各约 40–50 µs 的常数,用 host 计时会把便宜工作负载的比值推向 1.0(我们输时遮丑、赢时削峰)。
  • MLIR 对手在子进程测量,以父子进程共同 case 标尺的中位数之比校正;每轮同时测量 case 与固定 global 标尺。仅进入 eager 池;候选旁标明实际 N,N<5 或样本数未知的候选保留 provisional 标注,不计入达标数。

覆盖情况

  • 149 个算子里有 146 个是在完全相同的工作负载上与一个真实对照实现比较的。分母是本页展示的目标集合;阶段一未接入的算子保留空表。未评级的行没有实测比较,或只有 eager 参考实现。
  • 每个算子对的是一个候选池。 主测量口径下符合准入条件的最快候选成为基准。整行保留所有候选及其各自耗时和来源档位。
  • 149 个算子里有 20 个的候选池里存在 tier-1 开源库基线 —— 也就是从第三方 Ascend 算子库的源码编出来的 kernel,且只有拿到「该库自己编出来的 kernel 确实跑了」的证据才被接纳。分母同上。这是两个口径里更严的那一个,凡是关于「第三方算子库」的说法都应该引这个数。
  • 24/149 个算子的已发布候选池中实测包含 tilelang-ascend(tilelang_ref 档位);与上面的开源候选覆盖数可能重叠。
  • 剩下 149 里的 102 个,候选池里只有厂商库实现 —— CANN 内置算子,或 torch_npu 自己的分发。这些行仍然是在完全相同的工作负载上与一个真实实现比较,但在那里赢了不等于赢过第三方算子库。每一行的来源徽章会说清它到底是哪一档。
  • 所有表格里都没出现的:本次运行有 0 个工作负载报错、3 个被跳过。

这些数字是怎么来的

数据页

页面 算子数 工作负载数
Linear Attention 与 SSM 2 10
GEMM、MoE 与量化 20 251
Elementwise 与归约 82 484
Norm、Conv、Pool 及其它 45 414