扎克·安德森
2024 年 8 月 14 日 04:45
探索测试和运行大型 GPU 集群以进行生成式 AI 模型训练的复杂性,确保高性能和可靠性。
训练生成式 AI 模型需要由昂贵的尖端硬件(如 H100 GPU 和快速存储)组成的集群,这些集群通过多网络拓扑相互连接,包括 Infiniband 链路、交换机、收发器和以太网连接。虽然高性能计算 (HPC) 和 AI 云服务提供了这些专用集群,但它们需要大量的资本投入。然而,根据 together.ai 的说法,并非所有集群都是平等的。
GPU 集群测试简介
GPU 集群的可靠性差异很大,问题从轻微到严重不等。例如,Meta 报告称,在他们对 Llama 3.1 模型进行 54 天的训练运行期间,GPU 问题占所有意外问题的 58.7%。Together AI 为许多 AI 初创公司和财富 500 强公司提供服务,开发了一个强大的验证框架,以确保部署前的硬件质量。
Together AI 的集群测试流程
验收测试的目标是确保硬件基础设施满足指定的要求并提供苛刻的 AI/ML 工作负载所需的可靠性和性能。
1.准备和配置
初始阶段涉及在 GPU 集群环境中配置新硬件,模拟最终使用场景。这包括安装 NVIDIA 驱动程序、Infiniband 的 OFED 驱动程序、CUDA、NCCL、HPCX,以及配置 SLURM 集群和 PCI 设置以提高性能。
2. GPU 验证
验证首先要确保 GPU 类型和数量符合预期。压力测试工具(如 DCGM Diagnostics 和 gpu-burn)用于测量负载下的功耗和温度。这些测试有助于识别 NVML 驱动程序不匹配或“GPU 脱离总线”错误等问题。
3. NVLink 和 NVSwitch 验证
在对单个 GPU 进行验证后,NCCL 测试和 nvbandwidth 等工具会通过 NVLink 测量 GPU 到 GPU 的通信。这些测试有助于诊断 NVSwitch 故障或 NVLink 故障等问题。
4. 网络验证
对于分布式训练,使用 Infiniband 或 RoCE 网络结构验证网络配置。使用 ibping、ib_read_bw、ib_write_bw 和 NCCL 测试等工具来确保最佳性能。这些测试的良好结果表明集群在分布式训练工作负载方面表现良好。
5. 存储验证
存储性能对于机器学习工作负载至关重要。fio 等工具可以测量不同存储配置的性能特征,包括随机读取、随机写入、持续读取和持续写入。
6. 模型构建
最后阶段涉及运行针对客户用例量身定制的参考任务。这可确保集群能够实现预期的端到端性能。一项常见的任务是使用 PyTorch 的完全分片数据并行 (FSPD) 等框架构建模型,以评估训练吞吐量、模型浮点数利用率、GPU 利用率和网络通信延迟。
7.可观察性
持续监控硬件故障至关重要。Together AI 使用 Telegraf 收集系统指标,确保最大程度的正常运行时间和可靠性。监控包括集群级和主机级指标,例如 CPU/GPU 使用率、可用内存、磁盘空间和网络连接。
结论
对于提供顶级计算资源的 AI/ML 初创公司来说,验收测试是必不可少的。全面而结构化的方法可确保基础设施稳定可靠,支持预期的 GPU 工作负载。我们鼓励公司对已交付的 GPU 集群进行验收测试,并报告任何问题以进行故障排除。
图片来源:Shutterstock
(标签翻译)人工智能(t)加密(t)区块链(t)新闻
关键词:AI,crypto,blockchain,news