张量并行性 - Amazon SageMaker

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

张量并行性

张量并行性是模型并行性的一种,它在设备之间拆分特定的模型权重、梯度和优化器状态。管道并行性保持单个权重不变但对权重进行拆分,张量并行性则与之相反,会拆分单个权重。这通常涉及对模型的特定运算、模块或层进行分布式计算。

在单个参数占用大部分GPU内存的情况下(例如词汇量大的大型嵌入表或包含大量类的大型 softmax 层),则需要张量并行性。在这种情况下,将这种大张量或运算视为原子单元的效率会很低,并且会阻碍内存负载的平衡。

在仅仅依靠管道并不足以满足要求的超大型模型中,张量并行性也很有用。例如,对于需要在数十个实例上进行分区的 GPT -3 比例模型,纯粹的微批量流水线效率低下,因为管道深度会变得太高,开销会变得非常大。

注意

张量并行度可在 SageMaker 模型并行度库 v1.6.0 及更高版本 PyTorch 中使用。