Page 109 - 《软件学报》2025年第12期
P. 109

5490                                                      软件学报  2025  年第  36  卷第  12  期


                 服务器、在踪迹      1  上验证  EdgeFlow  和第  5.2  节中的基线方法的成本约为      7 080  美元  [26] , 执行踪迹  2  需要更多的
                 时长, 成本更高. 鉴于预算限制, 本文开发了一个调度事件模拟器, 通过模拟实验验证                        EdgeFlow  的效果. 由于深度
                 学习训练的过程通常是稳定重复迭代的, 模拟迭代的过程可以较好地还原真实训练的过程. 这一方法也是学术界
                 评估面向深度学习作业的调度器的常用方法                [9–13] . 因此, 为了在多种规模和云-边协同场景下评估         EdgeFlow, 我们
                 使用具有不同数量的        GPU  的  NVIDIA A100 GPU  和  NVIDIA V100 GPU  分别在表  1  中不同模型设定下执行训练
                 作业, 并记录这些训练设定下的训练作业使用不同型号的                   GPU、使用不同数量的        GPU  时的吞吐率数据. 利用这
                 些实际执行的吞吐率数据, 我们建立模拟器模拟不同作业使用不同                      GPU  情况下的训练过程. 具体来说, 我们用作
                 业在  NVIDIA A100 GPU  上训练的吞吐率模拟作业在云计算集群中的训练过程, 用作业在                    NVIDIA V100 GPU  上
                 训练的吞吐率模拟作业在边缘服务器上的训练过程. 已有研究工作                     [27]  同样使用  NVIDIA V100 GPU  作为边缘设备
                 上的算力. 与此同时, 由于边缘节点的           GPU  算力通常比云计算集群中的高性能算力低, 而               V100 GPU  的算力比
                 A100  更低, 因此本文选取    V100 GPU  对边缘节点情况进行模拟, 是符合实际场景的. 模拟器会模拟所有作业级别
                 的事件, 包括新作业到来、作业结束、可用的边缘服务器数量改变. 每当事件发生时, 模拟器会计算当前时刻和上
                 一事件发生时的时间差. 两个事件发生之间的时间里, 作业                 i 在经历第   j 个事件到第    j+1  个事件这段时间之间完成
                 训练的批个数被模拟为        t j,i ×((1− s j,i )×tpt cloud  + s j,i ×tpt edge .
                                                i,a j,i   i
                    为了使模拟结果更加接近真实情况, 我们还模拟了作业从云计算集群迁移到边缘服务器、在云计算集群内迁
                 移、和在云计算集群内缩放          (作业使用    GPU  的数量变化) 的时间开销. 根据已有工作汇报的结果, 较为先进的弹
                 性训练执行器在同一集群内部的迁移开销约为                 1–5 s [13] . 云计算集群和边缘服务器之间通信时延可达数百毫秒至
                 数秒, 因此, 本文较为保守地在模拟云-边作业迁移事件时, 在云计算集群内部作业迁移开销的基础上额外增加                                 2 s
                 的时间延时. 本文根据模型权重的实际大小和               5 GB/s 的带宽模拟边缘服务器上的数据传输时间. 模拟器根据作业
                 使用的   GPU  数量以及事件类型, 在每个调度事件中为每个作业模拟相应的时间开销.
                  5.2   评价指标及基线模型
                    在本文中, 我们采用评价指标截止期满足率来评估不同调度方法对具有截止期的深度学习训练作业的调度效果.
                    我们将所提方法      EdgeFlow  与以下集群调度方法进行比较.
                    (1) Gandiva [11] : Gandiva 是一个面向深度学习作业的  GPU  集群调度器, 它通过动态调整作业的优先级提升集
                 群使用的效率. Gandiva 不是截止期感知的, 且         Gandiva 所调度的作业不是弹性的.
                             [9]
                    (2) Tiresias : Tiresias 是一个面向深度学习作业的   GPU  集群调度器, 同时考虑作业在时间、空间两个维度上的
                 资源利用, 以减少集群中作业的平均作业完成时间. Tiresias 不是截止期感知的, 且                 Tiresias 所调度的作业不是弹性的.
                    (3) AFS [10] : AFS  面向深度学习作业调度  GPU  集群中的  GPU  资源, 通过平衡资源效率和短作业优先级加速深
                 度学习训练作业的执行. AFS       所调度的作业是弹性的, 但不是截止期感知的.
                    (4) EDF [28] : EDF (earliest deadline first) 是一个面向具有截止期的作业的调度算法, 优先执行截止期最早的作
                 业. EDF  时截止期感知的, 但不是弹性的.
                    (5) ElasticFlow [13] : ElasticFlow  是一个面向具有截止期的深度学习训练作业的调度器, 可以根据作业的截止期
                 和集群资源紧张程度动态调整每一个作业使用的资源数量. ElasticFlow                 是截止期感知的, 且其所调度的作业是弹
                 性的, 但  ElasticFlow  不能利用空闲的边缘服务器资源.
                  5.3   端到端实验
                    首先进行端到端实验, 验证         EdgeFlow  的调度方法可以使得更多的作业满足截止期需求. 我们模拟了踪迹                   1  和
                 踪迹  2  分别在  8  个和  10  个具有  8  块  NVIDIA A100 GPU  的  GPU  集群上  (共分别具有  64  块  GPU  和  80  块  GPU)
                 执行的过程. 为了模拟可用空闲边缘服务器数量随时间的变化, 本文模拟器根据边缘服务器利用率的真实数据                                  [5,29] ,
                 模拟每天凌晨     2  时至上午  9  时全部边缘服务器空闲、下午         14–17  时有一半的边缘服务器空闲, 在本次实验中边缘
                 服务器的总数量分别设置为          8  个和  10  个. 图  4  展示了  EdgeFlow  和基线方法在两个不同的作业提交历史踪迹下的
                 作业截止期满足率. EdgeFlow     的截止期满足率比基线方法高           1.1–7.3  倍. Gandiva、Tiresias 和  AFS  不是截止期感
   104   105   106   107   108   109   110   111   112   113   114