MLCommons Inference 项目提交指南深度解析
2026-02-04 05:25:38作者:何将鹤
前言
MLCommons Inference 是一个致力于推动机器学习推理性能基准测试的开源项目。作为技术专家,我将为大家详细解读该项目的提交规则和注意事项,帮助开发者更好地理解和参与这一重要的基准测试。
硬件要求详解
基础硬件要求
MLCommons Inference 项目对硬件平台持开放态度,从树莓派这样的嵌入式设备到高端推理服务器都可以参与基准测试。这种包容性设计使得各类硬件平台都能展示其推理性能。
数据中心类别的特殊要求
对于数据中心类别的"封闭"提交,有以下特殊要求:
- ECC内存:必须使用支持错误检查和纠正(ECC)的内存,这对数据中心环境的数据完整性至关重要
- 网络能力:需要满足特定的网络连接要求,这些要求会随版本更新而变化
功耗测试的特殊设备
如果提交功耗测试结果,必须使用经过SPEC Power认证的功率分析仪。这些专业设备能精确测量系统在不同负载下的功耗表现。
提交类别与要求
封闭类别(Closed Division)要求
-
性能与精度要求:
- 必须运行所有要求的场景(根据边缘/数据中心类别而定)
- 精度必须在基准模型的99%或99.9%范围内(具体取决于任务要求)
-
模型权重限制:
- 不允许修改模型权重,量化处理除外
- 违反此限制将导致提交只能归类为开放类别
参考模型与实现
- 参考模型多为FP32精度
- 参考实现仅供指导,不建议直接用于正式提交
- 这些实现未针对性能优化
- 各厂商应根据自身硬件特性开发优化实现
可用类别(Available Category)要求
- 提交系统必须已经可用(可以是部分可用)
- 可以是公开可用或面向客户可用
- 使用的软件必须是正式版或beta版
- 不接受夜间构建版等非稳定版本
基准测试执行指南
测试时间预估
-
数据中心类别:
- 需要运行离线(Offline)和服务器(Server)场景
- 每个场景至少需要10分钟
-
边缘类别:
- 需要运行单流(SingleStream)、多流(MultiStream,仅限ResNet50和RetinaNet)和离线场景
- 每个场景至少需要10分钟
- ResNet50需要额外运行三个合规性测试
-
场景特性:
- 单流、多流和服务器场景使用提前终止机制,通常10分钟左右完成
- 离线场景需要处理至少24756个输入查询
- 对于3DUNet、大语言模型等复杂模型,可能耗时数小时
-
开放类别优势:
- 无精度要求
- 无需合规性测试
- 可以只提交单个场景结果
- 模型选择更自由(但需在指定数据集上验证精度)
-
功耗测试额外要求:
- 需要额外运行范围模式以确定峰值电流使用
- 这会显著增加总测试时间
- 可通过特定机制将范围运行缩短至5分钟
提交有效性验证
自动检查工具
项目提供了提交检查器(Submission Checker),用于验证提交是否符合基本要求。这个工具会检查:
- 文件结构完整性
- 必填字段存在性
- 基本格式合规性
人工审查要点
即使通过了自动检查,提交仍需接受人工审查,重点包括:
- 系统描述文件的合理性
- 功耗测试相关文件的详细内容
- 功率设置
- 分析仪表格
- README文件的完整性和可复现性
- 数据中心封闭提交的特殊要求符合性
版本4.0的重要变更
-
新增基准模型:
- 数据中心类别新增Mixtral-8x7B模型
- 边缘类别保持不变
-
功耗测试:
- 代码层面无变化
- 原有流程和要求保持不变
专业建议
-
提前规划:
- 校准文档需在截止日期前一周提交
- 复杂模型测试可能需要数天时间
-
合规性测试:
- 预留足够时间进行多次合规性测试
- 特别是ResNet50需要三次合规性测试
-
功耗测试准备:
- 提前获取SPEC PTDaemon访问权限
- 准备好经认证的功率分析仪
-
性能优化:
- 参考实现仅作指导
- 应根据目标硬件特性深度优化实现
通过遵循这些指南和建议,开发者可以更高效地参与MLCommons Inference基准测试,准确展示其硬件和软件解决方案的推理性能。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0228
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0149
uni-appA cross-platform framework using Vue.jsJavaScript010
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook04
项目优选
收起
暂无描述
Dockerfile
780
5.1 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
890
2.05 K
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
471
471
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
707
1.41 K
deepin linux kernel
C
32
16
Ascend Extension for PyTorch
Python
761
972
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
2.27 K
679
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.11 K
1.15 K
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
272
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
2.15 K
228