文献阅读《Alibaba HPN: A Data Center Network for Large Language Model Training》

Alibaba High Performance Network (HPN) HPN介绍了一种两层的双平面网络,可以在一个Pod中接入1.5w个GPU,通常需要3层Clos架构的网络才能容纳这么多GPU HPN 提出了一种新的双 ToR 设计,以取代传统数据中心网络中的单 ToR 1. 贡献与挑战 挑战 流量模式 传统网络无法应对LLM的低熵、周期性、突发的网络特点,传统的数据中心网络一般是高熵的(传统网络中会存在百万条流,但是每条流的利用率特别低,一半小于20%) ECMP在传统的数据中心的高熵、低利用率的网络中性能表现较好,但是在LLM训练中并不是最佳的 单点故障的敏感性高 LLM训练是一个同步过程,所有GPU合作完成一系列迭代,任何一个GPU发生故障都有可能导致整个训练过程出现问题 对LLM训练影响最大的是与机架顶部(ToR)相关的单点故障,这种故障可能会影响到各种GPU 生产统计数据显示,LLM训练中出现的故障造成的损失是一般云计算故障的 20 倍 贡献 非堆叠的双层ToR网络,可以在两个交换机之间直接同步,很好的改善了大规模部署的可信度 适配最新的51.2Tbps的交换机芯片,可以将1K个GPU部署在Tier 1网络中,使96.3%的训练任务获得高性能的网络 我们的实验表明,使用HPN的LLM训练吞吐量比传统数据中心网络高14.9倍 2. 背景知识 LLM的并行策略 DP:每次迭代使用All Reduce同步计算梯度数据 PP:每次使用Send/Recv传递中间结果 TP:每次迭代使用All Reduce/All Gather同步输出和对应的梯度 LLM的流量特征 带宽利用率周期性突发 流的数量少 传统的数据中心网络不适用于LLM流量模式 LLM对单点故障的敏感性 LLM每次的Checkpoint间隔大概在2-4小时,按照一个3k张GPU的集群计算,每次失败导致的回滚都将导致大约3w美元的损失 常见的监控工具和异常分析工具并不能避免网络产生故障,根据实验表明,在NIC到ToR之间每个月大概有0.057%的Link故障率,在ToR交换机每个月的故障率大约是0.051%,即一个LLM训练集群每个月可能会产生1-2次的Crash,5k-60k次的Link故障 LLM网络架构的建设目标 规模化:达到15K个GPU的规模,未来可以扩展到100K个GPU的规模 高性能:尽可能小的网络跳数,尽可能使用GPU-GPU直达的连接 单点故障容错率:在网络拓扑层尽可能改善单点故障的容错率 3. HPN架构 分为前端网络和后端网络,前端网络主要负责例如管理、接口、存储等网络流量,后端网络负责LLM的训练时的流量 每个Host包含8个GPU,使用NVLink互联,双向带宽达到400GBps-900GBps 每个Host包含9个2x200Gbps的网卡,其中一个连接到前端网络,其余的8个与GPU直连,接入后端网络 每个网卡的2个端口分别连接至不同的ToR网络,这种双ToR设计可以避免单点故障 4. 双ToR网络 传统数据中心的NIC的两个光缆接入一个交换机成为单ToR设计 双ToR设计将NIC的两个光缆接口分别接入不同的ToR交换机中 两个接口配置相同的IP和MAC地址,即使其中一个ToR故障,另外一个依旧可以正常工作 基于以上,同一个NIC的两个网卡共享相同的Queue Pair Context ...

2024年8月28日 · 1 分钟

《ASTRA-sim 系列两篇》

《ASTRA-SIM: Enabling SW/HW co-design exploration for distributed DL training platforms》 1. 文章简介 1.1 摘要 现代深度学习系统主要依靠基于高性能加速器(如 TPU、GPU)的硬件平台进行分布式训练。目前的例子包括谷歌的云 TPU 和 Facebook 的 Zion。DNN 训练涉及 DNN 模型架构、并行化策略、调度策略、集体通信算法、网络拓扑和终端加速器之间复杂的相互作用。随着人工智能/ML 模型的创新不断加速发展,需要一种全面的方法来理解和驾驭未来系统中复杂的 SW/HW 设计空间,以支持未来 DNN 模型的高效训练。在这项工作中,我们做出了以下贡献:(i) 为分层扩展结构上的分布式训练建立了 SW/HW 设计空间;(ii) 开发了一个用于导航设计空间的网络模拟器;(iii) 展示了算法拓扑协同设计加速端到端训练的前景。 1.2 研究动机 对模型架构、并行策略、调度算法、集合通信、网络拓扑、终端算力的仿真 大规模并行训练成本高,在实际部署和训练之前,需要一个仿真工具进行评估 1.3 主要贡献 为分层加速器结构设计空间探索建立 SW/HW 设计空间,并确定扩展 DL 工作负载的关键瓶颈 开发名为 ASTRASIM 的端到端网络模拟器,用于评估设计空间的各个方面 使用 ASTRA-SIM 对 alltoall 和 Torus 拓扑的 all-reduce 和 all-to-all 集合的一维、二维和三维拓扑进行全面分析 2. 实现方法 3. 实验结果 实验参数 ...

2024年6月15日 · 1 分钟

文献阅读《HPCC: high precision congestion control》

1. 内容简介 1.1 摘要 拥塞控制(CC)是高速网络实现超低延迟、高带宽和网络稳定性的关键。根据多年运营大规模高速 RDMA 网络的经验,我们发现现有的高速拥塞控制方案在实现这些目标方面存在固有的局限性。在本文中,我们提出了 HPCC(高精度拥塞控制),一种能同时实现上述三个目标的新型高速拥塞控制机制。HPCC 利用网内遥测(INT)获取精确的链路负载信息,并精确控制流量。通过解决拥塞期间 INT 信息延迟和对 INT 信息反应过度等难题,HPCC 可以在避免拥塞的同时快速收敛以利用空闲带宽,并能保持近乎零的网内队列以实现超低延迟。HPCC 在硬件上的部署也是公平、简单的。我们利用商品可编程网卡和交换机实现了 HPCC。在我们的评估中,与 DCQCN 和 TIMELY 相比,HPCC 可将流量完成时间缩短达 95%,即使在大规模数据交换的情况下也几乎不会造成拥塞。 1.2 研究动机 FPC风暴:网络上一旦出现阻塞,根据RoCEv2协议会发送FPC暂停帧,进而导致网络停摆 超大延迟:由于阻塞网络队列的影响,神经网络训练时的延迟大到超乎想象 收敛速度慢:由于依赖的Feedback信息颗粒度不够,导致处理大规模阻塞事件时收敛慢 不可避免的缓存队列:由于DCQCN和TIMELY等都依赖队列信息的感知,因此无法避免延迟大的问题 复杂的调参:不同的应用有不同的流量模式,不同的环境有不同的拓扑、链接速度、交换机缓冲区大小等,因此在不同环境下部署不同应用时都要对参数进行微调 1.3 主要贡献 HPCC的发送端可以快速提高发送速率以提高带宽利用率,同时可以快速降低发送速率,以避免产生阻塞 HPCC的发送端可以快速的调整发送速率以确保每条连接的输入速率略小于其带宽能力 一旦发送速率在路由中精确计算出结果,HPCC只需要3个独立的参数就可以调整其效率和公平性 2. 实现方法 Sender发送输入给Receiver,数据在经过中间的Switch时会被Switch添加一些INT数据作为metadata,Receiver在ACK时把这些metadata传递给Sender,然后Sender根据这些INT数据调整自己的发送速率 Sender通过发送窗口限制在途数据的数量 基于在途数据量的阻塞控制信号和控制策略 快速响应而不是过响应 实现方法,FPGA网卡 3. 实验结果 小规模测试+大规模NS3仿真 测试条件 - 网络拓扑 The testbed topology mimics a small scale RDMA PoD in our production. The testbed includes one Agg switch and four ToRs (ToR1-ToR4) connected via four 100Gbps links. There are 32 servers in total and each server has two 25Gbps NICs. 16 servers are connected to ToR1 and ToR2 via two uplinks, and the other 16 servers are connected to ToR3 and ToR4. The base RTT is 5.4μs within a rack and 8.5μs cross racks. ...

2024年6月15日 · 2 分钟

文献阅读《Impact of RoCE congestion control policies on distributed training of dnns》

1. 内容简介 1.1 摘要 聚合以太网(RoCE)上的 RDMA 协议因其与传统以太网结构的兼容性而对数据中心网络产生了巨大的吸引力。然而,RDMA 协议只有在(几乎)无损网络上才有效,这就强调了拥塞控制在 RoCE 网络中的重要作用。遗憾的是,基于优先级流量控制(PFC)的本地 RoCE 拥塞控制方案存在许多缺点,如不公平、头线阻塞和死锁。因此,近年来人们提出了许多为 RoCE 网络提供额外拥塞控制的方案,以尽量减少 PFC 的缺点。不过,这些方案都是针对一般数据中心环境提出的。与使用商品硬件构建并运行通用工作负载的普通数据中心不同,高性能分布式培训平台部署了高端加速器和网络组件,并使用集体(All-Reduce、All-To-All)通信库专门运行培训工作负载。此外,这些平台通常有一个专用网络,将其通信流量与数据中心的其他流量分开。可扩展的拓扑感知集体算法本质上就是为了避免同播模式并优化流量平衡而设计的。由于这些显著特点,我们有必要重新审视以前提出的通用数据中心环境拥塞控制方案。在本文中,我们深入分析了在分布式培训平台上运行时,一些最先进的 RoCE 拥塞控制方案(DCQCN、DCTCP、TIMELY 和 HPCC)与 PFC 的对比。我们的研究结果表明,以前提出的 RoCE 拥塞控制方案对培训工作负载的端到端性能影响甚微,因此有必要根据分布式培训平台和工作负载的特点设计一种优化的、低开销的拥塞控制方案。 1.2 研究动机 标准的RoCE协议使用FPC协议控制阻塞,但是会带来不平衡、队头阻塞和死锁的问题 传统的基于RoCE的阻塞控制算法是基于通用的数据中心构建的 之前的阻塞控制协议(DCQCN、TIMELY、HPCC等)并不适用于DNN训练的场景 1.3 主要贡献 第一个在DNN分布式训练任务上进行阻塞控制方案评估的工作 使用ASTRA-sim和NS3使用不同的阻塞控制方案进行仿真验证 对每个现成的阻塞控制方案进行详细的分析,包括集合通信和DNN训练负载等 不同的最先进 RoCE 拥塞控制方案对端到端培训性能影响甚微 我们为设计一种针对分布式训练的优化且低开销的拥塞控制方案指明了方向 2. 实现方法 使用ASTRA-sim仿真 网络拓扑 系统参数 3. 实验结果 3.1 Single-switch Incast micro-benchmark FPC only 队列快速满载,随后网络被反复暂停并重复这一过程 DCQCN在设置参数时确保没有FPC触发,且带宽率用率较高 DCTCP、TIMELY等在没有触发FPC帧的条件下 3.2 Single-switch Collectives Micro-benchmark 在8-128个GPU条件下进行All-To-All和All-Reduce集合通信 在集合通信条件下不存在阻塞,所以没有阻塞控制算法对其无效 ...

2024年6月15日 · 1 分钟

文献阅读《NS3 Simulator for a study of Data Center Networks》

1. 文章简介 1.1 摘要 部署在数据中心网络(DCN)上的应用日益复杂和先进,对 DCN 的新功能和更高性能提出了更高要求。这就产生了许多设计,以应对成本、性能、可靠性、可扩展性、安全性和能源等各种挑战。设计人员经常面临的一个主要挑战是如何实现他们提出的设计或实现现有设计进行比较。虽然原型设计是更好的选择,但它有一定的局限性,而且非常复杂和昂贵。因此,仿真被认为是原型设计的替代方案。 本文介绍了使用网络Network Simulator 3(NS3)实现 DCN 的各种架构并研究其性能的案例研究。我们提供的信息包括最流行的 DCN 设计的实现,以及 NS3 可用来研究其性能的工具。我们的努力是让初学者能够轻松使用 NS3 构建 DCN 的流行设计并研究其性能。 1.2 研究动机 数据中心的网络设计通常需要大量的成本 单个FPGA网卡的成本超过$599.0,在验证DCN可行性时成本是不可估算的 1.3 主要贡献 使用NS3仿真DCN:Fat-Tree、BCube、DCell、PortLand、4-4、1-4等 2. 实现方法 在他们提出的工作中实现DCN的不同设计 3.1 Fat-Tree 一个 k-ary 的胖树结构由k个 Pod 组成,每个 Pod 由 k/2 个 k 端口的交换机组成两层网络,k 端口的交换机中的k/2个端口连接下一层级的主机,剩余的 k/2 个端口连接上一层级,最终聚合到核心层。 以 10.0.0.0/8 地址段为例,可以为胖树网络进行IP编址 3.2 BCube BCube_0 是一个 BCube 网络拓扑的基础,可以将 n 个服务器连接到 1 个 n 端口的交换机上 BCube_1 由 BCube_0 演化而来,由 n 个 BCube_0 和 n 个 n 端口的路由器组成 ...

2024年6月15日 · 1 分钟