Meta 的生成式 AI 基建
Jan 26, 2025 22:30 · 2156 words · 5 minute read
原文:https://engineering.fb.com/2024/03/12/data-center-engineering/building-metas-genai-infrastructure/
- 建成两个 24k GPU 集群标志着 Meta 对 AI 未来的重大投资,用于 Llama 3 的训练。
- Meta 致力于开源,在 Grand Teton、OpenRack 和 PyTorch 之上构建了这些集群,推动行业的开放创新。
- 这是 Meta 基建路线图中的一步,计划 2024 年继续扩大基础设置,组合出相当于 60 万块 NVIDIA H100 的算力规模。
在 AI 开发上处于领先意味着硬件基础设施上的投资也要领先,因为它对 AI 的未来至关重要。我们在此分享两个版本 24567 块 GPU 数据中心的细节,它们都支持下一代 AI 模型,包括 Llama 3 以及其他领域的 AI 研究。
我们已经在 2022 年分享过 AI 研究超级集群(AI Research SuperCluster)的细节,配备了 16000 个 NVIDIA A100 GPU。RSC 帮助构建了第一代先进 AI 模型,加速了 AI 的研究。它在 Llama 和 Llama 2 还有机器视觉、NLP 、图像生成、编码等 AI 模型开发中持续发挥着重要作用。
底层
我们更新的 AI 集群吸取了 AI Research SuperCluster 的成功经验和教训,专注于打造端到端的 AI 系统,主要为了提升研究员和开发者的体验和生产力。这些集群中高性能网络的效率、一些关键的存储决策、配备的 24576 个 H100 GPU,使得它们相比 RSC 能够支持更大更复杂的模型,为生成式 AI 产品开发和 AI 研究铺好了道路。
网络
Meta 每天处理百兆次 AI 模型执行,以这种规模交付这些服务需要高度先进且灵活的基础设施。定制设计许多自己的硬件、软件和网络结构,使我们能够优化 AI 研究员的端到端体验,同时确保数据中心高效运行。
考虑到这点,我们一个集群基于 Arista 7800 和 Wedge400 还有 Minipack2 OCP 机架交换机构建了一个 RoCE 协议的 RDMA 网络;另一个集群采用 NVIDIA Quantum2 InfiniBand 方案。这两种解决方案端到端互连的带宽均可达到 400 Gbps。我们可以通过这两个集群评估这些不同类型的网络在大规模训练中的适用性和可扩展性,获得更多信息,为未来设计和建造更大规模的集群提供参考。通过精心地协同设计网络、软件和模型架构,我们成功地将 RoCE 和 InfiniBand 集群用于大型生成式 AI 的负载(Llama 3),没出现任何网络性能瓶颈。
计算
两个集群都使用 Grand Teton GPU 硬件平台构建,这是我们自主设计的,已经贡献给开放计算项目(OCP)。Grand Teton 为了更好的整体性能和散热将电源、控制、计算和网卡整合到单个机箱中,它简化的设计提供扩展性和灵活性,使其能被迅速部署到数据中心的集群中,易于维护和扩展。结合其他内部创新技术,比如 Open Rack 电源和机架结构,Grand Teton 使我们能够为 Meta 的应用程序量身打造新集群。
从 2015 年的 Big Sur 平台开始,我们就一直在公开地设计 GPU 硬件平台。
存储
存储在 AI 训练中起着重要作用,但却是最少被讨论到的方面之一。随着生成式 AI 训练任务随时间的推移多模太化,消费大量图像、视频和文本数据,数据存储的需求也在飞增。我们的自研存储方案基于 Linux 用户态文件系统(FUSE)API,由 Meta 为闪存优化的 Tectonic 分布式存储系统支持,满足 AI 集群的数据和检查点需求。该解决方案使几千个 GPU 能够同步地保存和加载检查点(这对任何存储系统来说都是一个大挑战),同时提供加载数据所需的高吞吐量。
我们还和 Hammerspace 合作,共同开发并落地了一个并行的网络文件系统(NFS),来满足该 AI 集群开发者的需求。Hammerspace 使工程师能够对使用了数千个 GPU 的作业进行交互式调试,可以立即在环境中的所有节点上访问变更的代码。Tectonic 分布式存储系统和 Hammerspace 结合实现了不牺牲规模的情况下快速迭代。
在我们的生成式 AI 集群中部署的存储,Tectonic 和 Hammerspace 的底层,是基于 YV3 Sierra Point 的服务器平台,升级了目前市场上可采购到的最新高容量 E1.S SSD。除了更大容量的 SSD 外,机架上的服务器也是定制的,实现每台服务器的吞吐量、机架数量和能效的最佳平衡。像搭乐高积木一样使用 OCP 服务器,我们的存储层能够灵活扩展以满足未来的需求以及更大规模的 AI 集群,同时在日常基础设施运维中提供容错能力。
性能
同时最大化性能和易用性(两者全都要)是我们在构建大规模 AI 集群时的原则之一,这也是创建一流 AI 模型的重要原则。随着不断推进 AI 系统的极限,测试我们扩展设计能力的最佳方式就是构建一个系统,优化它并实际测试(模拟器的作用有限)。在这个设计过程中,我们比较了小型集群和大型集群的性能来找出瓶颈所在。下图即大量 GPU 以极限性能时预期的消息大小相互通信时,展示了 AllGather 集合操作的性能(以 0-100 为单位的常规化带宽)。
与优化后的小型集群性能相比,我们的大型集群开箱即用的性能起初很差且不稳定。为了解决该问题,我们对内部的作业调度器对网络拓扑感知做了多个优化——这降低了延迟,并最小化了流向网络上层的流量。我们还结合 NCCL(NVIDIA Collective Communications Library)优化了网络路由策略,实现最佳网络利用率,这帮助我们的大型集群达到和小型集群一样出色的性能。
在上图中小型集群的性能(整体通信带宽和利用率)开箱即达到 90% 以上,但未经过优化的大型集群利用率非常低,只有 10% 到 90%。在我们优化整个系统后,大型集群的性能恢复到理想的 90% 以上。
致力于开放 AI 创新
套话就不做翻译了。
Meta AI 基础设施的未来
展望未来,我们认识到昨天或今天奏效的方法可能无法满足明天的需求,这就是为何我们不断地评估和改进基础设施的各方面,从物理到虚拟层再到软件层以及更上层。我们的目标是创建灵活且可靠的系统来支持快速进化的新模型和研究。