IBM的AI基础设施推动第二代人工智能模型开发

独角也有噬元兽 2024-07-12 13:13:13

AI基础设施在AI模型的开发和部署中起着关键作用。当前对强大AI基础设施的需求源于生成AI和基础模型的出现,这些模型的训练需要成千上万的GPU协同工作。为了实现高效的AI训练,IBM采用了混合云基础设施,包括Vela和Blue Vela,分别用于云端和本地的大规模AI模型训练。

Vela是IBM云中的AI优化超级计算基础设施,提供可扩展、动态、多租户和地理分布的基础设施,用于大规模模型训练和其他AI工作流程。Blue Vela则是支持IBM最大和最雄心勃勃的AI模型训练任务的大规模、专用的本地托管环境。Vela和Blue Vela的结合,使IBM能够在AI模型和商业产品的开发中快速创新。

研究的意义在于随着AI技术的快速发展,理解和掌握先进的AI基础设施设计和实现方法,对于推动AI模型的开发和部署至关重要。通过分析IBM的生成AI模型开发基础设施,该技术成果为AI研究人员和工程师提供了宝贵的经验和见解,帮助他们在自己的工作中实现更高效和高性能的AI训练。

IBM的生成AI模型开发基础设施研究团队由来自IBM Research、IBM Infrastructure和Red Hat的专家组成,涵盖了从AI模型开发到基础设施管理的各个方面。他们共同致力于推动IBM的生成AI模型开发,确保高效和高性能的AI训练基础设施。

IBM生成AI模型开发的基础设施概述

基础设施的选择和设计对AI模型的开发和部署至关重要,AI基础设施不仅影响模型训练的速度和成本,还直接关系到模型的性能和可扩展性。随着AI技术的不断进步,尤其是生成AI和基础模型的出现,对强大AI基础设施的需求日益增加。这些模型的训练需要大量的计算资源和高效的数据处理能力,以在合理的时间内完成训练任务。

AI基础设施的重要性体现在以下几个方面:

计算能力:AI模型的训练通常需要大量的计算资源,尤其是GPU。强大的计算能力可以显著缩短模型训练时间,提高开发效率。

存储和数据处理:AI模型的训练需要处理大量的数据,存储和数据处理能力至关重要。高效的存储解决方案可以加快数据读取和写入速度,减少训练过程中的瓶颈。

网络性能:在分布式训练中,多个GPU需要高效地通信。高性能的网络基础设施可以确保GPU之间的数据传输速度,避免通信瓶颈。

可扩展性和灵活性:AI基础设施需要具备良好的可扩展性和灵活性,以适应不同规模和类型的AI工作负载。灵活的基础设施可以根据需求动态调整资源配置,提高资源利用率。

随着生成AI和基础模型的出现,对AI基础设施的需求不断增加。这些模型的训练需要成千上万的GPU协同工作,以在合理的时间内完成训练任务。当前AI基础设施的需求主要体现在以下几个方面:

大规模计算集群:为了支持大规模模型的训练,需要大规模的计算集群。这些集群通常由数百甚至数千个GPU节点组成,能够提供强大的计算能力。

高性能存储解决方案:AI模型的训练需要处理大量的数据,高性能的存储解决方案可以加快数据读取和写入速度,减少训练过程中的瓶颈。

高效的网络基础设施:在分布式训练中,多个GPU需要高效地通信。高性能的网络基础设施可以确保GPU之间的数据传输速度,避免通信瓶颈。

灵活的资源管理:AI基础设施需要具备良好的可扩展性和灵活性,以适应不同规模和类型的AI工作负载。灵活的资源管理可以根据需求动态调整资源配置,提高资源利用率。

可靠性和容错性:AI模型的训练通常需要长时间运行,基础设施的可靠性和容错性至关重要。高可靠性的基础设施可以减少故障对训练过程的影响,提高训练效率。

为了满足生成AI和基础模型的训练需求,IBM采用了混合云基础设施,包括Vela和Blue Vela,分别用于云端和本地的大规模AI模型训练。

Vela是IBM云中的AI优化超级计算基础设施,提供可扩展、动态、多租户和地理分布的基础设施,用于大规模模型训练和其他AI工作流程。Vela的架构设计灵活且可扩展,能够适应未来的需求变化。其主要特点包括:

水平可扩展的数据中心系统:Vela采用两层脊叶CLOS架构,每个节点配备八个80GB A100 GPU,通过NVLink和NVSwitch连接。高性能网络基础设施:Vela采用远程直接内存访问(RDMA)和GPU直接RDMA(GDR)技术,以确保GPU之间的高性能通信。高效的存储解决方案:Vela使用IBM Spectrum Scale作为高性能文件系统,充当对象存储和GPU之间的缓存机制。灵活的软件堆栈:Vela由IBM Cloud作为IaaS运营,使用Red Hat OpenShift集群管理AI生命周期的各个阶段。

Blue Vela是支持IBM最大和最雄心勃勃的AI模型训练任务的大规模、专用的本地托管环境。Blue Vela的架构设计基于NVIDIA H100 SuperPod参考架构,专为处理最苛刻的模型训练任务而定制。其主要特点包括:

四个专用网络:计算InfiniBand网络、存储InfiniBand网络、带内以太网主机网络和带外管理网络。强大的计算基础设施:计算节点配置基于NVIDIA参考HGX平台指南,使用Dell PowerEdge XE9680,配备双48核第4代Intel Xeon可扩展处理器、2TB RAM、8个NVIDIA H100 GPU(80GB HBM)。高性能存储解决方案:Blue Vela使用IBM Spectrum Scale生态系统和IBM Storage Scale System 6000,读取吞吐量高达310 GB/s,写入吞吐量为155 GB/s。灵活的软件堆栈:Blue Vela的软件堆栈保持精简,选择了一组有限的工具来简化使用、管理、支持和故障排除。

通过Vela和Blue Vela的结合,IBM能够在AI模型和商业产品的开发中快速创新,确保高效和高性能的AI训练基础设施。这些基础设施不仅满足了当前的需求,还为未来的AI基础设施发展提供了坚实的基础。

Vela——IBM云中的AI优化超级计算基础设施

1. Vela的架构设计

图1:Vela 系统架构

Vela是一个水平可扩展的数据中心系统,旨在满足大规模AI模型训练的需求。其设计目标是提供高性能、灵活且可扩展的计算资源,以支持生成AI和基础模型的开发。Vela的架构采用了两层脊叶CLOS结构,确保系统的高效性和可扩展性。

Vela采用了两层脊叶CLOS架构,这是一种常用于大规模数据中心的网络拓扑结构。该架构通过将网络设备分为脊(spine)和叶(leaf)两层,提供高带宽、低延迟的网络连接。脊层设备负责连接叶层设备,而叶层设备则连接计算节点。这样的设计确保了网络的高可用性和可扩展性,能够支持大量GPU节点的高效通信。

Vela的每个GPU节点配备了八个80GB的NVIDIA A100 GPU,这些GPU通过NVLink和NVSwitch连接,以实现高速数据传输。最初,Vela的GPU节点使用的是第二代Intel Xeon可扩展处理器(Cascade Lake),后来升级为第三代Intel Xeon可扩展处理器(Ice Lake)。每个节点还配备了1.5TB的DRAM和四个3.2TB的NVMe驱动器,以满足大规模数据处理和存储的需求。

2. Vela的网络基础设施

为了支持大规模模型训练,Vela采用了远程直接内存访问(RDMA)技术。RDMA允许一个处理器直接访问另一个处理器的内存,而无需操作系统的干预,从而实现更快的通信速度。通过RDMA,Vela能够在多个GPU之间实现高效的数据传输,减少通信延迟,提高训练效率。

除了RDMA,Vela还采用了GPU直接RDMA(GDR)技术。GDR允许一个系统的GPU直接访问另一个系统的GPU内存,通过网络卡进行通信。这种技术进一步提高了GPU之间的数据传输速度,减少了通信瓶颈,使得大规模模型训练更加高效。

为了确保高可用性,Vela系统内置了网络冗余机制。每个网络接口卡(NIC)连接到不同的机架顶部(TOR)交换机,每个TOR交换机通过两个100G链接连接到四个脊交换机,提供1.6TBps的跨机架带宽。这样的设计确保了即使某个NIC、TOR或脊交换机发生故障,系统仍能继续运行。

此外,Vela还部署了拥塞管理机制,通过隔离RoCE流量、监控网络拥塞并通知发送方减少流量来缓解拥塞。这种机制确保了在高负载情况下,网络仍能保持高效运行。

图 2:与 TCP 和 GPU Direct RDMA 通信的通信路径

3. Vela的存储解决方案

Vela使用IBM Spectrum Scale作为其高性能文件系统。IBM Spectrum Scale是一种并行文件系统,具有高性能和高可用性,能够满足大规模AI模型训练的数据存储需求。通过使用IBM Spectrum Scale,Vela能够实现高效的数据读取和写入,减少训练过程中的存储瓶颈。

Vela的高性能文件系统采用了分离存储模型,提供高达数百TB的文件系统容量,并且可以扩展至PB级别。这样的设计确保了Vela能够处理大规模的数据集,满足生成AI和基础模型训练的需求。

为了进一步提高存储性能,Vela使用了Active File Management (AFM) 技术。AFM技术通过在对象存储和GPU之间插入高性能文件系统,充当缓存机制,加快数据加载和模型权重检查点的速度。通过AFM技术,Vela能够在训练任务开始或重新启动时更快地加载数据,并以更快的速度将模型权重检查点保存到文件系统中。

4. Vela的软件堆栈

Vela由IBM Cloud作为IaaS运营,使用Red Hat OpenShift集群管理AI生命周期的各个阶段。OpenShift平台提供了丰富的功能,支持高性能基础设施的暴露和系统管理工具,如监控、日志记录和警报。通过OpenShift平台,AI研究人员可以自带容器,简化系统级监控和调试,并通过自动化作业调度器在失败时重新启动作业。

为了满足Vela上运行的工作负载的特定需求,IBM开发了一些关键功能,并利用IBM Cloud的能力显著增强监控和诊断功能。例如,Autopilot是一种云原生可观测性工具,运行在GPU节点上,执行系统状态的健康检查。Multi-NIC CNI是一种容器原生接口,管理主机上的所有接口,确保工作负载在pods内运行时实现线速网络性能。CNSA是一种容器原生模式运行的Scale客户端集群,使用Kubernetes operators部署和管理Scale。

研究表明,OpenShift平台对性能敏感工作负载的资源开销在误差范围内(低于5%)。与虚拟机相比,OpenShift的迭代时间在所有批次大小下均在4%以内。尽管OpenShift运行的进程更多,但其CPU和内存使用率分别在2%和4%以内,影响可以忽略不计。

图3:NCCL All Reduce 集体与 TCP、ROCE 和 GDR 协议的性能

图4:NCCL All Reduce 集合在不同数量的 GPU 上的性能

Vela作为IBM云中的AI优化超级计算基础设施,通过其灵活且可扩展的架构设计、高性能的网络和存储解决方案以及强大的软件堆栈,满足了大规模AI模型训练的需求。通过采用远程直接内存访问(RDMA)和GPU直接RDMA(GDR)技术,Vela实现了高效的GPU间通信。使用IBM Spectrum Scale和Active File Management (AFM) 技术,Vela提供了高性能的存储解决方案。Red Hat OpenShift平台和OpenShift Operators进一步增强了Vela的监控和诊断功能,确保了工作负载的高效运行。Vela的成功实施为IBM的生成AI模型开发提供了强大的基础设施支持。

Blue Vela——支持大规模AI模型训练的本地超级计算基础设施

1. Blue Vela的架构设计

Blue Vela集群是IBM与Dell和NVIDIA合作设计的,旨在满足最苛刻的AI模型训练任务需求。通过与这些领先的技术公司合作,IBM能够利用最先进的硬件和技术,打造出高性能的计算平台。Blue Vela基于NVIDIA H100 SuperPod参考架构,进行了定制化设计,以提供最佳的GPU计算资源,支持目标工作负载。

Blue Vela的设计基于NVIDIA H100 SuperPod参考架构,这是一种高性能计算平台,专为大规模AI模型训练而设计。通过采用这一参考架构,Blue Vela能够利用NVIDIA的工具、库和编译器,实现加速计算。该架构的设计目标是提供高带宽、低延迟的通信,以支持大规模GPU集群的高效运行。

Blue Vela的网络设计围绕四个专用网络展开,以确保通信延迟最小化:

计算InfiniBand网络:用于GPU之间的通信,确保高带宽、低延迟的数据传输。存储InfiniBand网络:提供对存储子系统的访问,支持高性能的数据读写操作。带内以太网主机网络:用于计算网络之外的节点间通信,主要用于监控和工作负载调度流量。带外管理网络:用于服务器和交换机的管理接口访问,确保集群管理的安全性和可靠性。

2. Blue Vela的计算基础设施

Blue Vela的计算节点配置基于NVIDIA参考HGX平台指南,使用Dell PowerEdge XE9680服务器。每个计算节点的配置如下:

双48核第4代Intel Xeon可扩展处理器2TB RAM8个NVIDIA H100 GPU(80GB HBM)10个NVIDIA ConnectX-7 NDR 400Gb/s InfiniBand主机通道适配器(HCA)8个用于计算网络2个用于存储网络8个3.4TB企业级NVMe U.2 Gen4双25G以太网主机链接1G管理以太网端口

图5:通过优化提高性能

图6:NMT-12 双节点训练作业的虚拟化开销

管理节点用于运行关键服务,如认证和授权、工作负载调度、可观测性和安全性。为了简化支持和管理,并为未来的服务扩展提供保障,管理节点采用了标准的超大硬件配置,使用Dell PowerEdge R760XS服务器。每个管理节点的配置如下:

双32核第4代Intel Xeon可扩展处理器1TB RAM2个NVIDIA ConnectX-7 NDR 400Gb/s InfiniBand HCA(用于存储网络)2个1TB企业级NVMe U.2 Gen44个100G以太网主机链接1G管理以太网端口

3. Blue Vela的存储解决方案

Blue Vela的存储解决方案基于IBM Spectrum Scale生态系统,这是一种高性能并行文件系统,能够满足大规模AI模型训练的数据存储需求。IBM Spectrum Scale具有高性能和高可用性,能够提供快速的数据读写速度,减少训练过程中的存储瓶颈。

Blue Vela使用了IBM Storage Scale System 6000(SSS 6000),这是一种利用InfiniBand和PCIe Gen 5技术的高性能存储系统。每个SSS设备能够提供高达310 GB/s的读取吞吐量和155 GB/s的写入吞吐量。初始部署包括两个SSS6000机箱,配备48个30TB U.2G4 NVMe,总存储容量接近3PB。每个SSS设备还可以容纳多达七个额外的外部JBOD机箱,以扩展存储容量。

图 7:使用 NFS 和 Scale 文件系统的 AI 工作负载的迭代时间。使用 Scale 文件系统可将迭代时间缩短 10% 以上。

4. 数据中心选择和设计

在选择数据中心时,IBM进行了可行性和成本效益分析,考虑了站点建设和运行成本、服务器托管的可行性和实施时间表。通过创建数字孪生模型,IBM的数据中心设计团队能够模拟性能、财务和环境权衡,解决站点的初始不足。数字孪生模型使得IBM能够高效地探索各种因素的组合,快速解决站点的初始问题。

为了适应现有气流和散热能力,IBM设计了自定义气流控制外壳和信号电缆槽道系统。通过CAD建模,IBM设计了一种解决方案,使得机架位置能够利用现有的气流和散热能力,容纳比数据中心最初配置更重的负载。这样的设计确保了Blue Vela能够在现有设施中高效运行。

由于数据中心的电力和冷却能力有限,IBM重新配置了设施的电力水平,绕过UPS和主要电力冗余功能,增加了约70%的电力供应。此外,IBM还修改了供电给机架的远程电源面板(RPP),以满足Blue Vela的需求。IBM制定了一个九个月的计划,逐步增加设施的电力供应,以完全满足Blue Vela的需求。

5. Blue Vela的软件堆栈

为了高效配置计算节点,Blue Vela选择了eXtreme Cloud Automation Tool (xCAT)。xCAT允许使用无状态、内存中的操作系统高效配置计算节点,使得任何有问题的计算节点能够在几分钟内重新启动并恢复到干净的配置。管理节点使用传统的有状态操作系统,以平衡关键服务和非关键组件的快速重启。

图 8:使用虚拟机和 OpenShift 的迭代时间(越低越好)。性能差异小于 4%。

图 9:在九个月内将 OpenShift 集群从数十个 GPU 扩展到数千个 GPU。

Blue Vela使用IBM Spectrum LSF作为调度软件,提供资源管理框架。LSF评估用户的作业需求,寻找最佳资源执行作业,并跟踪其进度。LSF提供高级工作负载管理,具有策略驱动的调度功能,优化HPC和AI工作负载的计算环境使用。LSF还与NVIDIA GPU深度集成,调度器能够识别GPU硬件问题并在调度决策中考虑这些问题。

Blue Vela的可观测性软件与Vela集群不同,Blue Vela托管在本地数据中心,IBM Research负责所有解决方案组件。Blue Vela使用标准的ELK堆栈(Elastic、Logstash和Kibana)以及Kafka进行日志聚合,Prometheus、Thanos和Grafana堆栈用于遥测。ELK堆栈与LSF紧密集成,允许快速创建和查看报告和仪表板。Prometheus提供遥测平台的基础,Grafana提供集群遥测的单一登陆页面。Thanos用于收集和存储历史数据,提供跨多个Prometheus实例的全局查询视图。

Blue Vela作为支持大规模AI模型训练的本地超级计算基础设施,通过其与Dell和NVIDIA的合作、基于NVIDIA H100 SuperPod参考架构的设计、四个专用网络、高性能的计算和存储解决方案以及强大的软件堆栈,满足了最苛刻的AI模型训练任务需求。通过数字孪生模型、自定义气流控制外壳和信号电缆槽道系统以及重新配置的电力和冷却解决方案,Blue Vela能够在现有设施中高效运行。Blue Vela的成功实施为IBM的生成AI模型开发提供了强大的基础设施支持。

操作模型和性能评估

1. 操作模型

在大规模AI模型训练中,操作模型的设计至关重要。为了确保训练任务的高效进行,IBM在Blue Vela集群中实施了一系列操作模型,包括端到端监控和预测分析、自动化系统恢复以及变更管理流程。

为了支持大规模AI模型训练工作负载,如Granite模型相关的训练任务,并最大限度地减少作业停机时间,Blue Vela的仪表板配置了1180个指标,涵盖了从GPU性能到系统健康状况的各个方面。通过这些指标,系统能够实现全面的可观测性,支持持续优化、诊断和系统特征化。

具体来说,GPU指标每5秒报告一次,系统级指标每60秒记录一次。这些数据点支持近实时的集群监控,帮助识别和解决潜在问题。例如,GPU张量核心利用率是评估作业性能的关键指标,可以指示作业是否运行良好并得到优化。系统健康监控则关注物理健康状况,如GPU健康和内存健康,确保系统平稳运行。

表格1:基础设施故障类型、根本原因和缓解措施。

在大规模AI模型训练中,系统故障是不可避免的。为了减少故障对训练任务的影响,Blue Vela实施了自动化系统恢复机制。通过自动化运行手册驱动的系统恢复,系统能够在需要时快速重新启动训练任务,减少停机时间。

此外,自动化在确保持续合规性和一致性方面也发挥着重要作用。通过自动化流程,系统能够在不同环境中保持一致的配置,减少人为错误的可能性。

为了避免引入灾难性变更,Blue Vela实施了强大的变更管理流程。任何对环境的变更都需要经过严格的审核和测试,以确保不会对系统的稳定性和性能产生负面影响。通过这种变更管理流程,系统能够在保持高性能的同时,灵活应对不断变化的需求。

2. 性能评估

Blue Vela在上线第一个月内(2024年4月1日起)就对模型训练产生了显著影响,训练并开源了第一批模型。这是Granite模型家族的一个重要里程碑。基础设施展示了良好的吞吐量潜力,初始作业的性能比同配置的其他环境高出5%。

具体来说,Blue Vela集群当前的吞吐量为每天90-321B,取决于训练设置和模型的不同。随着所有计算单元的集成完成,预计通过进一步优化和集成,吞吐量将提高25-30%。

图 10:硬件故障和其他节点维护事件的警报。警报由 IBM Cloud Activity tracker 和 LogDNA 根据来自主机的日志消息和 OpenShift 监控规则生成的自定义消息生成。

为了进一步提高性能和效率,Blue Vela将继续专注于系统和软件优化、作业调度和重启的自动化,以及使用AIOps进行集群操作数据的异常检测。具体来说,未来的发展方向包括:

系统和软件优化:通过优化网络拓扑、调整网络卡配置以及使用不同的软件框架(如Pytorch原生训练与混合分片),进一步提高计算与通信的重叠,提升整体性能。

作业调度和重启的自动化:通过自动化调度和重启机制,确保训练任务在出现故障时能够快速恢复,减少停机时间。

AIOps进行异常检测:利用AIOps技术,对集群操作数据进行异常检测,及时发现和解决潜在问题,确保系统的稳定性和高效运行。

通过实施端到端监控和预测分析、自动化系统恢复以及强大的变更管理流程,Blue Vela能够高效支持大规模AI模型训练任务。初始工作负载性能评估显示,Blue Vela在吞吐量和性能方面表现出色,未来通过进一步优化和自动化,预计性能将进一步提升。Blue Vela的成功实施为IBM的生成AI模型开发提供了强大的基础设施支持,并为未来的AI基础设施发展提供了宝贵的经验和参考。(END)

参考资料:https://arxiv.org/html/2407.05467v1

波动世界(PoppleWorld)是噬元兽数字容器的一款AI应用,是由AI技术驱动的帮助用户进行情绪管理的工具和传递情绪价值的社交产品,基于意识科学和情绪价值的理论基础。波动世界将人的意识和情绪作为研究和应用的对象,探索人的意识机制和特征,培养人的意识技能和习惯,满足人的意识体验和意义,提高人的自我意识、自我管理、自我调节、自我表达和自我实现的能力,让人获得真正的自由快乐和内在的力量。波动世界将建立一个指导我们的情绪和反应的价值体系。这是一款针对普通人的基于人类认知和行为模式的情感管理Dapp应用程序。

0 阅读:0

独角也有噬元兽

简介:感谢大家的关注