搭建10万张H100GPU集群要注意什么? 看完后,剩下的就是怎么搞定40亿美元了

今天聊一个非常硬核,但是对于一般人来说肯定没用的话题,那就是如何搭建一个10万个H100 GPU的集群。先说一下这个文章的内容主要来源于SemiAnalysis的一篇文章。正好有幸有一位是英伟达搭建万卡集群的小伙伴,所以内容提前给他看过,以求尽可能的真实和准确。

搭建一个10万张的H100 GPU集群都需要考虑什么?

首先,我们来做个简单的估算。一个10万卡集群,每年的耗电量大约为1.59太瓦时

按照美国电力的标准费率每千瓦时0.78美元来计算,每年的用电成本就达到了1.24亿美元。

那么10万卡的H100集群有多大能力呢?为了方便大家理解,我们拿OpenAI的GPT-4做个对比。

GPT-4的训练使用了大约2.15乘以e的25次方 BF16 FLOPS,也就是21.5万亿的ExaFLOPS。在大约2万个A100上进行了90到100天的训练,峰值吞吐量只有6.28 ExaFLOPS。如果我们现在使用10万个H100来代替A100,那么峰值将飙升至198 FP8 或者99 FP16 ExaFLOPS,增加了31.5倍。如果使用FP8,那么一个10万卡H100的集群只需要4天就能训练完GPT-4。

我们都听说过AI的三大基础设施:数据、算法和算力。很多人会以为其中算力的门槛最低,只要有钱有资源,买到足够多的芯片,算力短缺就不是问题 但是事实绝非如此。构建一个超大的算力集群,绝对比一掷千金要复杂得多。

自从GPT-4发布以来,下一代能力更强的大语言模型迟迟憋不出来,其中一个很重要的原因,就是几乎没有组织能够大规模地增加单个模型的计算量。像Gemini Ultra、Nemotron 340B和Llama 3这些、与GPT-4计算量相近甚至更高的模型,也是因为使用了较差的集群架构,导致无法进一步地释放能力。

那么在这些科技巨头搭建10万卡GPU集群的过程中究竟会面临哪些挑战呢?

1、前沿模型扩展挑战和要求、通过内存重建进行故障恢复、机架布局

有一部分人认为,自 GPT-4 发布以来,AI 能力一直停滞不前。这通常是正确的,但这只是因为没有人能够大幅增加专用于单个模型的计算量。已发布的每个模型都大致达到 GPT-4 级别(训练计算约 2e25 FLOP)。这是因为专用于这些模型的训练计算也大致处于同一水平。以 Google 的 Gemini Ultra、Nvidia Nemotron 340B 和 Meta LLAMA 3 405B 为例,与 GPT-4 相比,专用的 FLOPS 数量级相似甚至更高,但使用了较差的架构,导致这些模型无法解锁新功能。

来源:SemiAnalysis

尽管 OpenAI 获得了更多的计算资源,但他们主要将其用于推出更小、训练过度、更便宜的推理模型,例如 GPT-4 Turbo 和 GPT-4o。OpenAI 承认他们最近才刚刚开始训练下一层模型

人  工智能的下一步显然是使用大量视频、图像、音频和文本来训练一个具有数万亿参数的多模态转换器。目前还没有人完成过这项任务,但人们正在争先恐后地开展活动。

多个大型人工智能实验室(包括但不限于 OpenAI/Microsoft、xAI 和 Meta)正在竞相构建拥有超过 100,000 个 GPU 的 GPU 集群。这些单独的训练集群仅服务器资本支出就超过 40 亿美元,但它们也受到数据中心容量和功率不足的严重限制,因为 GPU 通常需要共置以实现高速芯片到芯片联网。一个 100,000 个 GPU 集群将需要 >150MW 的数据中心容量,一年消耗 1.59 太瓦时,按 0.078 美元/千瓦时的标准费率计算,成本为 1.239 亿美元。

来源:SemiAnalysis、美国能源信息署

我们深入研究大型 AI 训练集群及其周围的基础设施。构建这些集群比仅仅投入资金要复杂得多。由于各种组件(尤其是网络)的故障率很高,因此实现高利用率更加困难。我们还将介绍这些系统的电源挑战、可靠性、检查点、网络拓扑选项、并行方案、机架布局和总物料清单。以前,我们介绍了 Nvidia 的 InfiniBand 问题,导致一些公司选择 Spectrum-X 以太网而不是 InfiniBand。我们还将介绍 Spectrum-X 的主要缺陷,超大规模企业选择 Broadcom 的 Tomahawk 5。

为了说明 100,000 GPU 集群可以提供多少计算量,OpenAI 为 GPT-4 训练的 BF16 FLOPS 约为 2.15e25 FLOP(2150 万 ExaFLOP),在约 20,000 个 A100 上训练了 90 到 100 天。该集群的峰值吞吐量仅为 6.28 BF16 ExaFLOP/秒。在 100k H100 集群上,这个数字将飙升至 198/99 FP8/FP16 ExaFLOP/秒。与 20k A100 集群相比,峰值理论 AI 训练 FLOP 增加了 31.5 倍。

来源:Nvidia、SemiAnalysis

在 H100 上,AI 实验室在万亿参数训练运行中实现了高达 35% 的 FP8 模型 FLOP 利用率 (MFU) 和 40% 的 FP16 MFU。总结一下,MFU 是在考虑开销和各种瓶颈(例如功率限制、通信不稳定、重新计算、落后者和低效内核)后,衡量峰值潜在 FLOPS 的有效吞吐量和利用率的指标。一个 100,000 个 H100 集群使用 FP8 训练 GPT-4 只需四天时间。在 100k H100 集群训练运行 100 天后,您可以实现约 6e26(6 亿 ExaFLOP)的有效 FP8 模型 FLOP。请注意,硬件可靠性差会显著降低 MFU。

2、电力挑战

100k H100 集群所需的关键 IT 功率约为 150MW。虽然 GPU 本身只有 700W,但在每个 H100 服务器中,CPU、网络接口卡 (NIC)、电源单元 (PSU) 为每个 GPU 额外占用约 575W。除了 H100 服务器之外,AI 集群还需要存储服务器、网络交换机、CPU 节点、光收发器和许多其他项目的集合,这些项目加起来占 IT 功率的另外约 10%。考虑到约 150MW 的功率,最大的国家实验室超级计算 El Capitan仅需要 30MW 的关键 IT 功率。与工业相比,政府超级计算机相形见绌。

一个主要的电力挑战是,目前没有一座数据中心建筑能够容纳新的约 150MW 部署。当人们提到 10 万 GPU 集群时,他们通常指的是一个园区,而不是建筑。电力需求如此迫切,由于没有其他选择,X.AI 甚至将田纳西州孟菲斯的一家旧工厂改造成数据中心。

这些集群通过光收发器联网,而光收发器的价格与覆盖范围成正比。范围更广的“单模”DR 和 FR 收发器可以可靠地传输约 500 米到约 2 公里的信号,但成本是“多模”SR 和 AOC 收发器的 2.5 倍,后者仅支持最多约 50 米的覆盖范围。此外,校园级“相干”800G 收发器也存在,覆盖范围超过 2 公里,但价格要高出 10 倍以上。

小型 H100 集群通常仅通过一层或两层交换机,以 400G 的速度将每个 GPU 连接到其他每个 GPU,仅使用多模收发器。对于大型 GPU 集群,必须添加更多交换层,并且光学器件变得非常昂贵。此类集群的网络拓扑将根据首选供应商、当前和未来的工作负载以及资本支出而有很大差异。

每栋建筑通常包含一个或多个计算单元,这些单元通过更便宜的铜缆或多模收发器连接。然后,它们将使用更长距离的收发器在计算“岛”之间进行互连。下图显示了 4 个计算岛,岛内带宽较高,但岛外带宽较低。155MW 很难在一个地方交付,但我们正在跟踪超过 15 个 Microsoft、Meta、Google、Amazon、Bytedance、X.AI、Oracle 等数据中心的建设,这些数据中心将为 AI 服务器和网络提供如此大的空间。

来源:SemiAnalysis

不同的客户会根据数据传输基础设施、成本、可维护性、功率、当前和未来的工作负载等多种因素选择不同的网络拓扑。因此,一些客户选择基于 Broadcom Tomahawk 5 的交换机其他客户则坚持使用 Infiniband,而其他客户则选择 NVIDIA Spectrum-X。我们将在下面深入探讨原因。

3、并行性

为了理解网络设计、拓扑、可靠性问题和检查点策略,我们首先快速回顾一下万亿参数训练中使用的 3 种不同类型的并行性 - 数据并行性、张量并行性和管道并行性。

数据并行是最简单的并行形式,其中每个 GPU 都保存模型权重的完整副本,每个 GPU(等级)接收不同的数据子集。这种类型的并行具有最低级别的通信,因为每个 GPU 之间只需要对梯度进行求和(全部减少)。不幸的是,只有当每个 GPU 都有足够的内存来存储整个模型权重、激活、优化器状态时,数据并行才有效。对于像 GPT-4 这样的 1.8 万亿参数模型,仅模型权重和优化器状态就需要多达 10.8 TB 的内存进行训练。

来源:ColossalAI

为了克服这些内存限制,我们使用了张量并行。在张量并行中,每个层的工作和模型权重通常分布在隐藏维度上的多个 GPU 上。中间工作通过跨设备的全归约多次在自注意力、前馈网络和每个层的层规范化之间进行交换。这需要高带宽,尤其是需要非常低的延迟。实际上,域中的每个 GPU 都与其他每个 GPU 在每一层上协同工作,就好像它们是一个巨大的 GPU 一样。张量并行将每个 GPU 使用的总内存减少了张量并行等级的数量。例如,目前在 NVLink 上使用 8 个张量并行等级是很常见的,因此这将使每个 GPU 使用的内存减少 8。

来源:加速 Pytorch 训练

另一种克服每个 GPU 没有足够的内存来容纳模型权重和优化器状态的挑战的技术是使用流水线并行。使用流水线并行,每个 GPU 仅具有层的一个子集,并且仅对该层进行计算并将输出传递给下一个 GPU。此技术通过流水线并行等级数减少了所需的内存量。流水线并行具有很大的通信量要求,但不像张量并行那么大。

来源:ColossalAI

为了最大化模型 FLOP 利用率 (MFU),公司通常会将三种并行形式结合起来形成 3D 并行。然后在 H100 服务器内部对 GPU 应用张量并行,然后在同一个 Island 内的节点之间使用管道并行。由于数据并行的通信量最低,而 Island 之间的联网速度较慢,因此 Island 之间使用数据并行。

来源:Optimus-CC

FSDP 之类的整体技术在小型 GPU 世界规模下对于非常大的模型很常见,但它不起作用。它实际上与流水线并行性不兼容。

4、网络设计注意事项

网络设计时考虑了并行方案。如果每个 GPU 都以最大带宽连接到胖树拓扑中的每个其他 GPU,则成本将非常高昂,因为需要 4 层交换。由于每增加一层网络都需要中间的光学元件,因此光学元件的成本将飙升。

因此,没有人会为大型 GPU 集群部署全胖树架构。相反,他们依靠制造具有全胖树架构的计算岛,同时这些岛之间的带宽较少。有多种方法可以做到这一点,但大多数公司都选择“超额认购”顶层网络。例如,请参阅 Meta 的上一代 GPU 集群架构,最高可达 32,000。总共有 8 个岛,它们之间具有全胖树带宽,然后顶部还有另一层交换层,其超额认购率为 7:1。与岛内的网络相比,岛之间的网络速度要慢 7 倍。

来源:Meta

GPU 部署有多个网络、前端、后端和扩展 (NVLink)。在某些情况下,您将在每个网络上运行不同的并行方案。NVLink 网络可能是唯一一个速度足够快以满足张量并行带宽要求的网络。您的后端通常可以轻松处理大多数其他类型的并行,但如果存在超额订阅,则通常只能使用数据并行。

此外,有些人甚至没有顶层带宽超额订购的孤岛。相反,他们从后端网络转移到前端网络,进行岛间通信。  

5、混合 InfiniBand 和前端以太网结构

一家大型公司使用前端以太网在多个 InfiniBand 岛上进行培训。这是因为前端网络的成本要低得多,并且可以利用建筑物和区域路由之间的现有数据中心园区网络。

来源:SemiAnalysis

不幸的是,由于 MoE 等稀疏技术的存在,模型大小增长得更快,前端网络需要处理的通信量也会增加。必须仔细优化这种权衡,否则您最终会拥有两个成本相同的网络,因为前端网络带宽最终会增长得如此之大,以至于可能与后端网络带宽相匹配。

值得注意的是,谷歌专门使用前端网络进行多 TPU pod 训练运行。他们的“计算结构”称为 ICI,最多只能扩展到 8960 个芯片,并采用昂贵的 800G 光学器件和光路交换机连接每个 64 个 TPU 水冷机架。因此,谷歌必须通过使 TPU 前端网络比大多数 GPU 前端网络更强大来弥补这一不足。

来源:MLSys24 上的 Google

当在训练期间使用前端网络时,必须执行岛屿之间的网络拓扑感知全局全归约。首先,每个 pod 或岛屿将在 pod InfiniBand 或 ICI 网络内执行本地归约散射,这将使每个 GPU/TPU 拥有梯度子部分的总和。接下来,将使用前端以太网网络执行每个主机等级之间的跨 pod 全归约,然后最终每个 pod 将执行 pod 级全收集。

前端网络还负责加载数据。随着我们转向多模态图像和视频训练数据,前端网络需求将呈指​​数级增长。在这种情况下,前端网络带宽将在加载大型视频文件和执行所有归约之间争夺。此外,如果存储网络流量不规则,您的落后者问题就会增加,这会导致您的整个全归约速度变慢并且无法进行预测建模。

替代方案是使用 4 层 InfiniBand 网络,超额订阅率为 7:1,包含 4 个 pod,每个 pod 有 24,576 个 H100,并采用无阻塞 3 层系统。与使用前端网络相比,这为未来的带宽增加提供了更大的灵活性,因为从 A 栋楼的一个交换机向 B 栋楼的另一个交换机添加更多光纤收发器要容易得多,而对集群的每个机箱进行完整的前端网络 NIC 升级以将其从 100G 升级到 200G 等则要容易得多。

来源:SemiAnalysis

这样可以创建更稳定的网络模式,因为您的前端网络可以专注于加载数据和检查点,而您的后端网络可以专注于 GPU 之间的通信。这也有助于解决落后者问题。但不幸的是,由于需要所有额外的交换机和收发器,4 层 Infiniband 网络非常昂贵。

6、轨道优化与机架中部优化

为了提高可维护性并增加铜网络(<3 米)和多模网络(<50 米)的使用,一些客户选择放弃 NVIDIA 推荐的导轨优化设计,而是选择采用机架中间设计。

来源:Nvidia

轨道优化是一种让每台 H100 服务器连接到 8 个不同的叶交换机(而不是全部连接到同一个机架交换机中间)的技术,这样每个 GPU 只需 1 个交换机跳转即可与更远的 GPU 通信。这可以提高现实世界中所有集体的性能。所有集体通信在混合专家 (MoE) 专家并行性中被大量使用。

来源:克鲁索

导轨优化设计的缺点是,您必须连接到距离不同的不同叶交换机,而不是连接到靠近服务器中所有 8 个 GPU 的机架中间交换机。当交换机可以放在同一个机架中时,可以使用无源直连电缆 (DAC) 和有源电缆 (AEC),但在导轨优化设计中,交换机不一定位于同一个机架中,必须使用光纤。此外,叶到主干的距离可能大于 50 米,因此必须使用单模光纤收发器。

通过使用非轨道优化设计,您可以用廉价的直接连接铜线替换连接 GPU 和叶交换机的 98,304 个光收发器,从而使您的 GPU 结构中有 25-33% 为铜线。从下面的机架图中可以看出,现在叶交换机位于机架中间,允许每个 GPU 使用 DAC 铜线,而不是每个 GPU 到叶交换机的连接都向上连接到电缆托盘,然后横向穿过 9 个机架连接到专用的轨道优化叶交换机机架。

无轨优化的机架中部 来源:SemiAnalysis

与光纤相比,DAC 铜缆运行温度更低、耗电更少且更便宜。由于 DAC 电缆运行温度更低、耗电更少且更可靠,因此可以减少抖动(网络链路间歇性中断)和故障,这是所有使用光纤的高速互连的主要问题。使用 DAC 铜缆时,Quantum-2 IB 主干交换机的功耗为 747 瓦。使用多模光纤收发器时,功耗增加到 1,500 瓦。

轨道优化行尾 来源:SemiAnalysis

此外,对于数据中心技术人员来说,轨道优化设计的初始布线极其耗时,因为每条链路的末端距离可达 50 米,而且不在同一机架上。相比之下,机架中间设计中,您的叶交换机与连接到叶交换机的所有 GPU 位于同一机架中。在机架中间设计中,您甚至可以在集成工厂测试计算节点到叶交换机的链路,因为它们都在同一个机架内。

来源:SemiAnalysis

7、可靠性和恢复

由于当前前沿训练技术的同步特性,可靠性是这些巨型集群最重要的运营问题之一。最常见的可靠性问题是 GPU HBM ECC 错误、GPU 驱动程序卡住、光收发器故障、NIC 过热等。节点不断出现故障或出现错误。

为了将故障恢复的平均时间保持在较低水平并继续进行训练,数据中心必须在现场保留热备用节点和冷备用组件。发生故障时,最好不要停止整个训练运行,而是换上已经运行的备用节点并继续训练。这些服务器的大部分停机时间只是对节点进行电源循环/重新启动,并解决出现的任何问题。

不过,简单的重启并不能解决所有问题,在许多情况下,它需要数据中心技术人员进行物理诊断和更换设备。在最好的情况下,数据中心技术人员需要几个小时才能修复损坏的 GPU 服务器,但在许多情况下,可能需要几天时间才能将损坏的节点重新投入训练运行。损坏的节点和备用热节点是 GPU,尽管理论上可以提供 FLOPS,但这些 GPU 并未积极地为模型做出贡献。

在训练模型时,需要频繁将模型检查点设置到 CPU 内存或 NAND SSD 上,以防发生 HBM ECC 等错误。发生错误时,您必须从较慢的内存层重新加载模型和优化器的权重并重新开始训练。可以使用容错训练技术(例如Oobleck)来提供用户级应用程序驱动方法来处理 GPU 和网络故障。

不幸的是,频繁的检查点和容错训练技术会损害系统的整体 MFU。集群需要不断暂停以将其当前权重保存到持久内存或 CPU 内存中。此外,当您从检查点重新加载时,通常每 100 次迭代只保存一次。这意味着您最多只能损失 99 步有用的工作。在 100k 集群上,如果每次迭代花费 2 秒,则第 99 次迭代失败会让您损失多达 229 个 GPU 天的工作量。

故障恢复的另一种方法是让备用节点通过后端结构从其他 GPU 进行 RDMA 复制。由于后端 GPU 结构大约为 400Gbps,并且每个 GPU 有 80GB HBM 内存,因此复制权重大约需要约 1.6 秒。使用这种方法,您最多只会损失 1 步(因为更多 GPU HBM 将拥有最新的权重副本),因此这只需要 2.3 GPU 天的计算量 + 另外 1.85 GPU 天的 RDMA 从其他 GPU HBM 内存复制权重。

大多数领先的人工智能实验室都已实施了这一技术,但许多较小的公司仍然坚持使用繁重、缓慢、低效的技术,即对所有故障从检查点重新启动,因为这种技术过于简单。通过内存重建实现故障恢复可以为大规模训练运行的 MFU 增加几个百分点。

来源:Meta

最常见的问题之一是 Infiniband/RoCE 链路故障。即使每个 NIC 到叶交换机链路的平均故障时间为 5 年,由于收发器数量众多,在全新、正常运行的集群上,第一次作业故障只需 26.28 分钟。如果不通过内存重建进行故障恢复,由于光学故障,在 100,000 个 GPU 集群中重新启动训练运行所花费的时间将比推进模型所花费的时间更多。

来源:SemiAnalysis

由于每个 GPU 都直接连接到 ConnectX-7 NIC(通过 PCIe 交换机),因此在网络架构级别没有容错能力,因此必须在用户训练代码中处理故障,这直接增加了代码库的复杂性。这是 NVIDIA 和 AMD 当前 GPU 网络结构面临的主要挑战之一,即使一个 NIC 发生故障,该 GPU 也没有其他路径与其他 GPU 通信。由于当前 LLM 在节点内使用张量并行的方式,即使一个 NIC、一个收发器或一个 GPU 发生故障,整个服务器也会被视为停机。

我们正在开展大量工作,以使网络可重新配置,并减少节点的脆弱性。这项工作至关重要,因为现状意味着,只要有 1 个 GPU 故障或 1 个光学故障,整个 GB200 NVL72 就会瘫痪。价值数百万美元的 72 GPU 机架瘫痪比价值数十万美元的 8 GPU 服务器灾难性更大。

Nvidia 已经注意到了这个重大问题,并增加了一个专门的引擎来提高可靠性、可用性和可服务性 (RAS)。我们认为 RAS 引擎会分析芯片级数据,例如温度、恢复的 ECC 重试次数、时钟速度、电压,以预测芯片何时可能发生故障并提醒数据中心技术人员。这将使他们能够进行主动维护,例如使用更高的风扇速度配置文件来保持可靠性,在稍后的维护窗口中让服务器停止服务以进行进一步的物理检查。此外,在开始训练工作之前,每个芯片的 RAS 引擎将执行全面的自检,例如运行已知结果的矩阵乘法来检测静默数据损坏 (SDC)。

8、Cedar Fever-7 网络模块

一些客户(例如微软/Openai)正在进行的另一项成本优化是在每台服务器上使用 Cedar Fever-7 网络模块,而不是使用 8 个 PCIe 外形尺寸的 ConnectX-7 网卡。使用 Cedar Fever 模块的主要好处之一是,它只允许使用 4 个 OSFP 笼,而不是 8 个 OSFP 笼,从而允许在计算节点端(而不仅仅是交换机端)使用双端口 2x400G 收发器。这将连接到叶交换机的收发器数量从每个 H100 节点 8 个收发器减少到 4 个收发器。将 GPU 连接到叶交换机的计算节点端收发器总数从 98,304 减少到 49,152。

来源:Nvidia

由于 GPU 到叶交换机的链路被减半,这也有助于估计首次作业故障时间。我们估计,每条双端口 2x400G 链路的平均故障时间为 4 年(而单端口 400G 链路的平均故障时间为 5 年),这将使首次作业故障的估计时间缩短至 42.05 分钟,这比没有 Cedar-7 模块的 26.28 分钟要好得多。

来源:ServeTheHome

8、英伟达Spectrum-X

NVIDIA目前正在部署一个使用 NVIDIA Spectrum-X 以太网的 100k H100 集群,并将于今年年底投入运营

参考来源:(2023 年 5 月 28 日    Nvidia 的 InfiniBand 问题 – Spectrum-X AI Fabric、Tomahawk-5、Jericho-3AI、Quantum-2       迪伦·帕特尔)

去年,我们介绍了 Spectrum-X 在大型网络中相对于 InfiniBand 的多种优势。除了性能和可靠性优势之外,Spectrum-X 还具有巨大的成本优势。Spectrum-X 以太网的优势在于,每个 SN5600 交换机都有 128 个 400G 端口,而 InfiniBand NDR Quantum-2 交换机只有 64 个 400G 端口。请注意,Broadcom 的 Tomahawk 5 交换机 ASIC 也支持 128 个 400G 端口,这使得当前一代 InfiniBand 处于很大的劣势。

完全互连的 100k 集群可以是 3 层,而不是 4 层。使用 4 层而不是 3 层意味着需要 1.33 倍的收发器。由于 Quantum-2 交换机的基数较低,100k 集群上完全互连的 GPU 的最大数量限制为 65,536 个 H100。下一代 InfiniBand 交换机 Quantum-X800 通过拥有 144 个 800G 端口解决了这个问题,但从数字“144”可以看出,这是为与 NVL72 和 NVL36 系统一起使用而设计的,预计不会在 B200 或 B100 集群中使用太多。尽管使用 Spectrum-X 不需要 4 个层级可以节省成本,但不幸的缺点是您仍然需要从 Nvidia LinkX 产品线购买价格昂贵的收发器,因为其他收发器可能无法工作或未经 Nvidia 验证。

Spectrum-X 相对于其他供应商的主要优势在于,Spectrum-X 得到了 NVIDIA 库(例如 NCCL 和 Jensen)的一流支持,将您推向分配队列,成为其新产品线的首批客户之一,而使用 Tomahawk 5 芯片,您需要大量的内部工程工作来使用 NCCL 优化您的网络,以实现最大吞吐量。

来源:SemiAnalysis

使用以太网而不是 InfiniBand 作为 GPU 结构的一个不幸缺点是以太网目前不支持网络缩减中的 SHARP。网络缩减的工作原理是让网络交换机运行这些计算,从而对每个 GPU 进行求和。SHARP 的理论网络带宽增加是 2 倍,因为它将每个 GPU 必须执行的发送和写入次数减少了 2 倍。

来源:Nvidia

Spectrum-X 的另一个缺点是,对于第一代 400G Spectrum-X,Nvidia 使用 Bluefield3 而不是 ConnectX-7 作为临时解决方案。但对于未来几代产品,我们预计 ConnectX-8 可以与 800G Spectrum-X 完美配合。对于超大规模量产,Bluefield-3 和 ConnectX-7 卡之间的价格差异约为 300 美元 ASP,另一个缺点是该卡比 ConnectX-7 多耗电 50 瓦。因此,对于每个节点,需要额外 400W 的功率,从而降低整个训练服务器的“每皮焦耳智能”。与具有完全相同网络架构的 Broadcom Tomahawk 5 部署相比,您放置 Spectrum X 的数据中心现在需要额外的 5MW 才能部署 100,000 个 GPU。

9、Broadcom Tomahawk 5

为了避免支付巨额的 Nvidia 税,许多客户都在部署基于 Broadcom Tomahawk 5 的交换机。每台基于 Tomahawk 5 的交换机都具有与 Spectrum-X SN5600 交换机相同的端口数量,即 128 个 400G 端口,如果您的公司拥有优秀的网络工程师,则可以实现类似的性能。此外,您可以从世界上任何供应商处购买任何通用收发器和铜缆,然后进行混合搭配。

大多数客户都直接与 ODM 合作,例如与 Celestica 等 ODM 合作,使用基于 Broadcom 的交换机 ASIC,与 Innolight 和 Eoptolink 等公司合作,使用收发器。根据交换机成本和通用收发器成本,Tomahawk 5 比 Nvidia InfiniBand 便宜得多,与 Nvidia Spectrum-X 相比也更便宜。

不幸的缺点是,您需要拥有足够的工程能力来修补和优化 Tomahawk 5 的 NCCL 通信集合。开箱即用的 NCCL 通信集合仅针对 Nvidia Spectrum-X 和 Nvidia InfiniBand 进行了优化。好消息是,如果您有 40 亿美元用于 100k 集群,那么您就有足够的工程能力来修补 NCCL 并编写优化。当然,软件很难,而且 Nvidia 始终处于前沿,但一般来说,我们希望每个超大规模企业都能进行这些优化并放弃 InfiniBand。

来源:SemiAnalysis

10、总结

最后我们总结一下,搭建一个10万个H100 GPU的集群总资本支出大约为40亿美元。

可以有以下四种方式:

1、采用4层InfiniBand网络,包含32768个GPU集群,轨道优化,7:1收敛比

2、采用3层Spectrum X网络,包含32768个GPU集群,轨道优化,7:1收敛比

3、采用3层InfiniBand网络,包含24576个GPU集群,非轨道优化,用于前端网络的集群间连接

4、3层Broadcom Tomahawk 5以太网网络,包含32768个GPU集群,轨道优化,7:1收敛比

可以看到方案1比其他方案贵了1.3到1.6倍,方案2虽然提供了更大的集群、更高的集群间带宽和相似的成本,但是需要更多的电力,方案3则会严重降低并行方案的灵活性。而基于博通Broadcom Tomahawk 5的32k集群,搭配7:1的收敛比,是最具成本效益的选项。

这也是多家公司选择构建类似网络的原因。现在大家应该基本了解如何搭建一个10万H100的集群了。

剩下的就是怎么搞定40亿美元了!

### 构建H100 1024节点集群网络拓扑 对于构建一个由1024个H100 GPU组成的高性能计算(HPC)集群而言,其设计需考虑多方面因素来确保高效能运算。这类集群通常采用层次化的互连结构,以满足不同层面的数据交换需求。 #### 层次化互联模型 在一个典型的大型GPU集群配置中,最底层是由单个机柜内的若干台服务器通过NVLink技术直接相连形成的小规模子网;这些子网再经由InfiniBand或其他形式的高速网络连接起来构成更大范围内的分布式系统[^1]。具体到拥有1024个节点的情况: - **内部链接**:每台配备有8张H100显卡的服务器内部利用NVIDIA NVSwitch实现全带宽互连,使得同一主机上的所有GPU能够快速共享数据。 - **外部扩展**:跨服务器间的通讯依赖于InfiniBand EDR/HDR/FDR等标准协议提供的低延迟、高吞吐量特性完成。整个集群可能被划分为多个Pods(例如每个包含64或更多节点),各Pod之间也存在相应的上联链路用于全局同步操作。 #### 实际部署考量 考虑到物理空间布局以及散热等问题,在实际搭建过程中往往还会涉及到更复杂的规划。比如按照功能分区布置硬件资源,或是引入液冷方案辅助降温等等措施。此外,针对特定应用场景优化后的定制版固件也可能成为提升整体性能表现的关键要素之一[^3]。 ```mermaid graph TD; A[H100 Cluster Topology] --> B{Pod Level}; B --> C[Server Internal]; C --> D[NVSwitch Interconnect (Per Server)]; C --> E[GPU-to-GPU via NVLink]; B --> F[Inter-Pod Communication]; F --> G[Infiniband Network]; ``` 此Mermaid图表展示了上述描述中的基本概念,其中包含了从单个服务器内部直到跨越不同Pod之间的通信路径。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

zipeng111111

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

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

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

打赏作者

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

抵扣说明:

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

余额充值