Page 215 - 《软件学报》2026年第1期
P. 215
212 软件学报 2026 年第 37 卷第 1 期
行切片, 因此它对模型结构不可知, 可以为不同注意力头的模型结构 (例如多头、多查询、多组查询等) 配置并行.
序列并行方式需要结合稀疏注意力机制才能达到较好的性能.
3.2.1.6 自动并行
目前的模型并行训练系统存在两种生成并行化执行计划的方法: 一是由用户手动制定并行化计划方案; 二是
从有限的模型并行配置的并行化模板计划中自动生成并行化计划. 然而, 随着模型配置规模的不断增大以及底层
基础架构拓扑的变化, 传统方法在分布式计算环境中扩展大型语言模型时显得不够灵活. 为了解决这一问题,
Alpa [28] 提出了一种类似于 FlexFlow [55] 的自动并行方案.
Alpa 将并行性抽象为两个层次: 操作符间 (类似于流水线并行) 和操作符内 (类似于张量并行) 的并行性, 并在
此基础上构建了分层的搜索空间, 使得这两个层次之间正交. 最终, Alpa 能够自动推导出高效的并行执行计划, 并
通过运行时 (runtime) 来协调计划的执行.
Alpa 将并行化问题抽象为以下优化问题: 计算图 G = (V,E) 的总执行成本是所有节点 v ∈ V 上的计算和通信
e ∈ E 上的重新分片成本的总和. 当输入张量不满足所选并行算法的分片规格时, 需要进行格式转
成本, 以及所有边
换, 称为重新分片, 这可能需要跨设备通信. 作者将成本最小化问题转化为整数线性规划 (integer linear programming,
ILP) 并使用现成的求解器进行最优求解. 对于每个节点 v, 可能的并行算法数量是 , 每个节点有一个长度为 k v
k v
的通信成本向量 c v , 其中 c v ∈ R . 同时, 节点 v 有一个计算成本向量 d v ∈ R . 对于每个节点 v, 定义一个独热决策向
k v
K v
量 s v ∈ {0,1} , 表示它使用的算法. 对于节点 v 和节点 u 之间的重新分片成本, 定义一个重新分片成本矩阵 R vu ∈ R k v ×k u .
k v
问题的优化目标定义为 [28] :
∑ ∑
T
T
min s (c v +d v )+ s R vu s u (1)
v
v
s
v∈V (v,u)∈E
其中, 第 1 项是节点 v 的计算和通信成本, 第 2 项是边 (v,u) 的重新分片成本, T 表示转置.
尽管可以使用性能分析来获取 c v 、 和 R vu 的准确成本, 但为简化处理, 作者采用以下估算方法: 对于通信成
d v
R vu , 通过计算传输的字节数并除以网络带宽得到成本. 对于计算成本 , 作者将其全部设为 0, 这一做法基
本 d v 和 c v
于以下考虑: (1) 对于如矩阵乘等计算量较大的运算符, 不允许复制计算, 所有并行算法均将计算负载平均分配到
各设备, 因而其算术复杂度相同; (2) 对于计算量较小的运算符, 如逐元素操作, 虽然允许复制计算, 但其计算成本
可忽略不计. 为简化计算图, 作者将计算量微小的运算符 (如逐元素运算、转置和归约等) 合并到其操作数中, 这
极大地减少了图中节点的数量, 从而减小了 ILP 问题的规模. Alpa 通过广度优先搜索计算每个节点的深度, 并将
其合并到最深的操作数上, 最终通过整数线性规划求解器完成求解. nnScaler [46] 不依赖现有的搜索空间, 而是允许
领域专家通过 3 种更通用的基本原语 (op-trans、op-assign 和 op-order) 自定义搜索空间. 这些原语用于表达模型
转换及各种并行化计划的时空调度特性. 为避免搜索空间的过度膨胀, nnScaler 在构建空间时支持对原语施加约
束. 表 4 详细总结了各种并行策略的计算时间复杂度和空间复杂度, 并全面梳理了它们的优缺点. 以 MLP 的一层
全连接层为例, D in 输入特征维度、 D out 为输出特征维度, N 为样本数, P 为处理器数. 上述综合分析有助于深入了
解每种并行策略在特定场景下的表现, 并为选择适用于特定任务与硬件环境的并行策略提供参考.
表 4 并行优化策略对比
并行方式 单设备计算时间复杂度 参数量空间复杂度 优点 不足
实现简便, 无需对模型结构进行 当模型参数较小时, 通信开销
数据 O ( N × D in × D out ) O(D in × D out )× P 较大修改. 能够处理大型数据集, 可能成为性能瓶颈. 需要高效
并行 P 每个处理器分别处理不同的样本 的梯度同步机制, 以保持各处
批次. 对模型结构无特定要求 理器间权重一致
( ) 需要处理复杂的数据加载与梯
N × D in × D out
O +SyncTime, 充分利用所有处理器, 从而提升
全切片 P 模型训练速度. 该策略对于大型 度同步问题, 这可能会导致通
数据 SyncTime 表示同步时间, 因为需 O(D in × D out ) 模型和数据集具有良好的可扩展 信开销增加. 对于小型模型和
并行 要保持梯度的同步, 这可能涉及 数据集, 该策略可能会出现性
通信和同步的开销 性. 对模型结构无特定要求 能下降

