[nvidia-GB200] gb200测试报告3 nccl-test all_reduce_perf 测试分析【第一手资料】

目录

一、测试基本配置

二、硬件与集群一致性

三、核心性能指标分析

1. 带宽趋势分析

2. out-of-place vs in-place 模式对比

3. 正确性验证

四、整体性能评估

总结


这是一个基于 18 台服务器(test1test18等)、共 72 块 NVIDIA GB200 GPU 的集群通信性能测试,主要用于验证多节点 GPU 间的集合通信(all-reduce)效率。以下是详细分析:

一、测试基本配置

  • 测试类型all-reduce(分布式训练中最常用的集合通信操作,用于多 GPU 间数据求和并广播结果)。
  • 参与规模
    • 18 台服务器(主机名test1-test18等),每台服务器含 4 块 NVIDIA GB200 GPU,总计 72 块 GPU(对应Rank 0-Rank 71)。
  • 测试参数
    • 数据大小:33554432B(32MB)到17179869184B(16GB),按 2 倍递增(step: 2(factor))。
    • 数据类型:float(32 位浮点数)。
    • 操作:sum(求和归约)。
    • 迭代次数:预热 5 次(warmup iters: 5),实际测试 20 次(iters: 20),确保结果稳定。
    • 模式:同时测试out-of-place(数据在新内存区域操作)和in-place(数据在原内存区域操作)两种模式。

二、硬件与集群一致性

  • GPU 型号:所有节点均使用NVIDIA GB200(高端数据中心级 GPU,支持高带宽 NVLink 和 PCIe 5.0,适合大规模集群通信)。
  • 硬件配置一致性:每台服务器的 GPU 总线地址(如0008:01:000009:01:00等)完全一致,说明 18 台服务器的硬件配置标准化,无个体差异,避免了因硬件不一致导致的性能波动。

三、核心性能指标分析

测试结果的核心指标是带宽algbw算法带宽、busbw总线带宽),反映 GPU 间数据传输效率,单位为GB/s(越高越好)。

#
#                                                              out-of-place                       in-place          
#       size         count      type   redop    root     time   algbw   busbw #wrong     time   algbw   busbw #wrong
#        (B)    (elements)                               (us)  (GB/s)  (GB/s)            (us)  (GB/s)  (GB/s)       
    33554432       8388608     float     sum      -1    226.8  147.98  291.84      0    221.6  151.40  298.59      0
    67108864      16777216     float     sum      -1    337.8  198.69  391.86      0    340.3  197.20  388.93      0
   134217728      33554432     float     sum      -1    559.5  239.89  473.11      0    564.3  237.85  469.10      0
   268435456      67108864     float     sum      -1    928.7  289.04  570.05      0    925.2  290.14  572.21      0
   536870912     134217728     float     sum      -1   1732.6  309.87  611.13      0   1715.3  312.98  617.27      0
  1073741824     268435456     float     sum      -1   2945.2  364.57  719.01      0   2931.3  366.30  722.42      0
  2147483648     536870912     float     sum      -1   5315.8  403.98  796.74      0   5277.8  406.89  802.47      0
  4294967296    1073741824     float     sum      -1    10115  424.60  837.41      0    10128  424.05  836.32      0
  8589934592    2147483648     float     sum      -1    19353  443.86  875.39      0    19417  442.38  872.47      0
 17179869184    4294967296     float     sum      -1    37369  459.74  906.71      0    37415  459.17  905.59      0
# Out of bounds values : 0 OK
# Avg bus bandwidth    : 647.931 
数据大小(B)数据量(MB)out-of-place 算法带宽(GB/s)out-of-place 总线带宽(GB/s)in-place 算法带宽(GB/s)in-place 总线带宽(GB/s)
3355443232147.98291.84151.40298.59
6710886464198.69391.86197.20388.93
134217728128239.89473.11237.85469.10
268435456256289.04570.05290.14572.21
536870912512309.87611.13312.98617.27
10737418241024364.57719.01366.30722.42
21474836482048403.98796.74406.89802.47
42949672964096424.60837.41424.05836.32
85899345928192443.86875.39442.38872.47
1717986918416384459.74906.71459.17905.59
1. 带宽趋势分析
  • 随数据量增长,带宽逐步提升:从 32MB 时的~148GB/s 提升到 16GB 时的~460GB/s,总线带宽从~292GB/s 提升到~907GB/s。
    • 原因:NCCL 对小数据和大数据采用不同通信算法(如小数据用 “直接发送”,大数据用 “环形算法”),大数据量下环形算法的并行性更高,能充分利用集群网络带宽。
  • 16GB 时达到峰值:此时算法带宽稳定在 459GB/s 左右,说明在大规模数据传输中,集群通信效率达到最优。
2. out-of-place vs in-place 模式对比
  • 两种模式的带宽差异极小(如 16GB 时仅差 0.57GB/s),说明 NCCL 在两种内存操作模式下的优化一致性很好,无明显性能损耗。
  • 实际使用中可根据内存需求选择模式(in-place 更省内存,out-of-place 更安全),无需担心性能差异。
3. 正确性验证
  • 所有测试的#wrong(错误数)均为 0,且Out of bounds values: 0 OK,说明 72 块 GPU 间的all-reduce操作结果完全正确,无数据传输错误或计算偏差,集群通信的可靠性得到验证。

四、整体性能评估

  • 平均总线带宽647.931 GB/s,对于 72 块 GPU 的大规模集群来说,这一指标处于较高水平,说明:
    • 集群网络配置(可能为 NVLink 交换机或 RDMA 高速网络)能支撑高带宽通信;
    • NCCL 库针对 GB200 和多节点集群做了充分优化,有效发挥了硬件潜力。
  • GB200 优势体现:GB200 作为新一代数据中心 GPU,其高带宽内存(HBM)和 PCIe 5.0/NVLink 接口为大规模集群通信提供了硬件基础,测试结果验证了其在分布式场景下的性能优势。

总结

本次 NCCL 测试显示,由 18 台服务器、72 块 NVIDIA GB200 组成的集群在all-reduce操作中表现优异:

  • 性能:随数据量增长,带宽逐步提升至 460GB/s,平均总线带宽达 648GB/s,满足大规模分布式训练(如大语言模型、推荐系统)的高通信需求;
  • 稳定性:两种内存模式性能一致,无数据错误,集群通信可靠;
  • 硬件适配:GB200 与 NCCL 的兼容性良好,硬件潜力得到充分发挥。

该集群适合部署需要高带宽跨节点通信的分布式 AI 训练或高性能计算任务。

### NVIDIA GB200 NVL72 规格与信息 #### 架构概述 NVIDIA GB200 NVL72 是一款先进的液冷机架解决方案,集成了最新的 Blackwell 系列 GPU 技术。该系统由 36 个 NVIDIA GB200 Grace Blackwell 超级芯片组成,其中包括 72 个基于 NVIDIA Blackwell 的 GPU 和 36 个 NVIDIA Grace CPU[^2]。 #### 连接技术 GB200 NVL72 利用了第五代 NVIDIA NVLink 技术来实现实现高效的互连通信。这种连接方式使得整个系统能够作为一个单一的大规模 GPU 来运作,极大地提升了数据传输速度和处理效率。 #### 性能表现 在 GPT-MOE-1.8T 模型推理测试中,GB200 NVL72 展现出卓越的性能优势。其单卡每秒吞吐量达到了 HGX H100 的 30 倍,这表明了新架构下显著增强的推理能力和更高的性价比[^4]。 #### 配置详情 GB200 NVL72 在一个标准机架内配置了 72 个 GPU 和 18 个双 GB200 计算节点。此外,还有一种配置是在两个独立机架中共部署 72 个 GPU 并配备相同数量的计算节点。这样的设计既满足了大规模并行运算的需求,又兼顾了灵活性和扩展性[^3]。 ```python # Python 示例代码展示如何模拟 GB200 NVL72 中的一个基本计算单元之间的通讯机制 import numpy as np class GPUNode: def __init__(self, id): self.id = id def communicate(self, other_node): print(f"Node {self.id} communicating with Node {other_node.id}") nodes = [GPUNode(i) for i in range(72)] # 创建 72 个 GPU 节点实例 for i in range(len(nodes)): nodes[i].communicate(nodes[(i + 1) % len(nodes)]) # 模拟环形拓扑结构下的相邻节点间通讯 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清风 001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值