港科大 iSING Lab 两篇论文被 NSDI’24 接收
文摘
科技
2023-12-15 00:13
广东
NSDI (USENIX Symposium on Networked Systems Design and Implementation) 是关于网络系统设计和实现方面的顶尖学术会议。NSDI专注于网络和分布式系统的设计、实现以及评估。NSDI'24会议将于2024年4月16日至18日在美国加利福尼亚州圣克拉拉市召开。
本次会议中,香港科大智能网络与系统实验室iSING Lab有两篇论文被录用,题目分别为:
Towards Domain-Specific Network Transport for Distributed DNN Training. 作者:Hao Wang, Han Tian, Jingrong Chen, Xinchen Wan, Jiacheng Xia, Gaoxiong Zeng, Wei Bai, Junchen Jiang, Yong Wang, Kai Chen
Accelerating Neural Recommendation Training with Embedding Scheduling.作者:Chaoliang Zeng, Xudong Liao (co-first), Xiaodian Cheng, Han Tian, Xinchen Wan, Hao Wang, Kai Chen。
Towards Domain-Specific Network Transport for Distributed DNN TrainingHao Wang, Han Tian, Jingrong Chen, Xinchen Wan, Jiacheng Xia, Gaoxiong Zeng, Wei Bai, Junchen Jiang, Yong Wang, Kai Chen分布式机器学习训练中存在大量的网络数据通信,现有的通信优化方案主要集中于应用层的优化,例如,梯度压缩、张量切分和调度。这些方案可以降低通信量、提高通信计算并行效率。然而对于网络传输固有的问题,如拥塞、丢包,没有针对性的解决。其具体的表现为:应用层的优化可以很好的降低流平均完成时间(average FCT),却无法解决长尾流完成时间(tail FCT)问题,最终造成通信性能瓶颈。与现有对tail FCT优化的数据中心网络传输方案不同的是,本文希望借助分布式机器学习的特性来设计和优化网络传输。文章提出了MLT(Machine Learning-specific network Transport),MLT采用三种简单但有效的技术。首先,利用梯度/参数的独立性,MLT采用了逐包负载均衡(per-packet load balance),从而减轻网络热点并避免数据包重排序。其次,如果出现热点,MLT会通过区分不同层和大小的梯度来执行优先级排队和选择性丢包,以提高计算通信并行效率,并减少对模型收敛的影响。最后,如果发生丢包,MLT允许有限丢包容忍( bounded-loss tolerance),这一点的依据是机器学习训练可以容忍一定量的梯度丢失而不影响最终模型性能。我们通过在端上封装UDP和TCP,以及配置商用交换机实现了MLT。实验和仿真表明,MLT有效的优化了网络尾部延迟,相比先前工作,端到端训练性能提升高达62.2%,并且保持了最终模型收敛后的准确度。
本工作是iSING lab在APNet 2019提出的Rethinking Transport Layer Design for Distributed Machine Learning后的进一步扩展和延伸。Accelerating Neural Recommendation Training with Embedding SchedulingChaoliang Zeng, Xudong Liao (co-first), Xiaodian Cheng, Han Tian, Xinchen Wan, Hao Wang, Kai Chen基于神经网络的推荐模型(DLRM)已被互联网厂商广泛部署以支持各种各样的在线服务。DLRM 训练普遍采用CPU和GPU混合的结构,一方面使用基于CPU的PS来存储内存密集的特征向量表(Embedding Table),另一方面使用GPU来加速计算密集的神经模型计算,同时在GPU计算节点上缓存一些特征向量以加速计算时向量表的查找。然而,训练时GPU的向量缓存和PS之间依然存在不可忽视的传输开销。之前的工作以损失精度为代价来减少这种传输次数。 本工作发现训练时大部分的向量访问符合可预测性和稀疏性的特点,从而之前大部分的向量传输可以被提前避免。基于这个观察,我们探索了一个无精度损失的优化DLRM训练的方向,即向量调度。其核心想法是我们主动地去决定“向量在哪些节点训练”和“哪些向量应该被同步”,以增加计算节点的缓存命中率和减少不必要的缓存同步次数。为了实现这个想法,我们设计了一个实时的向量调度器 Herald。其包括两个部分:一个感知向量缓存位置的批输入分配器来决定向量在哪些节点训练;一个向量传输计划的生成器来决定哪些向量应该被同步。实验表明,Herald可以减少48%-89%的向量传输,从而在100G的网络下可提升高达2.11倍的端到端训练效率。 本工作是iSING Lab 继Faery [OSDI’22](加速向量化召回)之后,在优化向量化推荐系统的进一步探索。