核心内容
AI发展现状
● GPT-4问世后,AI能力发展出现暂时停滞,主要受限于单一模型训练算力。
● 近期发布的多个大型模型(如Gemini Ultra、Nemotron 340B、LLAMA 3 405B)性能与GPT-4相当,未能突破性能瓶颈。
● AI发展的下一个方向是训练包含数万亿参数的多模态Transformer模型。
超大规模AI训练集群
● 多家大型AI实验室正在竞相构建超过10万GPU的超级集群。
● 这些集群单个就需要超过40亿美元的硬件投资,年电费可达1.239亿美元。
● 10万H100 GPU集群的理论AI训练FLOPS峰值是2万A100集群的31.5倍。
● 在理想条件下,这样的集群仅需4天就能完成相当于GPT-4的FP8训练量。
电力供应挑战
● 10万H100 GPU集群核心IT设备所需电力约为150MW。
● 单个数据中心建筑无法容纳150MW部署,通常分布在单个园区内的多个建筑。
● 电力需求紧迫导致一些公司不得不改造旧工厂作为数据中心。
并行计算策略
● 大规模模型训练通常结合数据并行、张量并行和管道并行。
● 3D并行策略:服务器内GPU间应用张量并行,计算岛内节点间使用管道并行,计算岛间使用数据并行。
网络设计考虑因素
● 需根据并行方案进行网络设计。
● 完整胖树拓扑成本过高,通常在计算岛内部署完整胖树,岛间使用较低带宽连接。
● 顶层网络通常采用"超订阅"策略以平衡性能和成本。
● 前端网络和后端网络的选择需要权衡多种因素,如成本、性能和未来扩展性。
● 导轨优化和机架中部设计
● 导轨优化设计虽能提高GPU间通信性能,但其复杂性、高成本和高能耗成为主要缺点。
● 机架中部设计通过使用DAC铜缆连接,不仅显著降低了成本和能耗,还简化了安装维护过程,提高了系统可靠性。
可靠性和恢复
● 超大规模GPU集群面临严重的可靠性挑战,通过RDMA从其他GPU快速复制权重的先进恢复策略可显著减少计算时间损失。
● 当前GPU网络架构缺乏内置容错机制,单个组件故障可能导致整个系统宕机,这在大规模系统中尤为严重。
● 业界正在开发可重构网络和专门的RAS引擎来提高系统鲁棒性,但频繁的故障恢复操作仍会影响整体性能。
● 未来的发展方向包括改进网络架构、增强故障预测和预防能力,以在保证可靠性的同时优化系统性能。
-----
自GPT-4问世以来,有观点认为AI能力发展停滞。这种看法大体正确,主要是因为目前还没有机构能够大幅增加单一模型的训练算力。近期发布的各种模型性能大多与GPT-4相当(训练算力约为2 x 10^25 FLOP)。以Google的Gemini Ultra、Nvidia的Nemotron 340B和Meta的LLAMA 3 405B为例,尽管它们的计算量与GPT-4相近甚至更高,但由于架构设计不够优化,未能突破性能瓶颈。
虽然OpenAI获得了更多计算资源,但他们主要将其用于训练规模较小、过度优化的、推理成本更低的模型,如GPT-4 Turbo和GPT-4o。OpenAI承认他们最近才开始着手训练下一代大规模模型。
AI发展的下一个明显方向是训练一个包含数万亿参数的多模态Transformer模型,涵盖大量视频、图像、音频和文本数据。目前还没有机构完成这一壮举,但各大AI实验室正在竞相争夺这一领先地位。
包括OpenAI/Microsoft、xAI和Meta在内的多家大型AI实验室正在竞相构建拥有超过10万GPU的超级集群。这些单独的训练集群仅服务器硬件投资就超过40亿美元。由于数据中心容量和电力供应的限制,GPU通常需要集中部署以实现高速芯片间通信。一个10万GPU的集群将需要超过150MW的数据中心供电能力,每年耗电量达1.59太瓦时,按照标准电价0.078美元/千瓦时计算,年电费高达1.239亿美元。
本文,我们将深入探讨大型AI训练集群及其周边基础设施。构建这些集群远比简单地投入资金复杂得多。由于各种组件,特别是网络设备的高故障率,要实现高利用率更具挑战性。我们还将讨论电力供应挑战、系统可靠性、检查点机制、网络拓扑选择、并行策略、机架布局和这些系统的总体物料清单。一年多前,我们讨论了Nvidia的InfiniBand技术问题,导致一些公司选择了Spectrum-X以太网而非InfiniBand。我们还将探讨Spectrum-X的主要缺陷,这促使超大规模计算中心转向选择Broadcom的Tomahawk 5网络芯片。
为了让大家理解10万GPU集群能提供的巨大算力,我们以OpenAI的GPT-4为例。GPT-4的训练总计算量约为2.15e25 BF16 FLOP(2150万亿ExaFLOP),在约2万台A100 GPU上训练了90到100天。那个集群的峰值吞吐量只有6.28 BF16 ExaFLOP/秒。而在10万H100 GPU集群上,这个数字将飙升至198/99 FP8/FP16 ExaFLOP/秒,相比于2万A100集群的理论AI训练FLOPS峰值提升了31.5倍。
在H100上,AI实验室在训练万亿参数模型时,FP8模式下可达到35%的模型FLOPS利用率(MFU),FP16模式下可达40%的MFU。回顾一下,MFU是衡量有效吞吐量与峰值FLOPS利用率的指标,考虑了功耗限制、通信故障、重新计算、延迟和低效内核等瓶颈因素。一个10万H100 GPU集群仅需四天就能完成相当于GPT-4的FP8训练量。如果在这样的集群上持续训练100天,可以实现约6e26(600万亿ExaFLOP)的有效FP8模型计算量。值得注意的是,硬件的低可靠性会显著降低MFU。
电力供应挑战
一个拥有10万H100 GPU的集群核心IT设备所需电力约为150MW。虽然每个GPU本身功耗仅为700W,但在每台H100服务器中,CPU、网卡(NIC)和电源模块(PSU)等其他组件每个GPU还会额外消耗约575W。除H100服务器外,AI集群还需要大量存储服务器、网络交换机、CPU节点、光模块和其他设备,这些设备共同消耗约10%的IT电力。为了理解150MW的电力需求有多大,可以参考美国国家实验室的超级计算机El Capitan,其核心IT设备电力需求仅为30MW。相比之下,政府超级计算机的电力需求远不及工业界AI集群。
目前面临的一个主要电力挑战是,没有单个数据中心建筑能够容纳新的150MW部署。当人们提到10万GPU集群时,通常指的是分布在单个园区内的多个建筑,而非单一建筑。电力需求如此紧迫,以至于X.AI甚至在田纳西州孟菲斯将一座旧工厂改造成数据中心,因为其他选择已经很少。
这些集群通过光模块进行网络连接,光模块的成本与传输距离成正比。长距离的"单模"DR和FR光模块可以可靠地传输约500米到2公里的信号,但其成本是短距离"多模"SR和AOC光模块的2.5倍,而后者仅支持50米以内的传输。此外,还有用于园区级互连的"相干"800G光模块,尽管其价格是普通光模块的10倍以上。
小型H100集群通常通过多模光模块将每个GPU以400G的速度连接到其他GPU,仅需一两层交换机。但对于大型GPU集群,需要增加更多的交换层,光学组件的成本也变得极其昂贵。这样一个集群的网络拓扑结构会根据首选供应商、当前和未来的工作负载以及资本支出(CapEx)而有所不同。
每个建筑通常包含一个或多个通过更便宜的铜缆或多模光模块连接的计算单元(pod)。然后,他们使用更长距离的光模块在计算"岛"之间进行互连。下图显示了4个计算岛,岛内有高带宽连接,而岛外则是低带宽。在一个位置提供155MW的电力是个巨大挑战,但我们追踪了包括微软、Meta、谷歌、亚马逊、字节跳动、X.AI、Oracle等超过15个数据中心的建设项目,这些数据中心将有足够的空间容纳AI服务器和网络设备。
不同的客户根据数据传输基础设施、成本、可维护性、电力供应、当前和未来的工作负载等多种因素选择不同的网络拓扑结构。因此,有些客户选择基于Broadcom Tomahawk 5的交换机,有些坚持使用InfiniBand,而另一些则选择NVIDIA Spectrum-X。我们将在下文深入探讨其中的原因。
并行计算回顾
为了理解网络设计、拓扑结构、可靠性问题和检查点策略,我们先简要回顾一下训练万亿参数模型常用的三种并行计算方式:数据并行、张量并行和管道并行。我们这里有对并行计算的详细解释,包括专家并行。
数据并行(Data Parallelism)是最简单的并行计算形式。在这种模式下,每个GPU都保存模型权重的完整副本,并处理数据的不同子集。这种并行方式的通信量最低,因为只需要在每个GPU之间汇总梯度(all reduce)。然而,数据并行只有在每个GPU有足够的内存来存储整个模型权重、激活值和优化器状态时才能有效使用。对于像GPT-4这样拥有1.8万亿参数的模型,仅模型权重和优化器状态就可能需要高达10.8TB的内存用于训练。
为了克服这些内存限制,研究人员提出了张量并行(Tensor Parallelism)。在张量并行中,每一层的计算和模型权重都分布在多个GPU上,通常是跨隐藏维度分布。在自注意力、前馈网络和层归一化的过程中,中间结果需要在各设备之间多次进行全归约(All-Reduce)交换。这要求高带宽,尤其是非常低的延迟。实际上,同一域内的每个GPU都像一个巨型GPU的一部分,协同完成每一层的计算。张量并行可以根据并行的GPU数量成比例地减少每个GPU的内存使用量。例如,现在常用的8路张量并行(通过NVLink连接)可以将每个GPU的内存使用量减少8倍。
管道并行(Pipeline Parallelism)是另一种解决单GPU内存不足的方法。在管道并行中,每个GPU只处理部分层的计算,并将输出传递给下一个GPU。这种技术可以根据管道并行的GPU数量减少所需的内存。管道并行需要大量的通信,但通信量不如张量并行那么高。
为了最大化模型FLOP利用率(MFU,Model FLOP Utilization),公司通常将这三种并行形式结合起来,形成3D并行。具体做法是:首先在H100服务器内的GPU之间应用张量并行,然后在同一计算岛内的节点之间使用管道并行。由于数据并行的通信量最低,且计算岛之间的网络速度较慢,所以在计算岛之间使用数据并行。
虽然像FSDP(Fully Sharded Data Parallel)这样的技术在小型GPU集群中很常见,但对于超大规模模型来说并不适用,而且实际上与管道并行不兼容。
网络设计考虑因素
网络设计需要根据并行方案进行考虑。如果采用胖树拓扑结构,让每个GPU以最大带宽连接到其他所有GPU,成本将会非常高,因为这需要四层交换。每增加一层网络,都需要额外的光学组件,导致光学成本急剧上升。
因此,对于大型GPU集群,没有人会部署完整的胖树架构。相反,他们通常在计算岛内部署完整的胖树架构,而在这些岛之间使用较低带宽的连接。实现这一目标有多种方法,但大多数公司选择对顶层网络进行"超订阅"。例如,Meta上一代GPU集群架构最多支持3.2万个GPU,分为8个计算岛,岛间具有完整的胖树带宽,但顶层交换层的超订阅比率为7:1。这意味着岛间网络的速度比岛内网络慢7倍。
GPU部署通常包含多个网络:前端网络、后端网络和扩展网络(NVLink)。在某些情况下,不同类型的并行计算会在不同的网络上运行。NVLink网络可能是唯一能够满足张量并行带宽需求的网络。后端网络通常可以轻松处理其他类型的并行计算,但如果存在超订阅,往往只能用于数据并行。
此外,有些设计并没有在顶层网络上进行超订阅,而是从后端网络转到前端网络来实现岛间通信。
这种网络设计策略既能满足高性能计算需求,又能在一定程度上控制成本,是大规模AI训练集群中的常见做法。
混合InfiniBand和前端以太网架构
某大型科技公司在多个InfiniBand计算岛之间采用前端以太网进行训练。这是因为前端网络成本较低,并且可以利用现有的数据中心园区网络进行建筑和区域间路由。
然而,由于MoE等稀疏技术导致模型规模迅速增长,前端网络需要处理的通信量也随之增加。必须仔细权衡这一取舍,否则最终可能会拥有两个成本相当的网络,因为前端网络带宽可能会增长到与后端网络带宽相近的水平。
值得注意的是,谷歌在其多TPU Pod训练中完全使用前端网络。他们的"计算结构"称为ICI,最多可扩展到8960个芯片,使用成本高昂的800G光模块和光学电路交换机连接每个64个TPU水冷机架。因此,谷歌必须通过增强TPU前端网络来弥补大多数GPU前端网络的不足。
在训练过程中使用前端网络时,必须进行拓扑感知的全局全归约(all-reduce)操作。首先,每个pod或计算岛在其内部通过InfiniBand或ICI网络执行本地的reduce-scatter操作,这会让每个GPU/TPU得到梯度的子集之和。接着,在每个主机秩之间通过前端以太网进行跨pod的全归约操作,最后每个pod会执行一次pod级别的all-gather操作。
前端网络还负责加载数据。随着我们逐步转向多模态图像和视频训练数据,前端网络的需求将呈指数增长。在这种情况下,前端网络带宽将需要同时处理加载大型视频文件和执行全归约操作。此外,如果存储网络流量不规律,会导致整个全归约操作变慢并且难以预测,从而加剧尾部延迟问题。
替代方案是采用四层InfiniBand网络,带有7:1的超额订阅比率,每个pod包含24,576个H100,使用非阻塞的三层系统。与升级每个机架中每个集群的前端网络NIC从100G到200G等相比,这种方法更易于在未来增加带宽,因为从A楼的交换机到B楼的另一个交换机添加更多光模块要容易得多。
这种方法可以创建更稳定的网络模式,因为前端网络可以专注于加载数据和检查点,而后端网络则专注于GPU之间的通信。这也有助于减少尾部延迟问题。然而,四层InfiniBand网络由于需要额外的交换机和光模块,成本极高。
导轨优化(Rail Optimized)和机架中部(Middle of Rack)设计
为了提高可维护性并增加铜缆网络(<3米)和多模光纤网络(<50米)的使用,一些客户选择放弃NVIDIA推荐的导轨优化设计,转而采用机架中部设计。
导轨优化是一种让每个H100服务器连接到8个不同叶交换机(而不是全部连接到同一个机架中部交换机)的技术,这样每个GPU可以通过一次交换跳转与更远的GPU通信。这可以提升全到全集体通信的实际性能,全到全集体通信在混合专家(MoE,Mixture of Experts)并行中被广泛使用。
导轨优化设计的缺点是必须连接到不同距离的叶交换机,而不是一个与服务器中所有8个GPU都在近距离的机架中部交换机。当交换机可以放在同一个机架中时,可以使用无源直连铜缆(DAC)和有源铜缆(AEC),但在导轨优化设计中,交换机不一定在同一个机架内,需要使用光纤。此外,叶到主干的距离可能超过50米,迫使使用单模光模块。
使用非导轨优化设计,可以用廉价的直连铜缆替代98304个连接GPU到叶交换机的光模块,从而使得25-33%的GPU网络连接使用铜缆。如下图所示,与其让每个GPU到叶交换机的连接经过电缆槽并横向延伸9个机架到专用的导轨优化叶交换机机架,现在叶交换机位于机架中部,使每个GPU可以使用DAC铜缆。
DAC铜缆运行温度更低,功耗更小,且比光纤便宜得多。由于DAC铜缆运行温度较低、功耗较低且更可靠,这减少了网络连接间歇性中断(flapping)和故障的发生,这是所有使用光纤的高速互连的主要问题。使用DAC铜缆时,Quantum-2 IB主干交换机的功耗为747瓦,而使用多模光模块时,功耗可增加到1500瓦。
此外,导轨优化设计的初始布线对于数据中心技术人员来说极其耗时,因为每条链路的两端相距可达50米,并且不在同一个机架内。而在机架中部设计中,叶交换机与所有连接到它的GPU在同一个机架内。这使得在集成工厂内就可以测试计算节点到叶交换机的链路,因为它们都在同一个机架内。
这种设计不仅简化了安装和维护过程,还能降低成本和能耗,同时提高了系统的可靠性。
可靠性和恢复
对于这些超大规模集群而言,可靠性是最重要的运营考虑因素之一,这主要由于当前前沿训练技术的同步性质。最常见的可靠性问题包括GPU的HBM ECC错误、GPU驱动程序卡住、光模块故障、网卡过热等。节点经常出现故障或错误。
为了缩短故障恢复的平均时间并保持训练的连续性,数据中心必须现场保留热备节点和冷备组件。当发生故障时,最好替换一个已经启动并运行的备用节点,而不是停止整个训练过程。许多服务器的停机时间仅仅是为了重启节点,这通常可以解决出现的问题。
但简单的重启并不能解决所有问题,许多情况下需要数据中心技术人员进行实际的诊断和设备更换。在最理想的情况下,数据中心技术人员修复故障GPU服务器需要数小时,但在许多情况下,将故障节点重新投入训练可能需要数天。故障节点和热备节点是未能积极贡献计算能力的GPU,尽管理论上它们有可用的浮点运算能力。
在模型训练过程中,需要频繁将模型检查点保存到CPU内存或NAND SSD,以防止发生如HBM ECC错误等故障。当错误发生时,必须从较慢的存储层重新加载模型权重和优化器状态并重新开始训练。容错训练技术,如Oobleck,可以提供用户级别的应用驱动方法来处理GPU和网络故障。
不幸的是,频繁的检查点保存和容错训练技术会影响系统的总体模型浮点运算利用率(MFU)。集群需要不断暂停以将当前的权重保存到持久性内存或CPU内存。此外,通常每100次迭代才保存一次检查点。这意味着最多可以损失99次有效的计算步骤。在一个拥有10万GPU的集群中,如果每次迭代需要2秒钟,那么在第99次迭代时发生故障,可能会损失高达229个GPU天的工作量。
另一种故障恢复方法是让备用节点通过RDMA从其他GPU复制权重。由于后端GPU网络的速度大约为400Gbps,每个GPU有80GB的HBM内存,复制权重大约需要1.6秒。使用这种方法,最多只会损失1次迭代(因为更多的GPU HBM将拥有最新的权重副本),所以这只会损失约2.3个GPU天的计算量,再加上1.85个GPU天用于通过RDMA从其他GPU的HBM内存复制权重。
大多数领先的AI实验室已经实施了这种方法,但许多较小的公司仍然因其简单性而坚持使用繁重、缓慢、低效的从检查点重新启动的技术来处理所有故障。在大规模训练中,通过内存重构进行故障恢复可以为MFU增加多个百分点。
最常遇到的问题之一是Infiniband/RoCE链路故障。即使每个网卡到叶交换机链路的平均故障时间为5年,由于大量的光模块,在一个全新的工作集群上,第一次作业故障只需要26.28分钟。如果没有通过内存重构进行故障恢复,在10万GPU集群中,由于光纤故障,花在重新启动训练作业上的时间将超过推进模型的时间。
由于每个GPU都通过PCIe交换机直接连接到ConnectX-7网卡,因此在网络架构层面上没有容错机制,故障必须在用户训练代码中处理,这直接增加了代码库的复杂性。这是当前NVIDIA和AMD的GPU网络架构的主要挑战之一,即使一个网卡故障,那个GPU也没有替代路径与其他GPU通信。由于当前大语言模型(LLM)在节点内使用张量并行方式,如果一个网卡、一个光模块或一个GPU故障,整个服务器就被视为宕机。
业界正在进行大量工作,以使网络可重新配置,并提高节点的鲁棒性。这项工作非常重要,因为现状意味着只要一个GPU或一个光纤故障,整个GB200 NVL72就会宕机。一个价值数百万美元的72 GPU机架宕机比一个价值几十万美元的8 GPU服务器宕机更具灾难性。
NVIDIA已经注意到这个重大问题,并增加了一个专门用于可靠性、可用性和可维护性(RAS)的引擎。我们认为RAS引擎会分析芯片级数据,如温度、恢复的ECC重试次数、时钟速度、电压等,以预测芯片何时可能会故障并通知数据中心技术人员。这将允许他们进行预防性维护,如使用更高的风扇速度配置文件以保持可靠性,或在以后的维护窗口中将服务器下线进行进一步的物理检查。此外,在开始训练作业之前,每个芯片的RAS引擎将进行全面的自检,如运行已知结果的矩阵乘法,以检测静默数据损坏(SDC,Silent Data Corruptions)。
Cedar-7
一些客户如微软和OpenAI实施了另一项成本优化措施,即在每台服务器上使用Cedar Fever-7网络模块,而不是使用8个PCIe规格的ConnectX-7网卡。使用Cedar Fever模块的主要优势之一是只需使用4个OSFP接口,而不是8个,这样可以在计算节点端使用双端口2x400G光模块,而不仅仅是在交换机端。这将H100节点连接到叶交换机的光模块数量从8个减少到4个,总计算节点端连接GPU到叶交换机的光模块数量从98304个减少到49152个。
由于GPU到叶交换机的链路减少了一半,这也有助于延长首次作业故障的预期时间。我们估计每个双端口2x400G链路的平均故障时间为4年(相比单端口400G链路为5年),这将把首次作业故障的预期时间延长至42.05分钟,比没有Cedar-7模块时的26.28分钟要好得多。
NVIDIA Spectrum-X
目前有一个10万H100 GPU集群正在部署,预计将在年底前投入使用,该集群使用的是NVIDIA Spectrum-X以太网。
去年我们讨论了Spectrum-X在大型网络中相对于InfiniBand的各种优势。除了性能和可靠性优势之外,Spectrum-X还有巨大的成本优势。Spectrum-X以太网的每个SN5600交换机有128个400G端口,而InfiniBand NDR Quantum-2交换机只有64个400G端口。值得注意的是,博通的Tomahawk 5交换机芯片也支持128个400G端口,这使得当前代的InfiniBand处于明显劣势。
一个全连接的10万GPU集群可以使用3层架构而不是4层。4层架构相比3层架构需要多1.33倍的光模块。由于Quantum-2交换机的低端口密度,在10万集群上全连接的GPU最大数目被限制为65536个H100。下一代InfiniBand交换机Quantum-X800解决了这个问题,它有144个800G端口,但正如"144"这个数字所表明的,它主要设计用于NVL72和NVL36系统,预计在B200或B100集群中使用较少。虽然使用Spectrum-X可以节省不需要使用4层的成本,但不幸的是,你仍需要购买Nvidia LinkX产品线中的高价光模块,因为其他光模块可能无法工作或未通过Nvidia的验证。
Spectrum-X相对于其他供应商的主要优势在于,它得到了NVIDIA库如NCCL的一流支持,并且NVIDIA会优先将你推到新产品线的首批客户名单中。而对于Tomahawk 5芯片,你需要大量的内部工程工作来优化自己的网络以达到NCCL的最大吞吐量。
使用以太网而非InfiniBand作为GPU网络的一大缺点是,以太网目前不支持SHARP(在网络内归约)。在网络内归约通过让网络交换机运行计算来执行每个GPU的求和。SHARP理论上的网络带宽增加是2倍,因为它减少了每个GPU需要进行的发送和写入次数。
Spectrum-X的另一个缺点是,第一代400G Spectrum-X中,Nvidia使用Bluefield-3而不是ConnectX-7作为权宜之计。我们预计在未来几代产品中,ConnectX-8能与800G Spectrum-X完美配合。然而,Bluefield-3与ConnectX-7之间的价格差异在超大规模数据中心采购量下约为300美元,另一个缺点是该卡比ConnectX-7多消耗50瓦。因此,每个节点需要额外400瓦的功率,降低了整体训练服务器的"每皮焦尔智能"效率。相比之下,使用相同网络架构的Broadcom Tomahawk 5部署,10万GPU的Spectrum X数据中心需要额外5MW的功率。
Broadcom Tomahawk 5
为了节省高昂的Nvidia成本,许多客户选择部署基于Broadcom Tomahawk 5的交换机。每个Tomahawk 5交换机与Spectrum-X SN5600交换机拥有相同数量的端口,即128个400G端口。如果你的公司拥有优秀的网络工程师,可以实现类似的性能。
此外,你可以从全球任何供应商处购买通用的光模块和铜缆,并进行灵活组合。大多数客户直接与如Celestica等基于Broadcom交换机芯片的ODM厂商合作,同时也与Innolight和Eoptolink等公司合作购买光模块。从交换机成本和通用光模块成本来看,Tomahawk 5比Nvidia InfiniBand和Nvidia Spectrum-X都要便宜。
然而,你需要足够的工程能力来修改和优化NCCL通信库以适应Tomahawk 5。开箱即用时,NCCL通信库仅为Nvidia Spectrum-X和Nvidia InfiniBand优化。好消息是,如果你有40亿美元来建设一个10万GPU的集群,那么你应该有足够的工程能力来修改NCCL并进行优化。
当然,软件开发是复杂的,Nvidia总是处于技术前沿,但通常我们预计每个超大规模数据中心都会进行这些优化并转向使用InfiniBand以外的解决方案。
接下来,我们将讨论四种不同的10万GPU集群网络设计的物料清单、相关的交换机和光模块成本,展示不同网络设计的优势,并提供一个优化以减少光学器件的GPU集群的物理布局。
物料清单
每个10万卡H100集群的总资本支出约为40亿美元,但具体金额会因所选择的网络类型而有所不同。具体来说,可以分为四种:
-
4层InfiniBand网络,包含32768个GPU岛,采用导轨优化设计,带宽过载比为7:1。
-
3层Spectrum X(以太网)网络,包含32,768个GPU岛,采用导轨优化设计,带宽过载比为7:1。
-
3层InfiniBand网络,包含24,576个GPU岛,非导轨优化设计,计算节点内采用前端网络。
-
3层博通Tomahawk 5以太网网络,包含32,768个GPU岛,采用导轨优化设计,带宽过载比为7:1。
不同公司会根据自身需求选择这四种网络拓扑结构之一。经比较,4层InfiniBand网络的成本是其他方案的1.3-1.6倍。这也解释了为什么几乎没有公司会选择大规模InfiniBand网络。虽然InfiniBand可以作为一种选择(如第3种方案所示),但它严重限制了并行方案的灵活性。
Spectrum X方案能提供更大的计算岛和更高的岛间带宽,成本与其他方案相近,但其缺点是比最佳方案耗电更多。
基于博通Tomahawk 5的32k岛方案(带宽过载比为7:1)是最具成本效益的选择,这也是多家公司正在构建类似网络的原因。由于无需支付"英伟达税",该方案在单位投入成本(TCO)下可提供最高的网络性能。而且,它比Spectrum X更早进入市场,已被Meta等头部公司采用。
机房布局(Floor Plan)
优化机架布局和机房平面图至关重要,这样可以最大限度地使用铜缆和多模光纤,从而降低成本。下图展示了采用导轨优化设计的Spectrum-X/Tomahawk 5的32k岛平面图。值得注意的是,某些行中的叶交换机并未部署在同一排。这种设计是为了增加50米范围内多模光纤的使用率。如果将所有多模光模块都放在行的末端,中间的脊交换机显然就超出了50米的距离限制。
以上为4节点的机架设计,符合微软标准数据中心的物理布局。
在这个微软的开发集群中,每个机架支持高达40kW的电力密度,可容纳四个H100节点。该基础设施采用了独特的布线方案:机架内交换机之间主要使用铜缆连接(尤其是每排末端的黑色电缆),而H100服务器到叶交换机的连接则使用多模AOC光纤(可通过蓝色电缆识别)。
总而言之,英伟达公司将成为10万卡H100集群的最大受益者,因为他们占据了主要的市场份额。根据我们按SKU和公司出货量细分GPU和ASIC芯片产品的预测模型,未来博通将主导所有超大规模集群的算力网络,其网络收入将持续增长。与此同时,英伟达的网络业务也将保持增长势头,因为许多新建云服务商、主权国家和企业仍会选择英伟达的参考设计。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。