基准测试体系概览 —— TPC、SPEC、TOP500 与 MLPerf
前八章把硬件讲完了——但实际选型时,”H100 算力 1979 TFLOPS”这种 datasheet 数字不能直接拿来对比 Llama 3 训练性能。基准测试(benchmark)是把硬件性能落到同一把尺上的工具。第九章讲基准。
为什么需要基准测试
服务器场景里,”快”是个多维概念:
1 | |
不同 workload 看不同维度。”用谁的数据当尺“决定了选型结果——这就是为什么 30 多年来工业界形成了一系列第三方公认的基准组织。
两大主流基准体系
graph TB ROOT[服务器基准测试两大体系] ROOT --> TPC[TPC
事务处理性能委员会
1988 成立] ROOT --> SPEC[SPEC
标准性能评估机构
1988 成立] TPC --> TPCC[TPC-C
OLTP 经典] TPC --> TPCH[TPC-H
决策支持/分析] TPC --> TPCDS[TPC-DS
大数据分析] TPC --> TPCx[TPCx-AI / TPCx-HS
AI 与 Hadoop] SPEC --> SPECCPU[SPEC CPU
处理器整数/浮点] SPEC --> SPECjbb[SPEC jbb
Java 中间件] SPEC --> SPECpower[SPECpower
能效] SPEC --> SPECstorage[SPEC SFS
NAS 文件存储] SPEC --> SPECMLPerf[SPECaccel /
SPEChpc]
TPC(Transaction Processing Performance Council):1988 年成立,主战场是数据库 / OLTP / 数据分析。代表测试:TPC-C(OLTP)、TPC-H(决策支持)、TPC-DS(大数据)。tpmC 这个国内常听到的”每分钟事务数”就是 TPC-C 的指标。
SPEC(Standard Performance Evaluation Corporation):同样 1988 年成立,覆盖更广——CPU、Java 中间件、Web 服务、能效、存储、HPC、ML。SPEC CPU2017 是当前 CPU 性能 datasheet 的事实标尺。
两家都是非营利第三方,结果必须在官网发布才算数——这是第三方背书的核心价值。
按 workload 分类的基准
整理一张实战中真正会用到的”benchmark 全景”:
| 领域 | 经典基准 | 现代主流 | 测什么 |
|---|---|---|---|
| CPU 整数 / 浮点 | SPEC CPU2006 | SPEC CPU2017 | 单核 / 多核计算 |
| CPU 能效 | — | SPECpower_ssj2008 | 性能 / 瓦 |
| 数据库 OLTP | TPC-C(tpmC) | HammerDB / sysbench | 每分钟事务数 |
| 数据库分析 | TPC-H | TPC-DS | 复杂查询响应时间 |
| Java 中间件 | SPECjbb2005 | SPECjbb2015 | Java 服务端吞吐 |
| Web 服务器 | SPECweb2005 | (已退役) | HTTP QPS |
| HPC 峰值 | HPL / Linpack | HPL(仍是 TOP500 标尺) | FP64 峰值 |
| HPC 真实 | — | HPCG | 内存 / 网络综合 |
| 存储块设备 | iozone | fio | IOPS / 带宽 / 延迟 |
| NAS 文件 | SPECsfs | SPECstorage SFS 2020 | 文件操作并发 |
| 网络带宽 | iperf | iperf3 / qperf | TCP / UDP 吞吐 |
| RDMA 网络 | — | ib_write_bw / perftest | InfiniBand / RoCE |
| 集合通信 | — | NCCL-tests | AllReduce / AllGather busbw |
| AI 训练 / 推理 | — | MLPerf | 端到端 训练 / 推理 |
| AI GEMM | — | cuBLASMatmulBench / nvbandwidth | 算力 / 带宽底层 |
注意:TPC-W(Web)、SPEC Web2005 等测试在云时代基本退役——因为现实业务的 Web 服务太复杂,单一 benchmark 失去意义。
基准结果”怎么读”
基准报告里常见的几个指标维度:
1 | |
只看绝对值容易被销售带偏——真正成熟的采购方看 $/TPM、性能/瓦、扩展性曲线。
一份典型 benchmark 报告应有什么
1 | |
TPC 报告强制披露完整 SUT + 价格——这是为什么 TPC-C 报告动辄上百页 PDF。SPEC 也要求公开 config,但价格披露不是强制。
测试结果”为什么会差很多”
同一颗 CPU、同一种 benchmark,不同厂商提交结果可能差 1.5-3×:
1 | |
这些”调优”在销售文档里通常一笔带过,但实际上决定了结果的可比性。所以读 benchmark 报告时,配置详情比绝对数字更重要。
TOP500:HPC 的”奥运会”
每年 6 月 / 11 月发布两次的 TOP500,是世界上最大公开 HPC 系统排行榜:
- 排名标尺:HPL Linpack(FP64 峰值 LU 分解)
- 1993 年开始,已经 30 多年
- 中国曾长期占榜单一半以上份额,2020 年后受出口管制影响数量下降
1 | |
待补充:TOP500 最新 2026 年榜单数据。
但Linpack 早就被 HPCG 补充——后者更看重真实工作负载(内存、网络、不规则访存)。Jack Dongarra(TOP500 创始人之一)2014 年就推动 HPCG 排行榜:HPCG 性能通常是 Linpack 性能的 1-3%。
MLPerf:AI 时代的新基准
MLCommons 维护,2018 年起步,AI 算力的”事实标准”:
graph LR ML[MLCommons MLPerf] ML --> T[Training
训练] ML --> I[Inference
推理] ML --> H[HPC
科学计算] ML --> S[Storage
存储吞吐] ML --> P[Power
能效] ML --> C[Client / Mobile / Tiny
端侧]
每轮提交分 Closed(严格规则、可比性强)和 Open(自由优化、展示创新)。NVIDIA / Google / Intel / AMD / Huawei 等都按轮次提交。
07-Benchmark 目录里 NVIDIA SA 视角的视图:
NVIDIA 通常以 DGX/HGX/GB200 系统提交 MLPerf;详细工程报告在 NVIDIA blog 与 GitHub repo
nvidia/MLPerf*,复现工件包含 NeMo / Megatron / TensorRT-LLM 等。
后面的 05-AI 基准测试 专门展开。
专用 / 厂家 benchmark
除两大公开体系外,还有大量”专用基准”:
1 | |
这些不一定上 TPC / SPEC 官网,但在自家生态里是实际选型依据。
实战中”benchmark 怎么用”
数据中心采购或集群验收时,benchmark 一般分三阶段:
graph TB L1[1. 节点级
HPL / SPEC CPU / fio / iperf
验证单机硬件] L2[2. 机柜 / Pod 级
NCCL-tests / SHARP / RDMA
验证互联与路由] L3[3. 应用级
NeMo / Megatron / vLLM / 真实业务
验证端到端] L1 --> L2 --> L3
NVIDIA SA 内部就是用这三层做集群验收(详见 05-AI 基准测试 )。每一层都不能跳——单机过了不代表集群过;集群通了不代表大模型训练 MFU 就达标。
一些避坑
1 | |
第九章会展开什么
| 篇 | 内容 |
|---|---|
| 02 | CPU & 数据库 benchmark:SPEC CPU2017、TPC-C、SPECjbb |
| 03 | HPC benchmark:HPL、HPCG、TOP500 实战 |
| 04 | 存储与网络 benchmark:fio、iperf、ib_write_bw、SPECsfs |
| 05 | AI benchmark:MLPerf、cuBLAS、nvbandwidth、NCCL-tests、NeMo burn-in |
| 06 | 服务器认证:CCC、CE、FCC、ISO9001、NVIDIA-Certified、能效之星 |
| 07 | 选型与第九章小结 |
小结
- 基准测试是把”datasheet 数字”翻译成”业务性能”的桥
- 两大体系 TPC(事务)+ SPEC(计算/能效);HPC 看 TOP500 / HPL;AI 看 MLPerf
- 报告必看 SUT 配置 + 软件栈 + 调优参数,不能只看绝对值
- 集群验收三阶段:节点级 → 机柜级 → 应用级
- 避坑:看曲线、看 P99、看持续值、要可复现
下一篇展开 CPU & 数据库基准——SPEC CPU 怎么读、tpmC 怎么算、HammerDB 怎么用。