本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Slurm 编排 SageMaker HyperPod 集群
中的 Slurm 支持 SageMaker HyperPod 可帮助您配置弹性集群,以运行机器学习 (ML) 工作负载和开发最先进的模型,例如大型语言模型 (LLM)、扩散模型和基础模型 (FM)。它通过消除构建和维护由数千个加速器(例如 AWS Trainium和NVIDIA A100和H100图形处理单元(GPU))提供支持的大型计算集群所涉及的无差别繁重的工作,从而加快了FM的开发。当加速器出现故障时, SageMaker HyperPod 监控集群实例的弹性功能会自动检测并即时更换故障硬件,这样您就可以专注于运行 ML 工作负载。此外,借助生命周期配置支持 SageMaker HyperPod,您可以自定义您的计算环境以最好地满足您的需求,并使用 Amazon A SageMaker I 分布式训练库对其进行配置以实现最佳性能 AWS。
操作集群
您可以通过控制台用户界面 (UI) 以图形方式创建、配置和维护 SageMaker HyperPod 集群,也可以通过 AWS 命令行界面 (CLI) 以编程方式创建、配置和维护集群。 适用于 Python (Boto3) 的 AWS SDK使用 Amazon VPC,您可以确保集群网络的安全,还可以利用 VPC 中的资源配置集群,例如适用于 Lustre 的 Amazon FSx,它可以提供最快的吞吐量。您还可以为集群实例组赋予不同的 IAM 角色,并限制集群资源和用户可以执行的操作。要了解更多信息,请参阅SageMaker HyperPod Slurm 集群操作。
配置您的 ML 环境
SageMaker HyperPod 运行SageMaker HyperPod DLAMI,这会在集 HyperPod 群上设置 ML 环境。您可以通过提供生命周期脚本为 DLAMI 配置其他自定义功能,以支持您的使用场景。要进一步了解如何设置生命周期脚本,请参阅 入门 SageMaker HyperPod 和 使用生命周期脚本自定义 SageMaker HyperPod 集群。
安排作业
成功创建 HyperPod 集群后,集群用户可以登录集群节点(例如头节点或控制器节点、登录节点和工作节点),并安排运行机器学习工作负载的作业。要了解更多信息,请参阅SageMaker HyperPod 集群上的作业。
硬件故障恢复能力
SageMaker HyperPod 在群集节点上运行运行状况检查并提供工作负载自动恢复功能。借助的集群弹性功能 HyperPod,在节点数超过 16 的集群中将故障节点替换为运行正常的节点之后,您可以从保存的最后一个检查点恢复工作负载。要了解更多信息,请参阅SageMaker HyperPod 集群弹性。
记录和管理集群
您可以在 Amazon 中找到 SageMaker HyperPod 资源利用率指标和生命周期日志 CloudWatch,并通过标记来管理 SageMaker HyperPod 资源。每个 CreateCluster API 运行都会创建一个不同的日志流,以 <cluster-name>-<timestamp> 格式命名。在日志流中,可以查看主机名、失败的生命周期脚本名称以及失败脚本的输出,如 stdout 和 stderr。有关更多信息,请参阅 SageMaker HyperPod 集群管理。
与 SageMaker AI 工具兼容
使用 SageMaker HyperPod,您可以使用 SageMaker AI 提供的 AWS 经过优化的集体通信库(例如 A SageMaker I 分布式数据并行度 (SMDDP) 库)来配置集群。SMDDP 库实现了针对 AWS 计算和网络基础架构优化的AllGather操作,适用于由 NVIDIA A100 GPU 提供支持的最高性能的 SageMaker AI 机器学习实例。要了解更多信息,请参阅在 Slurm 开启的情况下运行分布式训练工作负载 HyperPod。
实例放置使用 UltraServers
SageMaker AI 会 UltraServer 根据一种尽力而为的策略自动将任务分配给您内部的实例,即在使用另一个实例 UltraServer之前先使用一个中的所有实例。例如,如果您请求 14 个实例,并且您的训练计划 UltraServers 中有 2 个实例, SageMaker AI 将使用第一个实例中的所有实例 UltraServer。如果您请求了 20 个实例,并且您的训练计划 UltraServers 中有 2 个实例, SageMaker AI 将在第一个实例中使用所有 17 个实例, UltraServer 然后使用第二个实例中的 3 个实例 UltraServer。