随着深度学习训练规模的增长,在共享集群内同步训练数据的需要越来越多,怎么高效利用网络资源均衡各种负载的需要,也成了业界关注的课题。MIT 的这篇论文提出了一种网内聚合框架,可能大幅升高并行数据作业的流量负载,从而优化各种类型流量的性能。原文: In-network Aggregation for Shared Machine Learning Clusters
摘要
咱们提出了一种新的网内聚合框架 PANAMA,用于在共享集群实现分布式机器学习 (ML) 训练,可服务于各种工作负载。PANAMA 蕴含两个要害组件:(1)定制的网内硬件加速器,能够在不影响精度的前提下反对线性浮点梯度聚合; 以及 (2) 轻量级负载平衡和拥塞控制协议,该协定利用 ML 数据并行作业的独特通信模式,使不同作业之间偏心共享网络资源,同时保障长期作业的高吞吐率以及短期作业和其余时延敏感作业的低时延。咱们在 10 Gbps 收发器和大规模模仿的根底上创立了基于 FPGA 的原型,从而评估 PANAMA 的可行性。模仿结果表明,PANAMA 可能将大型工作的均匀训练工夫缩小 1.34 倍。更重要的是,通过大幅升高大型数据并行作业在网络上的负载,非聚合流量 (特地是对提早敏感的短期流量) 也能取得显著的益处,其 99% 的实现工夫晋升了 4.5 倍。
1. 简介
对准确机器学习 (ML) 模型一直增长的需要导致了深度神经网络 (DNN) 数据集和模型规模的稳步增长。因而,训练古代 DNN 模型远远超出了单个设施的能力,明天训练大型模型须要数千个加速器(Huang et al.,2018; Lepikhin et al.,2020; Moritz et al.,2018; Sun et al.,2019)。
一些学术机构和公司最近提倡应用网内聚合(Costa et al.,2012; Mai et al,2014),以进步分布式数据并行 ML 训练工作负载的性能(Bloch, 2019; Klenk et al.,2020; Li et al.,2019; Sapio et al.,2021)。通过在网络交换机外部而不是在终端主机上聚合梯度,能够缓解数据并行训练的通信瓶颈,缩小训练工夫。
然而,现有倡议侧重于绝对简略的场景,将网内聚合限度在单个交换机 (Lao et al.,2021; Sapio et al.,2021)、大量交换机(Li et al.,2019) 或单个 ML 作业上。但在实践中,随着神经网络模型的遍及和多样性的增长,为了缩小老本和资源节约,第一方和第三方训练工作负载都越来越多的向共享集群过渡(Abadi et al.,2016; Amazon, 2021; Azure, 2021; Google,2021; Jeon et al.,2019),逾越数百个机架并执行大量不同的 ML 作业。这些工作包含传统 ML 工作,如 K -means 聚类,以及最近的强化学习和深度学习等。从网络角度来看,这意味着有大量异构流,从几个 KB 到几十 GB 大小不等(Abadi et al.,2016; Azure, 2021; Google, 2021; Jeon et al.,2019),其中只有一小部分可能须要聚合。如果没有适合的机制来大规模无效共享网络资源,在更事实的状况下,网络内聚合的理论可行性就会变得令人狐疑,这一点在某些晚期部署的状况下失去了证实: 例如,当在更大规模测试网络内聚合时,NVIDIA 察看到因为拥塞造成吞吐量低于预期(Klenk et al.,2020)。
咱们在本文中提出 PANAMA(ProgrAmmable Network Architecture for ML Applications, ML 应用程序可编程网络体系架构)来解决这一问题,这是一个为具备异构工作负载的共享环境量身定制的网络内聚合框架。PANAMA 由两个次要局部组成。首先是一种全新设计的聚合硬件加速器,能够同时反对多个沉闷的训练工作。现有的基于可配置匹配表 (RMT, Reconfigurable Match Table) 架构的可编程交换机 (Bosshart et al.,2013),例如 Tofino 交换机(Intel,2018) 可用于网内聚合 (Lao et al.,2021; Sapio et al,2021),但不足浮点运算反对,并且流水线架构不足灵活性(Gebara et al.,2020),从而造成准确性和性能降落。相比之下,咱们抉择了一种 串连模式 (bump-in-the-wire) 办法,在这种办法中,网内加速器与交换机解耦。该设计的灵感来自于最近在云上部署的可编程网卡(NIC)(Firestone et al.,2018),在不就义训练精度并且不要求对交换机逻辑进行任何更改的状况下提供了最大的灵活性。咱们的设计能够在线速(10-100 Gbps) 下运行,并可能无效利用逻辑区域。
PANAMA 的第二个组成部分是与轻量级拥塞控制协议相结合的负载平衡机制,容许在不同作业之间高效、偏心的共享网络带宽。PANAMA 将聚合流量散布在多个聚合树中,从而缩小网络热点,进步网络性能。现有数据中心拥塞控制协议 (Alizadeh et al.,2010; Kumar et al.,2020; Mittal et al.,2015; Zhu et al.,2015) 不适宜网内操作,因为须要假如服务器之间是点对点连贯,而不是基于树的配置。相比之下,咱们的新型拥塞控制协议利用了网内聚合的独特个性 (和机会) 来进步性能,同时确保加速器上无限的缓冲区空间被 ML 作业偏心共享,而不会溢出。此外,咱们的拥塞控制算法兼容现有数据中心应用的基于 ECN 的协定(Alizadeh et al.,2010; Zhu et al.,2015),从而可能与其余非网内聚合流量偏心共享网络资源。
咱们的工作揭示了以前没有留神到的网内聚合的益处,钻研界狐疑网内聚合的理论价值,值得注意的是,梯度聚合只形成整个训练任务的一小部分,因而对整体训练工夫的影响无限。咱们认为,兴许与直觉相同,网内聚合的真正动机与其说是为了进步训练工作自身的性能,不如说是为了缩小数据并行梯度替换产生的通信量。将网络中的流量聚合在一起能够大幅升高网络使用量 (单个数据并行作业在执行期间能够生成超过 1 PB 的数据),从而为其余流(包含非数据并行的 ML 作业和提早敏感流) 开释网络资源。
咱们基于 FPGA 的原型演示了硬件加速器的可行性,并提供了宽泛的模仿剖析,以评估大规模的 PANAMA 负载平衡和拥塞管制的益处。结果表明,PANAMA 缩短了 99% 时延敏感型工作的实现工夫,晋升幅度最高达 4.5 倍(均匀为 2 倍),同时缩小 ML 均匀训练工夫最高达 1.34 倍。
2. 网内聚合示例
最常见的分布式训练方法之一是数据并行训练,其中神经网络被复制到 N 个工作节点 (或正本) 上,每个工作节点解决一小部分训练数据 (小批量) 来计算其部分模型梯度。在每次迭代中,工作节点必须通过替换和聚合梯度来同步各自的模型,以确保收敛 (Narayanan et al.,2019)。这个步骤被称为allreduce,能够应用参数服务器(Li et al.,2014) 或 Ring-AllReduce (Sergeev & Balso, 2018; Uber Eng., 2017)。
allreduce 步骤对网络架构造成了很大的压力,因为在整个训练过程中,须要屡次替换整组模型梯度。例如,对于有 1000 个工作节点的训练工作,须要 1000 次迭代能力达到目标精度的 1 GB DNN 模型,产生的总流量大概为 2 PB,其中包含发送梯度,以及接管聚合值。最近的提议提倡应用网内聚合来进步 ML 训练工作负载的性能(Bloch, 2019; Klenk et al.,2020; Lao et al.,2021 年; Li et al.,2019; Sapio et al., 2021)。直觉上,在 allreduce 步骤中缩小网络上传输的数据量能够缩短通信工夫,从而让训练更快。
然而,剖析结果显示,网内聚合导致的整体训练工夫改良只有 1.01-1.8 倍(Sapio et al.,2021 中的表 2)。这有两个起因。首先,计算工夫占据了整体训练工夫的很大一部分。因而,只有一小部分工夫花在通信上,从而限度了可达到的最大收益。其次,即便通信工夫蕴含了整个训练工夫,与最先进的 Ring-AllReduce 策略相比,网内聚合实践上能够实现最大的改良是在大音讯通信的状况下,通信工夫缩小 2 倍(Klenk et al.,2020)。
为了验证这一察看后果,咱们应用第三代英伟达 GPU(Pascal P100、Volta V100 和最近推出的 Ampere A100)来训练五个风行的图像分类模型。抉择这些 DNN 模型是因为它们涵盖了宽泛的规模和计算要求。咱们应用 TensorFlow 框架和 ImageNet 数据集来训练这些模型,并在 TensorFlow 基准套件 (TensorFlow, 2021) 中指定了批量大小。
为了防止分布式训练框架或低效的网络栈造成的任何测量偏差,咱们在单 GPU 节点上训练模型来测量每次迭代的计算工夫,并将单次迭代中替换的梯度大小除以链路带宽来预计通信工夫。为了在不同 GPU 之间保持一致,假如 P100、V100 和 A100 的链路带宽别离为 10Gbps、40Gbps 和 100Gbps。
图 1a 显示了不同 DNN、GPU 和网络带宽之间的通信工夫与总训练工夫 (通信 + 计算) 的比率。该图显示,用于通信的训练工夫比例在 0.11-0.70 之间,随着网络速度的进步,这一比例也在升高。这表明网内聚合对数据并行作业的益处也在随着工夫的推移而缩小。图 1b 阐明了这一点,它显示了网内聚合对具备 100Gbps 链接的 A100 GPU 的预期训练工夫减速在 1.06-1.28 之间(而对具备 10Gbps 链接的 P100 来说是 1.15-1.53)。事实上,咱们假如网内聚合的最佳状况是梯度计算和通信之间没有重叠。这是十分激进的,因为古代分布式 ML 框架利用重叠来最小化通信对训练工夫的影响,因而,咱们预计缩小通信的益处将不那么显著。
相同,在本文中,咱们认为网内聚合的真正机会在于,通过缩小注入网络的整体数据并行流量来进步共享集群中非数据并行作业的性能,从而为其余流量开释出网络带宽。如图 2 所示,共享的 ML 集群由一组异质流量组成,其传输速率从几 KB 到几百 GB 不等。图的右边局部 (蓝条) 显示了蕴含模型梯度的并行数据流的传输大小,咱们称之为聚合流,以表明它们是网内聚合的良好候选者。图的左边 (绿条) 显示了不适宜网内聚合的流量,即非聚合流,包含不须要任何聚合的流量,例如,(a)数据集传输和 (b) 由并行流水线 (Huang et al.,2018; Narayanan et al.,2019) 或并行模型 (Shoeybi et al., 2020) 产生的流量,以及须要聚合但网内聚合没有显著益处的短流,例如 (c) 由强化学习训练 (RL) 产生的流 (Li et al.,2019; Moritz et al.,2018) 和(d)更传统的 ML 作业,如 k -means 聚类(Rossi & Durut,2011)。
咱们发现,尽管非聚合流不适宜网内聚合,但能够间接的从网内聚合中受害。然而,现有的网内聚合解决方案并不是为在共享环境中运行而设计的。正如咱们在第 7 节中所展现的,当初的数据中心解决方案只反对聚合和非聚合流的共享,但没有适当的负载平衡和拥塞管制机制来应答多租户环境。相比之下,PANAMA 联合了对多个 ML 作业的原生硬件反对以及为网内聚合量身定制的拥塞控制协议,即便在大量聚合作业的状况下,也能靠近非聚合流的现实性能,同时,缩小聚合作业自身的训练工夫。
3. PANAMA 概述
本节将提供 PANAMA 的概要介绍,接下来在第 4 节和第 5 节中将具体介绍其要害组成部分。咱们假如传统数据中心网络是相似于图 3 那样的多层 CLOS 拓扑构造 (Al-Fares et al.,2008; Singh et al.,2015)。PANAMA 集群中的每个交换机(PSwitch) 蕴含一个传统交换机,例如 Broadcom Tomahawk(Broadcom,2020),与串连聚合加速器相连。
① 工作节点安置。 当提交新的 ML 训练作业时,数据中心调度器确定最佳的分布式训练策略 (Jia et al.,2019; Narayanan et al.,2019; Sergeev & Balso,2018),并将作业实例化在一组间接运行在集群服务器或虚拟机上的工作节点上。这些工作节点可能在同一个机架上,也可能散布在多个机架上,PANAMA 对工作节点的安置不做任何假如。网内聚合的流量(聚合流量) 的抉择基于运营商的偏好,能够在控制器逻辑中配置。在咱们的试验中,咱们将所有大小超过 40MB 的 reduce 数据并行流标记为聚合流量。这个阈值是咱们依据教训抉择的,因为在较短的流量中看到的益处简直能够忽略不计。
② PSwitch 的抉择和初始化。 当 PANAMA 控制器为一项工作抉择网内聚合时,须要初始化连贯工作节点所有生成树的 PSwitch。如果所有工作节点都在同一个机架上,这些树只是蕴含繁多架顶 (ToR) 交换机,如果工作节点散布在多个机架上,则可能包含多层替换(见图 3)。PANAMA 利用古代数据中心的多路径连贯,将繁多工作的聚合流量散布在多个树上,从而进步网络效率,缩小拥挤。
PANAMA 控制器为每个聚合树生成惟一的 IP 组播地址,并沿着树的门路在 PSwitch 内配置转发条目。在上游方向,PSwitche 被配置为向聚合树根部转发聚合数据包,而在上游方向,聚合数据包应用本地 IP 组播反对 (如果可用) 或通过在转发表中增加单个条目被路由回工作节点。PANAMA 控制器还在门路上用作业状态和执行聚合所需的信息初始化网内聚合加速器(第 5 节)。
③ 工作节点设置。 最初,PANAMA 控制器将选定的工作节点配置为应用网内聚合,并告诉他们选定聚合树的 IP 组播地址。PANAMA 不须要服务器上任何特定的硬件反对,PANAMA 通信库能够取代支流 ML 框架所应用的通信库,例如 NCCL 和 MPI(NVIDIA, 2021; The Open MPI Project, 2021)。PANAMA 库将梯度封装成加速器反对的数据包格局(见图 4)。
4. 网络设计
本节咱们将介绍 PANAMA 如何解决在一个由聚合流和非聚合流组成的共享环境中运行网内聚合的挑战(见图 2)。这须要解决两个问题。首先是如何在多层数据中心中平衡聚合流量,以无效利用网络资源,并尽量减少非聚合流量的拥挤。PANAMA 通过利用多个聚合树来解决这个问题。第二个问题是如何在聚合流和非聚合流之间偏心分享网络带宽,而不会造成硬件加速器缓冲区溢出。为此,咱们提出了一种基于 ECN 的拥塞控制算法,对聚合包和整个构造的 PAUSE 帧设置了拥塞窗口下限,以确保即便在拥挤的状况下,也能保障确定性的无损运行。
4.1. 路由和负载平衡
当初数据中心网络通常依附等价多路径 (ECMP, Equal Cost Multi Path) 协定实现网络负载平衡,并确保属于某个 TCP 流的所有数据包通过雷同的门路进行路由,从而防止接管方失序 (Hopps,2000)。因为大多数数据中心的流量都很短(Alizadeh et al.,2010; 2013; Greenberg et al.,2009),ECMP 通常足以确保流量在网络中正当散布。然而,聚合流量通常十分大,依照 ECMP 的要求,将这些流量限度在繁多门路(聚合树) 上,会造成重大的网络不均衡。这对抢夺带宽的提早敏感的短流量特地无害,它们将面临更多的排队提早。为了防止这种状况,PANAMA 在每个训练任务中应用多个聚合树,将流量扩散到多个门路上,避免出现拥挤热点。
如前所述,PANAMA 控制器向工作节点提供一组 IP 组播地址,代表为一项工作抉择的聚合树,工作节点以轮询的形式将梯度包调配到不同的树上。例如,在图 3 的拓扑构造中,有四个聚合树 $AggTree_i, i=1,…,4$ 和 8 个 ID 为 $p_j, j=1,…,8$ 的聚合包,假如工作节点开始向每个树发送单个数据包,咱们的协定通过如下形式实现负载平衡: $\{p_1, p_5\} → AggTree_1; \{p_2, p_6\} → AggTree_2; \{p_3, p_7\} → AggTree_3; \{p_4, p_8\} → AggTree_4$,其中→示意每组数据包的目的地聚合树。例如,p1 和 p5 被发送到 $AggTree_1$。留神,数据包的编号也反映了发送程序,因为轮流发送,p5 只有在后面的数据包被发送到其余树之后才被发送。这种机制均衡了各树的负载,并且因为程序是确定的,因而不须要工作节点之间的协调。非聚合流量不受此影响,应用运营商定义的负载平衡协定进行转发。
4.2. 拥塞管制
本节咱们将介绍 PANAMA 拥塞控制协议,首先概述聚合流量的拥塞控制协议需要,而后解释咱们提出的协定如何满足这些需要。
4.2.1. 需要
$R_1$ 对多点通信的反对。 传统拥塞控制协议假设在 (源、目标) 对之间进行单播、点对点通信。与此相反,网络内聚合波及不同实体之间的多对多通信。因而,典型的基于丢包或拥塞告诉的限速机制并不间接实用。一个天真的解决方案是在 PSwitch 中施行拥塞管制,用逐跳流量序列取代树状的多点流量。然而,这将节约贵重的芯片封装面积。
$R_2$ 小型缓存。 因为硬件加速器须要在数百个端口上以线速运行,咱们不能依附 DRAM 之类的内部存储器,而只能应用片上缓存。片上存储器耗费了大量芯片面积,因而限度片上存储器的大小并通过在多个工作中偏心分享无限的存储器并无效应用就显得至关重要。与传统网络的一个要害区别是,不仅因为拥挤须要缓存,而且还须要存储聚合包,直到来自所有工作的聚合包达到交换机。这就引入了流量之间的依赖性。因为只有在收到所有数据包后能力计算出后果,工作节点的发送速度必须匹配,否则,较快发送端的数据包必须被缓存,直到收到最慢发送端的数据包,从而节约了可用于其余 ML 工作的资源。这一属性将网内聚合与外表上相似的 co-flow 形象辨别开来(Chowdhury & Stoica,2012),在后者中,单个流能够应用不同的速率。
$R_3$ 与传统协定的兼容性。 协定的一个要害需要是可能与支流拥塞控制协议共存。特地是,该协定应该是 TCP 敌对的,因为 TCP 是数据中心事实上的规范拥塞控制协议。在交换机上应用加权偏心队列 (WFQ, Weighted Fair Queues) 来拆散聚合流和非聚合流可能看起来是个简略的解决方案,但事实并非如此,它不能在属于不同工作的聚合流之间提供偏心的共享,而且还波及到动静抉择调配给两个流量类别中每一个的最佳权重的简单工作。
$R_4$ 无损操作。 与传统 TCP 点对点流量不同,如果 PANAMA 中的某个聚合数据包失落,就须要从新传输几个数据包,这可能会大大降低整个吞吐量。因而,即便在高网络负载下,确保缓冲区永不溢出也是至关重要的。
4.2.2. 设计
接下来咱们探讨 PANAMA 拥塞控制协议的要害个性,并解释如何满足上述需要。咱们在图 5 中提供了协定的伪代码,该协定是终端主机上的 PANAMA 通信库的一部分,应用这一协定不须要对训练框架进行任何更改。
隐式确认。 现有数据中心拥塞管制机制利用网络交换机 (如丢包或 ECN 标记) 和终端主机 (如 RTT) 的信号来检测拥挤的开始并调整发送方的数据包发送速率 (Alizadeh et al.,2010; Dong et al.,2015; Ha et al.,2008; Handley et al.,2017; Mittal et al.,2015; Zhu et al.,2015)。然而,网内聚合不能复用这种机制,因为新的数据包是在网络内的每个交换机上通过将几个传入的数据包聚合成一个来构建的。这毁坏了数据包和对应的确认音讯之间的一对一映射。相同,咱们的设计利用了网内聚合操作的独特属性。因为聚合后果的数量等于本地计算梯度的数量,每个工作节点都冀望为每个发送的聚合数据包提供一个后果包。因而,工作节点能够将聚合后果包视为隐含的确认信号,以减少窗口大小,如图 5 所示。这就克服了在 PSwitch($R_1$) 上维持每个流量拥挤状态的须要。此外,拥塞管制在每个聚合树上独自运行,防止了在多条门路上从新排序数据包的须要,当与咱们的负载平衡协定 (4.1) 相结合时,能够提供多路径拥塞控制协议的益处(Peng et al.,2013),而没有额定的复杂性。
ECN 标记。 咱们的拥塞控制协议受到 DCTCP(Alizadeh et al.,2010)的启发,依附 IP 头中的 ECN 标记对察看到的网络拥挤做出反馈。在 PANAMA 中,咱们扩大了这一机制,使聚合工作速率在工作节点之间同步。网内聚合的一个显著特色是,当数据包在聚合树中向上挪动时,PSwitch 必须在多个数据包中聚合梯度并产生聚合后果数据包,而这可能会导致失落网络拥挤状态信息。然而,在 PANAMA 中,PSwitch 内的聚合加速器保留了聚合数据包的 ECN 字段信息,每个硬件加速器对收到的数据包的 ECN 字段进行比特或 (OR) 操作,将 ECN 位镜像到生成的聚合数据包的 IP 头中 (见图 4)。因而,聚合数据包将携带 ECN 位返回给所有的工作节点。与传统的基于 ECN 的拥塞管制计划不同,因为后果包被用作隐式确认,因而不须要将 ECN 回传给发送端。工作节点查看后果包,如果 ECN 位被设置,就会调整发送速率,详见图 5。这种机制确保每个聚合树的拥塞窗口在聚合树($R_2$) 中的工作节点之间以同步的形式增长和放大。此外,因为拥塞管制机制与 DCTCP 相匹配,能够保障与现有的传统协定兼容,正如咱们在第 7 节的评估中显示的那样($R_3$)。
拥塞窗口的下限。 为了防止因为加速器缓冲区溢出而导致数据包失落,PANAMA 的拥塞协定对训练工作节点的拥塞窗口大小设置了下限,以匹配每个聚合树加速器中的最小可用缓冲空间,从而确保总是能够包容传入的数据包,而不会因为不足可用的缓冲空间而被抛弃 ($R_4$)。为了保护最新的可用缓冲空间,硬件加速器应用一个称为cwnd_cap
的字段更新每个聚合数据包。数据包中为 cwnd_cap
保留了 16 位,以便在聚合数据包回升到聚合树根部时,捕捉到加速器上存储数据包的最小可用内存。每个加速器依据沉闷训练作业的数量 (packet_memory/num_jobs
) 计算其可用内存,如果可用缓冲空间小于收到的聚合数据包的 cwnd_cap
,则笼罩cwnd_cap
,否则保留最小cwnd_cap
值。而后,最终值与梯度聚合后果一起被发送给所有工作节点。如上所述,收到聚合数据包被视为确认信号,使工作节点可能发送下一组数据包。相似于 TCP 协商窗口大小 (数据包在工作节点创立时被假设为具备固定大小),cwnd_cap
的值被用作每个工作节点以后最大可解决数据包数量的下限。咱们依附规范以太网流量管制机制,通过 PAUSE 帧确保网络内的加速器不会造成交换机缓冲区溢出,从而造成端到端无损架构。在数据包损坏或失败的状况下,依然可能有丢包(Zhuo et al.,2017),但能够应用简略的超时机制来解决这个问题。因为咱们协定的无损属性,超时值的设置不须要太激进,从而避免虚伪重传。
5. 聚合加速器设计
接下来咱们将介绍用于反对 PSwitch 中浮点线速聚合的硬件加速器架构(见图 6a)。
① 包头解析器。 每个输出端口的解析器模块查看传入数据包的 EtherType
和DSCP
字段 (图 4),以将聚合数据包从其余流量中分离出来。DSCP
字段值为 56 的 IPv4 报文被认为是聚合报文,被发送到专用的聚合缓冲区,而其余数据包则间接转发到替换芯片,从而确保非聚合包不会因为聚合包产生行首阻塞,并且在通过加速器时只会经验最小的提早。
② 管制逻辑。 加速器为作业放弃以下状态: Ports_bitmap
和 Expected_VID
。Ports_bitmap
寄存器是由 PANAMA 控制器在配置作业的聚合树时设置的,标识了聚合中的加速器输出端口。Expected_VID
寄存器用于纠正聚合以及谬误引起的丢包检测,初始化为 0。加速器依附图 4 所示的作业 ID(Job ID, JID
)和树 ID(Tree ID, TID
)字段来辨认执行聚合工作时必须应用的 Ports_bitmap
和Expected_VID
。实际中,必须为每个作业保护一个 Ports_bitmap
,并且必须为作业中的每个聚合树保护一个Expected_VID
。咱们用图 6a 中的例子来阐明加速器对于单个作业和单个聚合树的聚合管制逻辑。须要保护一个Ports_bitmap
寄存器和一个 Expected_VID
寄存器。因为 Ports_bitmap
寄存器被设置为 1111,控制器必须期待,直到四个输出端口中的每个端口至多有一个数据包可用。当这个要求被满足时,数据包的头被复制到头寄存器中,它们的 VID
字段与 Expected_VID
寄存器中的 0 值进行比拟。因为工作节点在具备雷同 VID
的数据包中封装了雷同的梯度集,因而数据包上的 VID
字段能够作为梯度标识符。同时还能够充当数据包序列号,工作节点为聚合树中发送的数据包调配递增的 VID
。因为聚合树保障按程序交付,加速器应用Expected_VID
寄存器跟踪预期数据包,由此确保正确的梯度聚合,并容许检测由数据包损坏引起的丢包。当所有的 VID
字段与 Expected_VID
寄存器的以后值相匹配时,如图 6a 所示,梯度通过聚合数据门路内的 加法树 (adder tree) 传递,Expected_VID
寄存器被递增。否则,缺失值的梯度将被抛弃,聚合将以下一个 Expected_VID
持续进行。工作节点通过设置数据包头的 FIN
位来告诉加速器曾经发送了所有聚合数据包,从而重置加速器状态。
浮点反对。 使网内聚合实用化的一个要害挑战是在以后数据速率 (10Gbps 和 40Gbps) 和将来数据速率 (100Gbps) 下反对浮点聚合。咱们的设计是在假如肯定的时钟速率 (见附录 A 的图 11) 的前提下,通过调整从每个输出端口向每个输入端口传输数据的总线宽度来实现这一指标,以匹配所需的端口速率。聚合包有效载荷从参加工作的每个专用缓冲区流向多个加法树,并行加法树的数量与数据总线中可承载的梯度数量成正比。如图 6a 所示,从而实现 SIMD 架构,其中梯度被划分到两个加法树上,加法树并行工作,后果被串联起来并被送到输入端口。
6. 基于 FPGA 的原型
咱们评估了在装备有 1 个 Xilinx Virtex-7 FPGA 和 4 个 10 Gbps 收发器的 NetFPGA-SUME 板 (Zilberman et al.,2014) 上实现聚合加速器的可行性。咱们将 Xilinx LogiCORE IP 核 (Xilinx,2014) 纳入设计,以反对浮点加法 (与 IEEE-754 单精度规范齐全兼容)。LogiCORE IP 核将最大时钟速率限度在 220MHz,因而咱们实例化了两个加法树正本,以满足所需的线路速率(10 Gbps),并抉择了 200 MHz 时钟速率。表 1 总结了加速器由非聚合数据包和聚合数据包察看到的疾速转发时延。如图所示,加速器引入的提早是最小的,甚至对聚合数据包也是如此。咱们还测量了针对最近的 VU19P FPGA 板(Xilinx, 2021) 的资源利用率 (见附录 A 的表 2)。结果显示,咱们的设计具备较小的资源占用,对于触发器(FF, Flip-Flops) 的可用查找表 (LUT, Lookup-Tables) 别离只应用了 1% 和 0.26%。这一点很重要,表明咱们的设计能够很容易的装置在小芯片上,从而有可能通过 chipleg 将其与主替换芯片独特封装。此外,还表明有空间通过实例化更多加法树来减少并行性,以维持更高的数据速率。初步分析表明,咱们的设计能够扩大到 100 多个端口,基于 FPGA 实现每端口 100Gbps,或者基于 ASIC 实现每端口 400Gbps(见附录 A)。
原型评估设置。 咱们用 4 台 Dell R740 双核 PowerEdge 服务器、10 Gbps 光收发器和一个 Arista 7050S 交换机构建了一个 PANAMA 测试平台,通过如图 6b 所示的串连配置将 FPGA 板连贯到服务器和交换机之间。
性能正确性。 如图 4 所示,咱们应用 libtins 库 (libtins, 2021) 来结构 PANAMA 包来评估架构的正确性。模仿 ML 作业生成的梯度的随机生成的浮点数被封装在 PANAMA 包中,并发送到 PSwitch 进行聚合。在所有试验中,咱们察看所有收到的数据包中正确的聚合值。
吞吐量性能。 咱们首先测量两台服务器在没有任何两头 FPGA(NoFPGA)的状况下,通过交换机间接互连时能够达到的最大吞吐量。咱们应用四个并行的 iperf
实例,以确保试验不受 CPU 的限度。而后,咱们将 FPGA 连贯到模仿 PSwitch 架构的交换机上 (第 3 节),并应用雷同的工作负载运行两个额定的试验来测量FPGA-noagg 和FPGA-agg门路的吞吐量。为了与 iperf 兼容,咱们批改了管制逻辑,使繁多输出穿梭聚合门路。咱们将 Port bitmap
寄存器值初始化为 0001
,并将数据包生成服务器连贯到加速器的第一个端口。咱们应用 UDP 数据包而不是 TCP 数据包,因为在后者的聚合过程中,数据包的有效载荷会被聚合批改,因而,TCP 校验会失败。图 7 显示,FPGA-noagg 的吞吐量与 NoFPGA 的吞吐量靠近,表明对于非聚合数据包,FPGA 引入的开销能够忽略不计。然而,在 FPGA-agg 的状况下,吞吐量的变动稍大(在 8.86Gbps 到 10.48Gbps 之间震荡)。这是应用 UDP 而不是 TCP 的后果,因为 UDP 会导致流量激增。尽管如此,均匀吞吐量与以前的试验统一,证实了咱们的原型有能力反对 10Gbps 的聚合。
7. 大规模模仿
本节咱们应用 OMNeT++
包级网络模拟器的定制版本 (Ltd.,2021) 评估 PANAMA 在大规模网络下的性能。模仿剖析的次要播种是: (i)与最先进的 Ring-AllReduce 相比,PANAMA 将 99% 的短流量 (<40 MB) 实现工夫 (FCT, flow completion time) 升高了 4.5 倍,将长流量的吞吐量进步了 1.33 倍,并将聚合流量的训练工夫放慢了 1.34 倍。(ii)PANAMA 更高的性能是因为它有能力缩小网络上传输的数据量,以及有能力在拥挤期管制工作节点的数据包发送率。咱们证实了 PANAMA 比没有咱们的拥塞控制协议的基线要好 3.5 倍,缩小了 99% 短流量的 FCT。(iii)PANAMA 的多树聚合技术能够平衡聚合流量对网络门路的负载。(iv)PANAMA 的拥塞控制算法为所有流量提供了偏心的带宽调配。
办法和设置。 在咱们的试验中,假如网络为非阻塞的穿插 CLOS 拓扑构造 (Al-Fares et al.,2008),包含 1024 台服务器通过 10Gbps 链接互连。咱们将 ECN 标记阈值设置为 85 个数据包,并依据最先进的 FPGA(Intel,2016; Xilinx,2021) 的最大缓冲容量,将聚合加速器的缓冲容量限度在 64MB。假如咱们的工作负载由不同规模的聚合流量和非聚合流量组成,这些流量来自网络搜寻和数据挖掘流量散布 (Alizadeh et al.,2013; Greenberg et al.,2009)。流量达到工夫采纳指数分布(泊松过程),咱们扭转均匀达到工夫以模仿不同的网络负载。对于聚合流量,调配给每个作业的节点数量是随机抉择的,范畴从 16 到 96,而 DNN 模型是从六个驰名的图像分类模型(VGG16、AlexNet,Resnet152、Resnet50、Inceptionv3 和 GoogleNet) 中应用加权随机散布抉择的。为了对计算工夫进行建模,咱们在第 2 节的试验中应用 P100 GPU 测量的值。
调度作业。 咱们的作业调度器将属于同一作业的节点尽可能凑近,以确保最佳的基线性能。非汇集流的源头和目的地是对立抉择的 (Alizadeh et al.,2013)。咱们应用 DCTCP(Alizadeh et al.,2010) 作为非聚合流的默认传输层协定,并应用 PANAMA 拥塞管制来解决聚合流。
配置。 咱们思考五种网络配置: (1) Ideal: 现实设置,其中聚合流、短流和长流齐全拆散,并在各自的专用集群中提供服务,没有任何资源共享。(2) Ring-AllReduce: Horovod(Sergeev & Balso,2018)中应用的分布式训练的最先进技术。(3) SwitchML∗: 最近基于 Tofino 的网内聚合倡议的增强版 (Sapio et al.,2021)。咱们的加强使 SwitchML 可能反对多租户、作业共享和负载平衡。然而,正如其最后的实现一样,它没有拥塞管制机制。(4) PANAMA: 咱们的倡议。(5) PANAMA-0.88 和 PANAMA-0.94: PANAMA 的两个局部同步版本。数字 0.88 和 0.94 代表了 PANAMA 在每个迭代中同步的聚合节点的比例。这两种配置对于评估疏忽最慢的链路和在收到工作节点的 88%(或 94%) 的数据包后立刻进行聚合的影响很有用。
PANAMA 缩小了聚合流量对短流量 (<40MB) 的影响。咱们从基线网络 (20% 的负载由非聚合流量组成) 开始,缓缓减少 DNN 训练作业的达到频率,将聚合流量引入网络,直到 80% 负载。图 8a 显示,随着聚合负载的增长,应用传统的 Ring-AllReduce 办法,短流量的 99%-tile FCT 明显增加。相比之下,PANAMA 加重了拥挤的影响,即便在高负载下也紧跟现实线。在最高负荷下(80%),PANAMA 比 Ring-AllReduce 缩小了 4.5 倍的 FCT。PANAMA 的收益来自于网内聚合与拥塞管制和负载平衡的联合。SwitchML∗执行了网内聚合,可能缩小 FCT,并进一步与负载平衡相结合。然而,它不足拥塞管制,因而无奈与 PANAMA 等量齐观,在就义短流量的 FCT 的状况下,给聚合流量带来了不偏心的劣势。同样,PANAMA-0.88 和 0.94 的局部聚合也靠近 SwitchML∗,因为没有使工作节点的速度减慢到足以与拥挤的链接相匹配。
网内计划进步了长流量的吞吐量。 接下来,咱们钻研了聚合负载的减少对长流量的影响。图 8b 的结果表明与 Ring-AllReduce 相比,PANAMA 可能将长流量的吞吐量进步到 1.33 倍。然而,因为长流量和聚合流较大(>40 MB),这种改良与其余网内计划相匹配,能够充分利用额定的可用带宽。
网内计划晋升了 ML 作业的实现工夫。 如图 8c 所示,PANAMA 比基线 Ring-AllReduce 办法进步了 1.34 倍的 ML 作业训练工夫,而 SwitchML∗的体现仅稍逊一筹,为 1.05 倍。SwitchML∗和其余 PANAMA 变体的体现优于 PANAMA,因为它们疏忽了网络内的拥挤,就义了短流量。然而,这些办法所测得的训练工夫并没有思考到因为 SwitchML∗不反对浮点运算而产生的潜在精度损失(或迭代次数的减少),也没有思考到 PANAMA-0.88 和 PANAMA-0.94 中疏忽局部梯度的影响。
负载平衡的影响。 为了确定网络流量负载平衡的重要性,咱们创立了图 3 所示的拓扑构造,并用 8 个工作节点运行聚合训练作业。咱们通过减少产生长流量的节点数量来减少网络负载。与之前试验不同的是,咱们思考了训练工作的实现工夫,在这个试验中,咱们只思考了在一个迭代中计算的聚合梯度的工夫(聚合提早)。图 9 显示了 6 种状况下的聚合延时: PANAMA,只有一棵聚合树的 PANAMA(即标记为 PANAMA-Agg1,…, PANAMA-Agg4 的四个场景),以及 Ring-AllReduce。如图所示,因为 PANAMA 应用了所有 4 个聚合树,因而其性能优于其余所有计划。乏味的是,应用繁多聚合树的网内聚合的性能可能比 Ring-AllReduce 的性能差。与能够通过 ECMP 或数据包散射等路由技术实现多样化的终端主机门路不同,从每个工作节点到 PSwitch 的门路是惟一的,如果负载没有失去适当的均衡,聚合工夫将受到重大影响。
偏心。 为了证实 PANAMA 的拥塞管制机制实现了跨流的偏心速率调配,咱们建设了一个试验,在聚合流和对提早敏感的非聚合流之间共享瓶颈链路。咱们从非聚合流开始,0.25 秒之后启动聚合流。图 10a 显示 PANAMA 在两个流之间均匀共享链路带宽。相比之下,图 10b 显示,如果没有 PANAMA 的拥塞控制协议,对提早敏感的非聚合流会面临饥饿。
8. 相干工作
咱们的工作与 SwitchML(Sapio et al.,2021)和 ATP(Lao et al.,2021)密切相关,这两种办法都应用市面上的可编程交换机 (Intel,2018) 来执行梯度聚合。尽管应用可编程交换机简化了部署,但有两个重要的限度。首先,明天的可编程交换机只反对定点算术。因而,SwitchML 和 ATP 须要认真的将特定模型的浮点梯度转换为定点示意,这可能会影响达到目标精度所需的训练工夫。其次,Tofino 交换机在不同的流水线中不放弃状态,并且每个流水线中的阶段数量无限 (Gebara et al.,2020)。因而,SwitchML 和 ATP 在单项工作可应用的端口数量方面是无限的,在最大数据包大小方面也是如此。相比之下,PANAMA 的加速器设计很灵便,能够反对线速的浮点运算,并且能够扩大到数百个端口。Li 等人提出了网内聚合,以减速强化学习工作,应用的设计是在单个 FPGA 内实现所需的聚合逻辑和替换性能(Li et al.,2019)。与咱们不同的是,他们的倡议假设了能够存储在片上的小规模模型(RL 模型),但这使得他们的设计无奈实用于明天具备数十亿参数的大规模 DNN 模型。此外,还要求网络的速度随着聚合线速的增长而成比例增长。Mellanox 提出了一个名为 Sharp(Bloch,2019) 的网内聚合解决方案,应用交换机内专门用于汇合还原操作 (allreduce) 的定制硬件。但因为没有公开设计,很难揣测是如何实现的,以及是否 / 如何可能扩大到高数据率。此外,Sharp 是面向 HPC 的,须要专属的网络拜访,使得它不太适宜明天云数据中心的共享 ML 集群。同样,Klenk 等人提出了一个硬件单元,能够纳入交换机,以减速 allreduce 操作(以及其余汇合原语)(Klenk et al.,2020)。然而,他们的解决方案依赖于共享内存原语,为了确保作业没有别名指针而引入了额定的复杂性。更宽泛的说,与所有先前的工作不同,咱们通过思考事实的共享环境而不是专用集群,重点关注应用网内聚合对整个数据中心流量的影响。
9. 论断
最近的倡议主张应用网内聚合来改善分布式 ML 训练工夫。然而,因为不足无效的聚合硬件、路由和拥塞控制协议,这些办法的理论可行性受到了限度,不适宜共享数据中心环境。本文迈出了填补这一空白的第一步,提出了 PANAMA,作为在共享集群中运行的新型网内聚合框架。PANAMA 利用网内聚合的独特属性,在不就义精度的状况下实现疾速硬件加速,并无效和偏心的应用网络资源。与通常的观点相同,咱们证实了网内聚合的益处能够延长到非聚合流量,并且不只限于数据并行的 ML 作业。
致谢
感激咱们的匿名评论者。这项工作失去了微软钻研博士奖学金我的项目、英国 EPSRC 基金 EP/L016796/1、NSF 基金 CNS-2008624、ASCENT2023468 和 SystemsThatLearn@CSAIL Ignite 基金的局部反对。
参考资料
Abadi, M., Barham, P., Chen, J., Chen, Z., Davis, A., Dean, J., Devin, M., Ghemawat, S., Irving, G., Isard, M., Kudlur, M., Levenberg, J., Monga, R., Moore, S., Murray, D. G., Steiner, B., Tucker, P., Vasudevan, V., Warden, P., Wicke, M., Yu, Y., and Zheng, X. TensorFlow: A System for Large-Scale Machine Learning. In Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation (OSDI’16), pp. 265–283, USA, 2016. USENIX Association. ISBN 9781931971331.
Al-Fares, M., Loukissas, A., and Vahdat, A. A scalable, commodity data center network architecture. In Proceedings of the ACM SIGCOMM 2008 Conference on Data Communication (SIGCOMM’08), pp. 63–74, New York, NY, USA, 2008. Association for Computing Machinery. ISBN 9781605581750. doi: 10.1145/1402958.1402967. URL https://doi.org/10.1145/1402958.1402967.
Alizadeh, M., Greenberg, A., Maltz, D. A., Padhye, J., Patel, P., Prabhakar, B., Sengupta, S., and Sridharan, M. Data Center TCP (DCTCP). In Proceedings of the ACM SIGCOMM 2010 Conference (SIGCOMM’10), pp. 63–74, New York, NY, USA, 2010. Association for Computing Machinery. ISBN 9781450302012. doi: 10.1145/1851182.1851192. URL https://doi.org/10.1145/1851182.1851192.
Alizadeh, M., Yang, S., Sharif, M., Katti, S., McKeown, N., Prabhakar, B., and Shenker, S. Pfabric: Minimal near-optimal datacenter transport. In Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM (SIGCOMM’13, pp. 435–446, New York, NY, USA, 2013. Association for Computing Machinery. ISBN 9781450320566. doi: 10.1145/2486001.2486031. URL https://doi.org/10.1145/2486001.2486031.
Amazon. Amazon Elastic Graphics. https://aws.amazon.com/ec2/elastic-graphics/, 2021.
Azure, M. GPU-ACCELERATED MICROSOFT AZURE. https://www.nvidia.com/en-us/data-center/gpu-cloud-computing/…, 2021.
Bloch, G. Accelerating Distributed Deep Learning with In-Network Computing Technology, Aug. 2019. URL https://conferences.sigcomm.org/events/apnet2019/slides/Indus…
Bosshart, P., Gibb, G., Kim, H.-S., Varghese, G., McKeown, N., Izzard, M., Mujica, F., and Horowitz, M. Forwarding Metamorphosis: Fast Programmable Match-Action Processing in Hardware for SDN. In Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM (SIGCOMM’13), pp. 99–110, New York, NY, USA, 2013. Association for Computing Machinery. ISBN 9781450320566. doi: 10.1145/2486001.2486011. URL https://doi.org/10.1145/2486001.2486011.
Broadcom. BCM56990 25.6 Tb/s Tomahawk 4 Ethernet Switch. https://docs.broadcom.com/docs/12398014, 2020.
Chowdhury, M. and Stoica, I. Coflow: A Networking Abstractio for Cluster Applications. In HotNets, HotNetsXI, pp. 31–36, 2012.
Costa, P., Donnelly, A., Rowstron, A., and O’Shea, G. Camdoop: Exploiting In-network Aggregation for Big Data Applications. In Proceedings of the 9th USENIX Symposium on Networked Systems Design and Implementation (NSDI’12), 2012.
Dong, M., Li, Q., Zarchy, D., Godfrey, P. B., and Schapira, M. PCC: Re-Architecting Congestion Control for Consistent High Performance. In Proceedings of the 12th USENIX Conference on Networked Systems Design and Implementation (NSDI’15, pp. 395–408, USA, 2015. USENIX Association. ISBN 9781931971218.
Firestone, D., Putnam, A., Mundkur, S., Chiou, D., Dabagh, A., Andrewartha, M., Angepat, H., Bhanu, V., Caulfield, A., Chung, E., Chandrappa, H. K., Chaturmohta, S., Humphrey, M., Lavier, J., Lam, N., Liu, F., Ovtcharov, K., Padhye, J., Popuri, G., Raindel, S., Sapre, T., Shaw, M., Silva, G., Sivakumar, M., Srivastava, N., Verma, A., Zuhair, Q., Bansal, D., Burger, D., Vaid, K., Maltz, D. A., and Greenberg, A. Azure Accelerated Networking: SmartNICs in the Public Cloud. In 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18), pp. 51–66, Renton, WA, April 2018. USENIX Association. ISBN 978-1-939133-01-4. URL https://www.usenix.org/conference/nsdi18/presentation/firestone.
Gebara, N., Lerner, A., Yang, M., Yu, M., Costa, P., and Ghobadi, M. Challenging the Stateless Quo of Programmable Switches. In ACM Workshop on Hot Topics in Networks (HotNets). ACM, November 2020. URL https://www.microsoft.com/en-us/research/publication/challeng…
Google. Cloud GPUs. https://cloud.google.com/gpu/, 2021.
Greenberg, A., Hamilton, J. R., Jain, N., Kandula, S., Kim, C., Lahiri, P., Maltz, D. A., Patel, P., and Sengupta, S. VL2: A Scalable and Flexible Data Center Network. In Proceedings of the ACM SIGCOMM 2009 Conference on Data Communication (SIGCOMM’09), pp. 51–62, New York, NY, USA, 2009. Association for Computing Machinery. ISBN 9781605585949. doi: 10.1145/1592568.1592576. URL https://doi.org/10.1145/1592568.1592576.
Ha, S., Rhee, I., and Xu, L. CUBIC: A New TCP-Friendly High-Speed TCP Variant. SIGOPS Oper. Syst. Rev., 42(5):64–74, July 2008. ISSN 0163-5980. doi: 10.1145/1400097.1400105. URL https://doi.org/10.1145/1400097.1400105.
Handley, M., Raiciu, C., Agache, A., Voinescu, A., Moore, A. W., Antichi, G., and Wojcik, M. Re-architecting data-center networks and stacks for low latency and high performance. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (SIGCOMM’17), pp. 29–42, New York, NY, USA, 2017. Association for Computing Machinery. ISBN 9781450346535. doi: 10.1145/3098822.3098825. URL https://doi.org/10.1145/3098822.3098825.
Hopps, C. Analysis of an Equal-Cost Multi-Path Algorithm. RFC 2992, 2000. URL https://rfc-editor.org/rfc/rfc2992.txt.
Huang, Y., Cheng, Y., Chen, D., Lee, H., Ngiam, J., Le, Q. V., and Chen, Z. GPipe: Efficient Training of Giant Neural Networks using Pipeline Parallelism. CoRR, abs/1811.06965, 2018. URL http://arxiv.org/abs/1811.06965.
Intel. Intel stratix 10 tx device overview. https://www.intel.com/content/dam/www/programmable/us/en/pdfs…, 2016.
Intel. P4-programmable Ethernet Tofino 2. https://www.intel.com/content/www/us/en/products/network-io/p…, 2018.
Jeon, M., Venkataraman, S., Phanishayee, A., Qian, u., Xiao, W., and Yang, F. Analysis of Large-Scale MultiTenant GPU Clusters for DNN Training Workloads. In Proceedings of the 2019 USENIX Conference on Usenix Annual Technical Conference (USENIX ATC’19), pp. 947–960, USA, 2019. USENIX Association. ISBN
9781939133038.
Jia, Z., Zaharia, M., and Aiken, A. Beyond Data and Model Parallelism for Deep Neural Networks. In Talwalkar, A., Smith, V., and Zaharia, M. (eds.), Proceedings of Machine Learning and Systems, volume 1, pp. 1–13, 2019. URL https://proceedings.mlsys.org/paper/2019/file/c74d97b01eae257…
Klenk, B., Jiang, N., Thorson, G., and Dennison, L. An InNetwork Architecture for Accelerating Shared-Memory Multiprocessor Collectives. In 2020 ACM/IEEE 47th Annual International Symposium on Computer Architecture (ISCA’20), pp. 996–1009, 2020.
Kumar, G., Dukkipati, N., Jang, K., Wassel, H. M. G., Wu, X., Montazeri, B., Wang, Y., Springborn, K., Alfeld, C., Ryan, M., Wetherall, D., and Vahdat, A. Swift: Delay is Simple and Effective for Congestion Control in the Datacenter. In Proceedings of the Annual Conference of the ACM Special Interest Group on Data Communication on the Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM’20), pp. 514–528, New York, NY, USA, 2020. Association for Computing Machinery. ISBN 9781450379557. doi: 10.1145/3387514.3406591. URL https://doi.org/10.1145/3387514.3406591.
Lao, C., Le, Y., Mahajan, K., Chen, Y., Wu, W., Akella, A., and Swift, M. ATP: In-network Aggregation for Multi-tenant Learning. In 18th USENIX Symposium on Networked Systems Design and Implementation (NSDI 21). USENIX Association, April 2021.
URL https://www.usenix.org/conference/nsdi21/presentation/lao.
Lepikhin, D., Lee, H., Xu, Y., Chen, D., Firat, O., Huang, Y., Krikun, M., Shazeer, N., and Chen, Z. GShard: Scaling Giant Models with Conditional Computation and Automatic Sharding, 2020.
Li, M., Andersen, D. G., Park, J. W., Smola, A. J., Ahmed, A., Josifovski, V., Long, J., Shekita, E. J., and Su, B.-Y. Scaling Distributed Machine Learning with the Parameter Server. In Proceedings of the 11th USENIX Conference on Operating Systems Design and Implementation (OSDI’14), pp. 583–598, USA, 2014. USENIX Association. ISBN 9781931971164.
Li, Y., Liu, I.-J., Yuan, Y., Chen, D., Schwing, A., and Huang, J. Accelerating Distributed Reinforcement Learning with In-Switch Computing. In Proceedings of the 46th International Symposium on Computer Architecture (ISCA’19, ISCA’19, pp. 279–291, New York, NY, USA, 2019. Association for Computing Machinery. ISBN 9781450366694.
libtins. libtins packet crafting and sniffing library. https://libtins.github.io/, 2021.
Ltd., O. OMNeT++ Discrete Event Simulator, 2021. https://omnetpp.org/.
Mai, L., Rupprecht, L., Alim, A., Costa, P., Migliavacca, M., Pietzuch, P. R., and Wolf, A. L. NetAgg: Using Middleboxes for Application-specific On-path Aggregation in Data Centres. In Seneviratne, A., Diot, C., Kurose, J., Chaintreau, A., and Rizzo, L. (eds.), Proceedings of the 10th ACM International on Conference on Emerging Networking Experiments and Technologies (CoNEXT’14), pp. 249–262. ACM, 2014. doi: 10.1145/2674005.2674996. URL https://doi.org/10.1145/2674005.2674996.
Mittal, R., Lam, V. T., Dukkipati, N., Blem, E., Wassel, H., Ghobadi, M., Vahdat, A., Wang, Y., Wetherall, D., and Zats, D. TIMELY: RTT-Based Congestion Control for the Datacenter. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication (SIGCOMM’15), pp. 537–550, New York, NY, USA, 2015. Association for Computing Machinery. ISBN 9781450335423. doi: 10.1145/2785956.2787510. URL https://doi.org/10.1145/2785956.2787510.
Moritz, P., Nishihara, R., Wang, S., Tumanov, A., Liaw, R., Liang, E., Elibol, M., Yang, Z., Paul, W., Jordan, M. I., and Stoica, I. Ray: A Distributed Framework for Emerging AI Applications. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI18), 2018.
Narayanan, D., Harlap, A., Phanishayee, A., Seshadri, V., Devanur, N. R., Ganger, G. R., Gibbons, P. B., and Zaharia, M. Pipedream: Generalized pipeline parallelism for dnn training. In Proceedings of the 27th ACM Symposium on Operating Systems Principles (SOSP’19), pp. 1–15, New York, NY, USA, 2019. Association for Computing Machinery. ISBN 9781450368735. doi: 10.1145/3341301.3359646. URL https://doi.org/10.1145/3341301.3359646.
NVIDIA. NVIDIA Collective Communications Library (NCCL). https://docs.nvidia.com/deeplearning/nccl/, 2021.
Omkar R., D. and M., A. Asic implementation of 32 and 64 bit floating point alu using pipelining. International Journal of Computer Applications, 94:27–35, 05 2014. doi: 10.5120/16452-6184.
Peng, Q., Walid, A., and Low, S. H. Multipath TCP: analysis and design. CoRR, abs/1308.3119, 2013. URL http://arxiv.org/abs/1308.3119.
Rossi, F. and Durut, M. Communication challenges in cloud k-means. In ESANN, 2011.
Sapio, A., Canini, M., Ho, C., Nelson, J., Kalnis, P., Kim, C., Krishnamurthy, A., Moshref, M., Ports, D. R. K., and Richtarik, P. Scaling Distributed Machine Learning with In-Network Aggregation. In 18th USENIX Symposium on Networked Systems Design and Implementation (NSDI’21). USENIX Association, April 2021. URL https://www.usenix.org/conference/nsdi21/presentation/sapio.
Sergeev, A. and Balso, M. D. Horovod: fast and easy distributed deep learning in TensorFlow, 2018.
Shoeybi, M., Patwary, M., Puri, R., LeGresley, P., Casper, J., and Catanzaro, B. Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism, 2020.
Singh, A., Ong, J., Agarwal, A., Anderson, G., Armistead, A., Bannon, R., Boving, S., Desai, G., Felderman, B., Germano, P., Kanagala, A., Provost, J., Simmons, J., Tanda, E., Wanderer, J., Holzle, U., Stuart, S., and Vahdat, A. Jupiter rising: A decade of clos topologies and centralized control in google’s datacenter network. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication (SIGCOMM’15), pp. 183–197, New York, NY, USA, 2015. Association for Computing Machinery. ISBN 9781450335423. doi: 10.1145/2785956.2787508. URL https://doi.org/10.1145/2785956.2787508.
Stillmaker, A. and Baas, B. Scaling equations for the accurate prediction of cmos device performance from 180nm to 7nm. Integration, 58:74–81, 2017. ISSN 0167-9260. doi: https://doi.org/10.1016/j.vlsi.2017.02.002. URL https://www.sciencedirect.com/science/article/pii/S0167926017…
Sun, P., Feng, W., Han, R., Yan, S., and Wen, Y. Optimizing Network Performance for Distributed DNN Training on GPU Clusters: ImageNet/AlexNet Training in 1.5 Minutes. CoRR, abs/1902.06855, 2019. URL http://arxiv.org/abs/1902.06855.
TensorFlow. TensorFlow Benchmarks. https://github.com/tensorflow/benchmarks, 2021.
The Open MPI Project. Open MPI:Open Source High Performance Computing. https://www.open-mpi.org/, 2021.
Uber Eng. Meet Horovod: Uber’s Open Source Distributed Deep Learning Framework for TensorFlow. https://eng.uber.com/horovod, 2017.
Xilinx. Logicore ip floating-point operator v7.0. https://www.xilinx.com/support/documentation/ip_documentation…, 2014
Xilinx. Ultrascale+ FPGAs Product Tables and Product Selection Guide. https://www.xilinx.com/support/documentation/selection-guides…, 2021
Zhu, Y., Eran, H., Firestone, D., Guo, C., Lipshteyn, M., Liron, Y., Padhye, J., Raindel, S., Yahia, M. H., and Zhang, M. Congestion Control for Large-Scale RDMA Deployments. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication (SIGCOMM’15), pp. 523–536, New York, NY, USA, 2015. Association for Computing Machinery. ISBN 9781450335423. doi: 10.1145/2785956.2787484. URL https://doi.org/10.1145/2785956.2787484.
Zhuo, D., Ghobadi, M., Mahajan, R., Forster, K.-T., Krishnamurthy, A., and Anderson, T. Understanding and mitigating packet corruption in data center networks. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (SIGCOMM’17), pp. 362–375, New York, NY, USA, 2017. ACM. ISBN 978-1-4503-4653-5. doi: 10.1145/3098822.3098849. URL http://doi.acm.org/10.1145/3098822.3098849.
Zilberman, N., Audzevich, Y., Covington, G., and Moore, A. W. Netfpga sume: Toward 100 gbps as research commodity. IEEE Micro, 34(05):32–41, sep 2014. ISSN 1937-4143. doi: 10.1109/MM.2014.61.
* 你好,我是俞凡,在 Motorola 做过研发,当初在 Mavenir 做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI 等技术始终保持着浓重的趣味,平时喜爱浏览、思考,置信继续学习、一生成长,欢送一起交流学习。\
微信公众号:DeepNoMind*
本文由 mdnice 多平台公布