论文部分内容阅读
为了支持具有计算密集型和通信密集型的分布式机器学习训练任务,各大信息技术(Information Technology,IT)公司如微软,都使用图形处理器(Graphics Processing Unit,GPU)等加速硬件在数据中心内建立了专门针对机器学习的集群。加速硬件的使用大大提升了分布式机器学习的样本处理速度,单位时间内能处理更多的样本,同时也意味着网络在单位时间内需要传输更多的数据。然而,网络带宽的增长速率远远落后于硬件计算能力的增长速率。因此,网络的通信能力已成为了数据中心内分布式机器学习训练的性能瓶颈。另外,很多IT公司在全球建立了多个数据中心,每个数据中心都存储着为用户提供服务的数据和用户产生的相关数据。有些分布式机器学习应用如语音识别、视频或图像分类等,需要分析这些分布在各个数据中心的海量数据,以获取实时且稳定的机器学习模型。然而,由于隐私、政治、法律等因素,不能把所有的数据集中到一个数据中心进行训练。因此,跨数据中心的分布式机器学习一般采用分层的模型同步架构,即把数据中心内(局部模型同步)和数据中心间(全局模型同步)的模型同步解耦。然而,与局域网带宽相比,广域网带宽更加昂贵、稀有且异构,已成为跨域分布式机器学习的性能瓶颈。本学位论文以域内和跨域两个场景为中心研究从网络通信角度去加快分布式机器学习训练过程,研究内容和主要贡献点如下:1.研究光电交换网络中的在线分布式机器学习调度问题。针对现有的光电交换机调度方案不能适用于具有迭代性、通信与计算阶段相互交错特性的分布式机器学习,本学位论文设计了针对多个分布式训练任务的调度算法。对于单个任务,提出重负载优先算法(Heaviest Load First,HLF),优先调度具有最重负载端口上的流;对于多个任务,提出最短加权剩余完成时间优先算法(Shortest Weighted Remaining Time First,SWRTF),当某个任务从通信转为计算阶段时,选择可用的、具有最小加权剩余完成时间的任务执行通信阶段,从而提高电路利用率,加快数据传输,减少加权任务完成时间。2.研究适用于参数服务器架构的新型网络拓扑。由于现有物理拓扑设计与上层应用的通信模式无关,这种应用无感知的拓扑结构会限制上层应用性能的提升。因此,本学位论文针对广泛使用的参数服务器架构,结合其通信特点,提出了一种适合参数服务器架构通信需求的、可重构的、模块化网络拓扑结构——PSNet,并从理论上分析了分布式机器学习训练任务在PSNet和Fat Tree拓扑中的批完成时间。数值计算和本地测试平台的实验结果表明,在PSNet拓扑上运行分布式机器学习训练任务,能显著加快参数的同步过程,减少批完成时间。3.研究自适应全局模型同步优化策略。对于跨域分布式机器学习,传统的以参数服务器架构为代表的全局模型同步中的聚合节点是固定的。然而,这种固定的全局模型同步方案并不适用于带宽动态异构的广域网。因此,本学位论文综合考虑广域网带宽的稀缺性、异构性和动态变化性,提出了自适应的全局模型同步优化算法,能够根据网络带宽自适应地改变聚合节点的数量、位置及节点间路由,并从理论上分析了算法性能的界限。仿真及本地测试平台实验结果表明算法可显著提升带宽的利用率、加快跨域的全局模型同步过程。4.研究光广域网中分布式机器学习调度问题。虽然目前已有很多针对受限的广域网带宽提出的加速跨域训练方案,但大多数没有考虑到底层光广域网的可重构特性。因此,本学位论文提出联合网络层和可重构光层来优化跨域训练,对于任务内调度,首先证明了它是NP难问题,然后提出了基于确定性舍入的新算法,通过重新配置光器件来动态改变拓扑结构、为每条同步流分配路径和速率,并从理论上证明了算法性能的界限;对于任务间调度,提出基于由权重和任务剩余完成时间定义的优先级的多任务调度算法。仿真结果表明,结合底层拓扑的可重构性的网络层调度可显著加快训练过程。