本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
您可以将 SageMaker 模型并行度库 v2 (SMP v2) 与SageMaker 分布式数据并行度 (SMDDP) 库结合使用,后者提供针对基础架构进行了优化的集体通信操作。AllGather
AWS 在分布式训练中,集体通信操作旨在同步多个 GPU 工作人员并在它们之间交换信息。AllGather
是通常用于分片数据并行的核心集体通信操作之一。要了解有关 SMDDP AllGather
操作的更多信息,请参阅SMDDP AllGather 集体操作优化此类集体通信操作将直接有助于加快 end-to-end训练速度,而不会对收敛产生副作用。
注意
SMDDP 库支持 P4 和 P4de 实例(另请参阅 SMDDP 库的 支持的框架 AWS 区域、和实例类型)。
SMDDP 库 PyTorch 通过流程
要激活 SMDDP 并使用其 AllGather
操作,您需要在训练脚本中添加两行代码,作为 第 1 步:调整你的 PyTorch FSDP 训练脚本 的一部分。请注意,您需要先使用 SMDDP 后 PyTorch 端初始化 Distributed,然后运行 SMP 初始化。
import torch.distributed as dist
# Initialize with SMDDP
import smdistributed.dataparallel.torch.torch_smddp
dist.init_process_group(backend="smddp") # Replacing "nccl"
# Initialize with SMP
import torch.sagemaker as tsm
tsm.init()
SageMaker 的@@ 框架容器