专栏名称: 企业存储技术
企业存储、服务器、SSD、灾备等领域技术分享,交流 | @唐僧_huangliang (新浪微博 )
目录
相关文章推荐
51好读  ›  专栏  ›  企业存储技术

MLPerf Llama大模型推理测试:一款GPU独战NVIDIA群雄

企业存储技术  · 公众号  ·  · 2024-12-29 12:03

正文

目录

- ML Commons MLPerf 基准测试: Llama-2-70b

- 8x GPU MI300X H100-SXM 旗鼓相当

- GPU 线性扩展评估、 B100 单卡表现优异

- Tensor 并行多卡 NVLINK vs. PCIe 效率

- 选型参考:显存带宽是 Token/s 输出唯一决定因素吗?

- 硬件参数、卡间互连与软件发挥

ML Commons MLPerf 基准测试: Llama-2-70b

最近看到国外网站讨论 NVIDIA AMD 数据中心 GPU 的实际性能,我也想给大家分享点测试对比信息——来自第三方联盟组织 ML Commons 推出的 MLPerf Inference: Datacenter 基准测试。

ML Commons有点像AI行业的spec.org。 上图为组织的发起人成员,我看到除了 Intel AMD NVIDIA 等国外巨头之外,也包含有国内的公司阿里巴巴、华为、浪潮、宁畅、 OPPO 。显然,大家应该都是不希望在业内公认的基准测试中掉队,特别是 AI 这个如今火热的领域。

上图是更多成员,我又看到了 H3C 、联想,以及几大服务器 ODM 厂商。 包含的成员覆盖全面,通常推出的测试程序标准就比较公平 ,网站上公布的测试结果用来 横向对比的参考价值也比较大

本次解读 MLPerf BenchMark 中的项目,是使用 Llama-2-70b 大语言模型进行的推理测试。如下图:在最新的 v4.1 版本已公布结果中,只有除了各种型号的 NVIDIA GPU 之外,只有一款 AMD Instinct MI300X 。严格地说,在较早的 v4.0 测试中出现了 Intel Gaudi 2 的身影,但其性能水平应该与最新的 Gaudi 3 有些差距。所以本文不想引入更多分支剧情,专注于当前的 MLPerf Inference: Datacenter v4.1

本文测试数据引用自 https://mlcommons.org/benchmarks/inference-datacenter ,上面只是部分截图。

与大模型推理测试结果直接相关的,就是 GPU 的型号和数量。除此之外,我们还能看到更多信息,比如使用的服务器型号、 CPU ,以及软件平台环境等。参考上面截图,实际上 NVIDIA GPU Llama-2-70b 测试中基本都是用 CUDA+TensorRT ;而 AMD 则是 ROCm+PyTorch+vLLM PYTorch 的流行度不用我说了吧, TensorRT 可以理解为 NVIDIA 进一步加速的框架; vLLM 如今的评价也是挺高的。

上图中的测试结果处,可以看到 llama2-70b- 99 llama2-70b- 99.9 两栏,而它们之间的 Tokens/s 数值又完全相同。我觉得这是一个有点容易让人混淆之处,具体区别指的什么呢?

参考上面图表, Llama2 测试中的 99% 99.9% 似乎指的是 FP32 所占的比重?但事实上 推理计算通常不需要这么高精度的模型——另外载入显存的数据量也太大了 。下表只是个简单的参考, KV Cache 部分与上下文长度相关,就不展开讨论了。

70b 模型推理

模型占用显存

KV Cache…

8bit

70GB


16bit

140GB


32bit

280GB


MLPerf Llama-2-70b 推理测试实际上是用的 FP8 量化模型 ,下文中有我发现的证据。

MLPerf Llama-2-70b 推理测试结果中还分为 Offline Server 两项,参考介绍如下:

Server LoadGen 在启动时会在单个查询中将所有样本发送到被测系统( SUT )。

Offline 一旦被测系统( SUT )完成上一个查询, Loadgen 就会发送下一个查询。

可以理解为 Server 是模拟服务器在响应查询请求,而 Offline 则是离线生成最大的压力,应该能把 GPU 跑得更满一点吧。

8x GPU AMD MI300X NVIDIA H100-SXM 旗鼓相当

首先我特别挑选出 8x GPU (单机 8 卡)的测试结果,对于 相同 GPU 型号和数量的多个测试结果,挑成绩最高的进行对比 。另外对于 70b 这种尺寸的模型和数据中心 GPU 配置,单节点服务器就能容纳全部推理数据到显存,多节点的结果参考意义不大(类似于只是跑个多副本)。

SXM/OAM GPU 模组的比较中, 8 AMD MI300X Token/s 测试数据与 8 NVIDIA H100-SXM-80GB 相当接近; 8 H200-SXM-141GB 则表现最好,还要领先 40% 左右。

与上面的 3 GPU 相比, 8 H100-NVL-94GB 4 组双卡 NVLINK )、 H100-PCIe-80GB L40S-48GB 的性能差距依次都比较大。其原因我在下文中会具体分析。

注意: Dell XE9680 服务器其实也是双 CPU 配置( 2 40 核), 8x SXM GPU 的平台基本上都要服务器 2 Socket 插满吧。

仅以上图表为例, 不同测试平台 MLPerf Llama-2-70b 推理测试的结果影响不算太大,但还是有一些。同样是 8 MI300X GPU Token/s 性能从低到高的 3 款服务器 CPU 分别为 Xeon 8460Y+ EPYC 9374F EPYC Turin (最新的 9005 系列,由于是 preview 结果没有写 CPU 核数),它们最大 差距达到 10% 左右

上图引用自 AMD 10 10 日发布会上的资料,我在《 AMD EPYC 9005 (Zen 5&5c) 服务器CPU架构解读 》曾经引用过一部分,今天再看下 GPU 相关的。

之前 AMD 官宣这个 MI300X 能达到 H100 最多 1.3 倍的性能,我个人猜测会不会统一使用 PyTorch 测试的?当然我并不了解更多的细节信息,所以只是一个猜测。

至于 H200 AMD 之前是拿 MI325X 来进行对比的。

Instinct MI325X GPU 是在 2024 Q4 正式出货的,也许我们在下个季度能看到它出现在 MLPerf 的榜单中?

GPU 线性扩展评估、 B100 单卡表现优异

下面我将列出完整的测试图表,除了 8 GPU 之外,还有那些“单卡”、“ 4 卡”的,其中包括有 NVIDIA GH200 Grace Hopper Superchip 以及 NVIDIA B200-SXM-180GB

从这里我们可以评估GPU的线性扩展效果。比如 8个MI300X推理Token确实达到了单GPU的8







请到「今天看啥」查看全文