在过去两年中,生成式 AI 模型不仅在普及度上呈现爆发式增长,其规模也在急剧扩大,这需要越来越多的加速器来支持。
在机器学习没有重大突破且电力成为限制因素的情况下,AI 的持续发展可能最终将依赖于一种新型超级计算机,这种计算机可能横跨整个国家甚至跨越大洲。
这个想法相当直接:如果建造更大的数据中心不再可行,那就开始将现有的数据中心连接起来。
这似乎确实是行业发展的方向。Dell'Oro 分析师 Sameh Boujelbene 告诉 The Register:"分布式是不可避免的。"
她并不是唯一持这种观点的人。Nvidia Mellanox 网络营销高级副总裁 Gilad Shainer 认为,"在下一代中,你将看到实际构建这些远程数据中心并形成一个大型虚拟单一数据中心的能力。"
在高性能计算领域,将大型工作负载分布在多台机器上并不是什么新鲜事。这本质上就是现代每台超级计算机(无论是 AI 还是科学计算)的工作方式,使用 Nvidia 的 InfiniBand 或 HPE 的 Slingshot 等高速互连来连接数千个节点。
从许多方面来看,跨多个数据中心分配工作负载是现有模式的延伸,尽管需要克服其独特的挑战。
好消息是,至少在某种程度上,连接数据中心所需的基础设施已经存在。高速数据中心互连 (DCI) 并不新鲜,主要云服务提供商已广泛使用。
对于更传统的科学工作负载,Nvidia(此前是 Mellanox)提供了 MetroX 产品线,该产品线使用密集波分复用技术,可以在最远 40 公里的范围内桥接多个数据中心的 InfiniBand 计算架构。
不幸的是,这些设备的最新一代产品是在 2022 年底发布的,就在 ChatGPT 引发 AI 淘金热的几周前。因此,它更多地针对灾难恢复和高可用性进行调优,而不是针对聊天机器人发布以来激增的大规模 AI 训练。
据 Shainer 称,研究人员已经在着手将这一范围从数十公里扩展到数千公里,这无疑将通过让不同地区的数据中心协同工作来帮助解决电力挑战。
然而,AI 工作负载的性质和所涉及的巨大距离带来了其独特的挑战。
平衡延迟和带宽
一般来说,AI 工作负载需要高带宽且对延迟敏感。在数据中心内部,主要挑战在于数据包丢失或连接停滞,导致计算资源在等待数据重传时处于空闲状态。根据 AMD 的数据,平均 30% 的训练时间都在等待网络赶上进度。
为了克服这些限制,已经开发了多种技术。Nvidia 的 InfiniBand 是其中之一,但专门的数据处理单元和针对 AI 优化的交换机也已经出现,以解决使用以太网时的这些挑战。
在谈到数据中心间的网络时,延迟是无法避免的现实。光在光纤中传播的速度是有限的——大约每公里 4.9 微秒。这已经相当快了,但在 1,000 公里的距离上,往返时间接近 10 毫秒,这还不包括协议和处理开销。在这种跨度上,重传问题更为严重。
根据所涉及的带宽和距离,可能需要中继器和放大器来增强信号,这可能会加剧问题。然而,光学设备供应商 Ciena 的研究网络首席技术专家 Rodney Wilson 告诉 El Reg,一些新兴技术可能有助于解决这个问题。
其中之一是中空光纤,它应该通过减少所需的中继器数量来帮助降低延迟。中空光纤的缺点是它仍然相对较新,而且地下已经铺设了大量的暗光纤。
延迟并不是唯一的问题;带宽是另一个问题。在数据中心内部,用于连接 GPU 服务器的扩展网络通常具有八个 400Gbps 链路(每个 GPU 一个),总带宽为 3.2 Tbps。如果你试图通过 DCI 扩展这个网络,将需要多个 Pb 的总带宽。
Wilson 表示,现代运营商网络中使用的光学技术现在支持每波长高达 1.6Tbps 的带宽。加上多个波长,这需要相当大的光纤束。
好消息是,通过软件优化可以缓解许多这些延迟和带宽挑战,Shainer 认为。根据如何在数据中心之间分配工作负载,可以隐藏延迟并最小化所需带宽。
例如,如果你想在两个物理上分散的集群上运行训练工作负载,你会希望以这样的方式分配工作负载:计算在数据中心内完成,只在合并结果时通过数据中心互连发送数据。
"运行作业的方式决定了数据中心之间需要多少带宽,"他补充说。"可能是总带宽的 10%......这取决于你如何构建网络。"
现实问题
虽然概念相对简单,但多数据中心训练也面临着需要克服的诸多障碍。
理想情况下,Shainer 解释说,你需要数据中心是同质的——也就是说,它们应该使用相同的计算架构——以避免瓶颈。
Nvidia 已经通过其 DGX 和 SuperPod 参考设计为此做好了准备。理论上,这些应该帮助数据中心运营商避免处理不平衡计算架构的麻烦。
然而,如果维护多个相同模式的数据中心不切实际,而你不得不让旧一代计算与新一代协同工作,Shainer 指出这仍然可行;只是效率可能不会那么高。"最旧的一代将决定最新一代的性能。"
可能不会只有两个数据中心共同承担工作负载。为了冗余和路由多样性,可能需要将多个数据中心互连成网状网络。
Wilson 解释说,这是因为在这些长距离上,流量将可能流经运营商网络,而这些网络可能会被各种现象干扰。
"我会考虑一个智能网状基础设施,提供多个路径,然后是一个软件覆盖层,提供一种自适应网络来控制这些流量,"他解释道。
理想情况下,Wilson 补充说,网络应该由机器或应用程序主动调整,而不是依赖于被动路由。"当网络出现问题时,如果是流量限制或其他损害,它必须具有足够的适应性来自我检测、自我修复和相应地重新路由或重新平衡。"
时间问题
跨多个数据中心分配 AI 工作负载可能是不可避免的;问题在于什么时候会变得必要。
虽然电力限制了可以塞进数据中心的 GPU 数量,但这并不一定限制可以训练的模型规模,只是影响训练速度。假设你还没有受到内存限制,你可以用数万个 GPU 训练一个巨大的模型;只是会花更长时间。
这似乎是这些超级集群的自然瓶颈。然而,随着集群规模的增长,它们也变得更加问题重重。在really大型集群中,平均故障时间 (MTTF) 可能相当短,导致集群越大,中断越多。
在训练 Llama 405B 时,Meta 每三个小时就会遇到一次故障,其中超过四分之三与硬件问题有关,58% 直接归因于 GPU 问题。
因此,随着集群规模的增长,完成任务的速度越快越好,因为这可以最小化下一个检查点之前发生故障的可能性。
不幸的是,随着 AI 模型每年增长 4-5 倍,而 GPU 需要更多的功率来实现代际性能提升,这些系统超出单个数据中心的限制似乎只是时间问题。
好文章,需要你的鼓励
AMD Radeon(TM) RX 9000 系列依托AI 加速为玩家带来极致游戏体验。
Inception Labs 于周四发布了 Mercury Coder,这是一种新的 AI 语言模型,利用扩散技术比传统模型更快地生成文本。与逐字生成文本的传统模型(如 ChatGPT)不同,基于扩散的模型(如 Mercury)能够同时生成完整的响应,并将其从最初的遮蔽状态逐步精炼为连贯的文本。
微软终于将其 AI 助手 Copilot 作为独立应用程序推出 macOS 版本。这款免费应用现已在 Mac App Store 上线,支持多种功能如文本翻译、问题解答、文档生成等。Copilot 采用 OpenAI 的 GPT-4 和 DALL-E 3 等模型,标志着微软在 AI 领域的重要布局。该应用要求 M1 或更新的 Mac 设备,以及 macOS 14 或更高版本。