SageMaker 模型并行性库的核心功能 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

SageMaker 模型并行性库的核心功能

Amazon SageMaker 模型并行性库提供了分布策略和节省内存的技术,例如分片数据并行性、张量并行性、按层的模型分区以用于管道调度以及检查点操作。模型并行性策略和技术有助于将大型模型分布在多个设备上,同时优化训练速度和内存使用。该库还提供 Python 帮助程序函数、上下文管理器和封装器函数,用于调整训练脚本以实现模型的自动或手动分区。

对训练作业实施模型并行性时,您仍将保留使用模型并行性运行 SageMaker 分布式训练作业部分中展示的相同两步工作流。对于调整训练脚本,您无需或者仅需在训练脚本中添加几行额外的代码。要启动调整后的训练脚本的训练作业,您需要设置分布配置参数以激活节省内存的功能或者传递用于并行度的值。

要通过示例开始使用,请参阅以下 Jupyter 笔记本,其中演示了如何使用 SageMaker 模型并行性库。

要深入了解库的核心功能,请参阅以下主题。

注意

在 SageMaker 训练平台中,SageMaker 分布式训练库通过适用于 TensorFlow、PyTorch 和 Hugging Face 框架的 Amazon Deep Learning Containers 提供。要使用分布式训练库的功能,我们建议您使用 SageMaker Python SDK。如果您通过 SDK for Python (Boto3) 或 Amazon Command Line Interface 使用 SageMaker API,也可以手动配置 JSON 请求语法。全文中的说明和示例均重点介绍如何通过 SageMaker Python SDK 使用分布式训练库。

重要

SageMaker 模型并行性库支持 PyTorch 的所有核心功能,并支持 TensorFlow 的管道并行性。