Page 168 - 《软件学报》2025年第4期
P. 168
1574 软件学报 2025 年第 36 卷第 4 期
● 任务多样性. 深度学习训练任务的种类繁多. 从任务内视角看, 深度学习模型具有较强的多样性. 组成模型
的算子种类多达上千种, 同时模型间算子数量也存在巨大差异. 例如, 简单的多层感知机模型可能只包含几十个串
行连接的算子, 而复杂的 BERT-large [28] 则包含高达 18 758 个具有复杂依赖关系的算子, 算子数量及其连接结构的
复杂程度差距极大. 这种多样性使得性能建模难以统一化、标准化. 从任务外视角看, 任务的执行时间与资源需求
[7]
同样具有较强的多样性. 例如, 在 Philly 数据集中, 占用 4 块及以上 GPU 的任务数仅占 11.09%, 但其执行时间占
比却高达 36.6%. 此外, 数据集中短任务 (<30 min) 占 55.98%, 长任务 (>12 h) 占 8.85%, 甚至有少量任务超过一天.
如何在时长与资源需求差异巨大的任务间实现平衡调度具有挑战性.
● 资源配置多样性. 如第 1.2 节任务性能异构性、任务弹性部署性、任务放置拓扑敏感性所述, 不同的异构资
源、弹性部署以及放置拓扑会对性能产生影响. 这些资源配置的组合可能性极多. 对于性能建模而言, 如何提升模
型的泛化能力以适应如此广泛的资源配置是一大难题. 对于调度而言, 这一挑战可进一步细化为以下 3 个方面.
(1) 异构亲和度多样性. 如任务性能异构性所述, 尽管更快的 GPU 对所有任务都更有利, 但不同任务的异构加
速比存在差异. 如何有效地平衡和分配不同数量和不同性能的异构资源, 以最大化全局的训练效率是一个严峻的
挑战.
抽取离散算子
(2) 弹性部署配置多样性. 如任务弹性部署性所述, 深度学习训练任务的弹性部署涉及任务资源量 (如 GPU 数
量) 和训练超参数配置 (如 batch size、学习率) 的弹性变化. 这些部署配置组合多, 增加了调度算法的搜索空间, 提
高了调度难度.
(3) 放置拓扑多样性. 如任务放置拓扑敏感性所述, 即使任务资源配置与参数保持不变, 不同的放置拓扑也会
通过影响通信速度间接影响任务性能. 同时, 任务间的干扰会进一步加剧性能的不确定性. 如何在放置拓扑敏感性
不同的任务间进行合理组合, 并在多样性的影响因素 (如 PCIe、网络等) 间寻求最优放置是调度面临的又一大挑战.
2 任务性能建模
2.1 方法分类模型
本节将对深度学习训练任务的性能建模方法进行系统介绍. 如图 5 所示, 这些方法可以分为 4 大类: (1) 基于
实测剖析的方法; (2) 基于任务元信息的方法; (3) 基于计算图结构的方法; (4) 基于可组合算子的方法.
细 任务元信息法
分类回归树
抽取元信息 RL 强化学习
…
离线
计算图结构法 训练
低 AutoML 学习
开 模型
销 粒 抽取计算图特征 GNN 图神经网络 性能
度 … 模型
待建模任务 可组合算子法
分析模型 确定
分析
模型
卷积网络 参数
粗 …
实测剖析法
高
开 任务 GPU 分析模型
销
实测运行 剖析性能数据
图 5 任务性能建模方法分类模型
从建模开销的角度来看, 基于实测剖析的方法需要实际运行任务以进行建模, 这不可避免地会产生较高的资
源分配与任务运行开销. 而其他方法则属于低开销类别, 可以直接利用任务信息进行建模. 根据建模所需的任务信