Meta大规模AI集群内部揭秘:构建60万个H100的强大算力
内容概要
Arista 7800的RoCE网络解决方案,Wedge400和Minipack2 OCP机架交换机。 另一集群采用NVIDIA Quantum2 InfiniBand架构。 支持400Gbps端点连接,评估不同网络在大规模训练中的适用性和可扩展性。
自主设计的Grand Teton,为OCP贡献的开放GPU硬件平台。 Grand Teton集成了功率、控制、计算和网络接口于单个机箱,提升整体性能和热性能。 设计简洁,使得数据中心能够快速部署,易于维护和扩展,如Open Rack电源和机架架构。
采用自主开发的FUSE文件系统API,结合闪存介质优化的Tectonic分布式存储解决方案。 Tectonic分布式存储支持数千个GPU的同步保存和加载检查点,提供灵活、高吞吐量的EB级存储。 与Hammerspace合作开发并部署了并行NFS,提供交互式调试和快速迭代速度。 基于YV3 Sierra Point服务器平台,配备最新高容量E1.S SSD,实现吞吐能力、机架数量减少以及功率效率之间的平衡。 利用OCP服务器的模块化设计,实现存储层的灵活扩展和出色的容错能力。
总体目标:在不牺牲任何方面的前提下,最大化性能和易用性。 测试方法:通过构建和优化系统,并实际运行测试,对比小规模集群与大规模集群的性能表现,以精准定位瓶颈所在。 网络性能优化:优化内部作业调度器的网络拓扑感知功能,改进NCCL网络路由策略,实现网络资源的最佳利用。 与训练框架团队合作:与编写训练框架和模型的团队紧密合作,确保其与基础设施相契合。 调试工具开发:开发解同步调试或分布式集体飞行记录器等工具,帮助快速、便捷地定位问题。 PyTorch框架升级:持续对PyTorch框架进行迭代升级,以支持数十万甚至数百万GPU的训练需求。
---【以下为正文】---
作为对Meta人工智能未来发展的重要投资,我们正式宣布推出两个具备2.4万个GPU的集群。本文,我们详细阐述了关于硬件、网络、存储、设计、性能以及软件的各个方面,这些细节对于我们实现各种人工智能工作负载的高吞吐量和稳定性至关重要。这些集群特别设计用于Llama 3的训练工作。
我们始终坚定地支持开放计算和开源的理念。这些集群的构建基于Grand Teton、OpenRack和PyTorch,并持续推动整个行业的开放创新步伐。
此次宣布只是我们庞大基础设施规划的一部分。到2024年底,我们的目标是继续扩展基础设施建设,其中包括35万个NVIDIA H100 GPU,其计算能力将相当于近60万个H100的总和。
在人工智能开发领域占据领先地位,意味着在硬件基础设施方面必须进行领先的投资。硬件基础设施在人工智能的未来发展中扮演着至关重要的角色。今天,我们详细介绍了Meta两个版本的、规模庞大的24576个GPU数据中心集群。这些集群有力支持了我们当前以及下一代的人工智能模型,包括Llama 3——作为Llama 2的继任者,以及我们公开发布的LLM,还有GenAI和其它领域的人工智能研究与开发工作。
深入探索Meta大规模AI集群
Meta的长期愿景是构建开放且负责任的人工通用智能(AGI),旨在广泛惠及所有人。在实现AGI的过程中,我们也致力于扩展集群规模以支持这一宏伟目标。AGI的发展为我们带来了新产品、为系列应用程序注入了新的人工智能功能,并催生了新型的人工智能计算设备。
尽管我们在人工智能基础设施构建方面拥有深厚的底蕴,但我们在2022年首次公开了关于人工智能研究超级集群(RSC,AI Research SuperCluster)的细节,该集群配备了1.6万个NVIDIA A100 GPU。RSC通过助力我们构建第一代先进的人工智能模型,加速了开放且负责任的人工智能研究进程。它在Llama和Llama 2的开发中发挥了关键作用,并在计算机视觉、自然语言处理、语音识别、图像生成乃至编码等应用领域的先进人工智能模型开发中起到了重要作用。
Meta大规模AI集群内部揭秘
我们的新型人工智能集群是在RSC的成功经验与教训的基础上搭建而成的。我们专注于打造端到端的人工智能系统,重点关注研究人员和开发人员的实际体验与工作效率。这些集群内部高性能网络结构的优化,加上一些关键的存储决策,以及每个集群中配置的24576个NVIDIA Tensor Core H100 GPU,使得两个集群版本均能够支持比RSC更大、更复杂的模型,为GenAI产品开发和人工智能研究的进步奠定了坚实基础。
网络
在Meta,我们每天需要处理数万亿次的人工智能模型运算。要大规模地提供这些服务,离不开高度先进且灵活的基础设施。我们自主设计大部分硬件、软件和网络结构,旨在优化人工智能研究人员的端到端体验,同时确保数据中心的高效运行。
为此,我们构建了一个集群,采用基于Arista 7800的RoCE(RDMA over Converged Ethernet)网络结构解决方案,并配备了Wedge400和Minipack2 OCP机架交换机。另一个集群则选用了NVIDIA Quantum2 InfiniBand架构。这两种解决方案都能支持400Gbps端点的连接。借助它们,我们得以评估不同类型网络在大规模训练中的适用性和可扩展性,为设计和构建未来更大规模的集群提供了更多真知灼见。通过网络、软件和模型架构的精心协同设计,我们成功地在RoCE和InfiniBand集群上运行了大规模的GenAI工作负载(包括我们在RoCE集群上持续进行的Llama 3训练),并且没有遇到任何网络瓶颈问题。
计算
这两个集群均采用我们自主设计的Grand Teton构建,这是我们为开放计算项目(OCP)贡献的开放GPU硬件平台。Grand Teton基于多代人工智能系统,将功率、控制、计算和网络接口集成于单个机箱之中,从而提升了整体性能、信号完整性和热性能。它具备快速可扩展性和灵活性,设计简洁,使得数据中心能够快速部署,且易于维护和扩展。结合我们的其它创新技术,如Open Rack电源和机架架构,Grand Teton助力我们以契合Meta当前和未来应用需求的方式构建新型集群。
自2015年起,我们便开始公开设计GPU硬件平台,首个推出的便是Big Sur平台。
存储
在人工智能训练中,存储虽少被提及,但其重要性不言而喻。随着GenAI训练逐渐多模态化,涉及大量图像、视频和文本数据,数据存储需求急速攀升。然而,如何将这些数据高效、节能地存储起来,却是一个颇具挑战性的课题。
为满足AI集群的数据和检查点需求,我们的存储部署采用了自主开发的基于用户空间的Linux文件系统(FUSE,Filesystem in Userspace)API,并结合了针对闪存介质优化的Meta“Tectonic”分布式存储解决方案。这一方案使得数千个GPU能够同步保存和加载检查点,轻松应对存储挑战;同时,它还提供了灵活、高吞吐量的EB级存储,满足数据加载需求。
此外,我们与Hammerspace携手,共同开发并部署了并行网络文件系统(NFS),进一步优化了AI集群的开发人员体验。Hammerspace的加入,使得工程师能够轻松对数千个GPU的作业进行交互式调试,因为代码更改能够即时对所有节点生效。Tectonic分布式存储与Hammerspace的完美结合,不仅保证了快速的迭代速度,更在规模上毫无妥协。
在GenAI集群中,无论是Tectonic还是Hammerspace支持的存储部署,均基于YV3 Sierra Point服务器平台,并升级配备了市场上最新的高容量E1.S SSD。除了提升SSD容量外,每个机架的服务器也经过精心定制,以实现吞吐能力、机架数量减少以及功率效率之间的完美平衡。借助OCP服务器的模块化设计,我们的存储层能够灵活扩展,满足未来集群的更高要求,同时在日常维护中具备出色的容错能力。
性能
在构建大规模AI集群时,我们始终坚守一个原则:在不牺牲任何方面的前提下,最大化性能和易用性。这不仅是创建卓越人工智能模型的关键,更是我们不懈追求的目标。
为了测试我们扩展设计能力的极限,我们采取了最简单也最直接的方法:构建一个系统,对其进行优化,并实际运行测试。在此过程中,我们对比了小规模集群与大规模集群的性能表现,以精准定位瓶颈所在。下图展示了在预期消息大小下,大量GPU进行AllGather集体通信时的性能表现(以0-100的标准化带宽表示)。
最初,我们的大型集群在开箱即用的状态下,性能表现并不理想,相较于优化后的小型集群存在明显差距。为此,我们针对内部作业调度器的网络拓扑感知功能进行了多次优化调整,这不仅提升了延迟性能,还大幅减少了网络上层的流量负担。同时,我们结合NVIDIA集体通信库(NCCL,Collective Communication Library)的改进,优化了网络路由策略,实现了网络资源的最佳利用。经过一系列优化措施,我们的大型集群终于达到了与小型集群相媲美、符合预期的性能水平。
从图中可以明显看出,小型集群的性能(整体通信带宽和利用率)在开箱即用状态下就已达到90%以上,而未经优化的大型集群性能则波动较大,利用率从10%到90%不等。经过全面优化后,大型集群的性能稳定回升至理想的90%以上水平。
除了针对我们内部基础设施的软件调整,我们还与编写训练框架和模型的团队紧密合作,确保它们能够与我们日益进步的基础设施相契合。举例来说,NVIDIA H100 GPU的推出,为我们利用新型数据类型(如8位浮点数FP8)进行训练提供了可能。要充分利用更大规模的集群,我们需要投资研发更先进的并行化技术,同时,新的存储解决方案也提供了高度优化的检查点,使得在成千上万个等级之间切换仅需数百毫秒。
同时,我们也认识到,在大规模训练中,调试能力是一大难题。当规模庞大时,找出导致整个训练作业停滞不前的问题GPU变得尤为困难。因此,我们正在开发一系列工具,如解同步调试或分布式集体“飞行记录器”(Flight Recorder)等,以揭示分布式训练的细节,从而帮助我们更迅速、更便捷地定位问题。
最后,我们持续对PyTorch这一基础性人工智能框架进行迭代升级,以支持我们的人工智能工作负载,并使其能够应对数十万乃至数百万GPU的训练需求。我们已经找到了多个进程组初始化的瓶颈,并成功将启动时间从有时长达数小时缩短至几分钟。
致力于开放式人工智能创新
Meta始终坚守在人工智能软件和硬件领域的开放创新承诺。我们坚信,开源硬件和软件将是推动行业解决大规模问题的宝贵工具。
如今,作为OCP的创始成员,我们持续支持开放硬件创新,将Grand Teton和Open Rack等设计贡献给OCP社区。同时,我们也是PyTorch的最大和主要贡献者,它为行业中的大部分人工智能软件框架提供了坚实支撑。
此外,我们也积极投身于人工智能研究领域的开放式创新。我们推出了Open Innovation AI Research Community,这是一个面向学术研究人员的合作计划,旨在深化我们对如何负责任地开发和分享人工智能技术的理解,特别是关于LLM的研究。
对于Meta来说,开放式人工智能的理念并非新生事物。我们还发起了AI Alliance,这是一个汇集了人工智能行业内领先组织的团体,旨在推动负责任的人工智能创新在一个开放社区内蓬勃发展。我们的人工智能工作始终秉持开放科学和跨界合作的理念。开放的生态系统为人工智能开发带来了透明度、审查和信任,并促进了以安全和责任为核心的创新,让每个人都能从中受益。
Meta人工智能基础设施展望
这两种人工智能训练集群设计,无疑构成了我们未来人工智能发展蓝图的重要一环。展望未来至2024年底,我们计划继续壮大基础设施建设,其中将囊括35万个NVIDIA H100,共同构成相当于近60万个H100的强大计算能力。
随着时代的进步,我们深知昨天乃至今天行之有效的手段,可能难以应对明日的挑战。正因如此,我们始终在评估与改进基础设施的方方面面,从物理和虚拟层到软件层,乃至更广阔的领域。我们的终极目标,是构建出既灵活又可靠的系统,以支持日新月异的新模型与研究,引领人工智能的未来发展。
Source:Kevin Lee, Adi Gangidi, Mathew Oldham; Building Meta's GenAI Infrastructure; MARCH 12, 2024
---【本文完】---
近期受欢迎的文章:
更多交流,可添加本人微信
(请附姓名/关注领域)