Page 170 - 《软件学报》2025年第4期
P. 170
1576 软件学报 2025 年第 36 卷第 4 期
另一些工作通过设计回归模型, 并利用实测剖析拟合参数的方式进行建模. 例如 Optimus [33] 根据大量实测模
型的收敛曲线人工设计回归模型, 随后在线上阶段通过实测任务早期收敛状态拟合回归模型参数, 从而建模收敛
效率. Shockwave [36] 针对 batch size 弹性调控任务进行性能建模. 该方法将任务迭代过程中的 batch size 变化视为轨
迹, 并结合 batch size 调控优化算法 (Accordion [37] 、SimiGrad [38] ) 的领域知识, 使用贝叶斯概率回归模型, 在线上运
行阶段持续实测来更新概率回归模型, 从而拟合轨迹并建模任务执行时间. 这些基于回归模型的方法需要实测较
多迭代, 才可获得较好的回归效果, 因此实测开销较大.
部分工作通过仿真执行的方式进行建模. 例如, Daydream [39] 关注训练优化机制 (如 AMP [40] 、算子融合 [41] ) 对
性能的影响. 它利用底层的核函数剖析工具 CUPTI 建立 CPU、GPU、网络通信的调用依赖路径分析模型, 并通过
对优化机制的仿真执行, 建模优化后的吞吐率. Proteus [42] 针对分布式训练的复杂并行通讯策略, 建立了名为
“Strategy Tree”的数据结构, 能够统一建模训练时的分布式通信决策空间, 并建立一个分层拓扑感知的仿真执行器
(hierarchical topo-aware executor). 通过实测执行路径并补足参数后, 对计算与通信进行仿真来建模任务吞吐率. 基
于仿真执行的方法在建模准确度方面具有优势, 这是由于这类方法以实测获取的执行路径为基础进行仿真, 更贴
近真实执行环境. 其弱点则在于无法应对硬件资源的变化. 当 GPU 不同时, 必须重新实测以获取新的执行路径后
行研究, 任务时序规律较强. 例如, MLaaS 基于阿里巴巴的
再进行仿真.
虽然实测剖析法能够较好地面对任务多样性挑战, 但在应对资源配置多样性挑战时表现较差. 这是因为实测
得到的性能数据无法在不同资源配置下进行迁移和泛化, 导致这类方法需要在多种资源配置下分别进行实测, 从
而产生较高开销. 调度器在使用实测剖析法时需要考虑实际场景是否能够接受这样的开销.
2.3 基于任务元信息的方法
表 2 列举了一些基于任务元信息的性能建模方法. 这些方法聚焦于任务的元信息, 如模型名称、超参数设置
(batch size、学习率等)、资源申请量/分配量、放置拓扑以及任务提交时间等, 但不深入探究模型的内部细节. 这
类方法通常采取数据驱动模型, 并遵循以下流程: (1) 首先, 收集大量任务执行历史数据, 提取任务元信息作为特征;
(2) 随后, 利用这些特征数据来训练学习模型; (3) 最后, 利用该模型直接获取其他任务的性能模型.
表 2 基于任务元信息的任务性能建模方法
建模指标
成果 建模选型 分布式训练 任务/数据集 效果
执行时间 吞吐率 收敛效率
[6]
MLaaS [6] 分类回归树 √ √ - √ PAI 400 000+任务 执行时间误差一般 (约8.9%)
Helios [43] 分类回归树 √ √ - - Helios [43] 158万+任务 执行时间误差偏高 (约10.8%)
Harmony [44] 强化学习+MLP √ √ √ - Seq2Seq [35] 、CTC [45] 吞吐率误差一般 (约9.8%)
GENIE [46] 回归模型 √ √ √ - 6种CNN、RNN模型 执行时间误差偏高 (约12%)
基于任务元信息的方法在应对资源配置多样性挑战方面表现出色. 面对多样化的资源配置, 这类方法能够通
过学习大量不同资源配置下的任务性能数据, 有效地训练出适应性强的数据驱动模型. 具体来说, 它们利用分类回
归树模型、强化学习模型、回归模型等模型, 专注于将任务的高层元信息及各类资源配置作为特征进行训练, 从
而在变化的资源配置中展现出优越的性能.
在具体实践中, 一些方法倾向于利用任务提交的时序规律元信息进行建模. 这些方法针对大规模 GPU 集群进
[6] PAI 大规模集群 (6 742 个 GPU), 利用任务提交时间的
周期性与反复性, 将任务提交时间、资源请求量以及用户分组信息等作为特征, 建立基于 CART [47] 分类回归树的
机器学习模型来建模任务的执行时间信息. 类似地, Helios [43] 专注于对 SenseTime 的 6 416 块 GPU 集群上的任务
进行性能建模. Helios 着重于时间特征的分析, 利用提交时间在日、周、月中潜在的时序规律进行特征建模, 并结
合资源需求量、放置拓扑等其他元信息, 建立基于 GBDT 的机器学习模型来建模任务执行时间. 以上基于时序规
律的性能模型在大规模的真实任务和商业集群上经过验证, 能够取得较好建模效果. 然而由于时序规律不在任意
集群间具有普遍性, 这种模型仅能够针对特定集群进行预测, 适用范围较窄.