

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

# 使用 Slurm 编排 SageMaker HyperPod 集群
<a name="sagemaker-hyperpod-slurm"></a>

中的 Slurm 支持 SageMaker HyperPod 可帮助您配置弹性集群，以运行机器学习 (ML) 工作负载和开发 state-of-the-art大型语言模型 (LLMs)、扩散模型和基础模型 (FMs) 等模型。它 FMs 通过消除构建和维护由数千个加速器（例如 Amazon Trainium 和 NVIDIA A100 和 H100 图形处理单元）提供支持的大型计算集群所涉及的无差别繁重工作来加速开发（）。GPUs当加速器出现故障时， SageMaker HyperPod 监控集群实例的弹性功能会自动检测并即时更换故障硬件，这样您就可以专注于运行 ML 工作负载。此外，借助生命周期配置支持 SageMaker HyperPod，您可以自定义您的计算环境以最好地满足您的需求，并使用 Amazon A SageMaker I 分布式训练库对其进行配置以实现最佳性能 Amazon。

**操作集群**

您可以通过控制台用户界面 (UI) 以图形方式创建、配置和维护 SageMaker HyperPod 集群，也可以通过 Amazon 命令行界面 (CLI) 以编程方式创建、配置和维护集群。 适用于 Python (Boto3) 的 Amazon SDK借助 Amazon VPC，您可以保护集群网络，还可以利用您的 VPC 中的资源配置集群，例如吞吐量最快的 Amazon FSx for Lustre。您还可以为集群实例组赋予不同的 IAM 角色，并限制集群资源和用户可以执行的操作。要了解更多信息，请参阅[SageMaker HyperPod Slurm 集群操作](sagemaker-hyperpod-operate-slurm.md)。

**配置您的 ML 环境**

SageMaker HyperPod 运行[SageMaker HyperPod DLAMI](sagemaker-hyperpod-ref.md#sagemaker-hyperpod-ref-hyperpod-ami)，这会在集 HyperPod 群上设置 ML 环境。您可以通过提供生命周期脚本为 DLAMI 配置其他自定义功能，以支持您的使用场景。要进一步了解如何设置生命周期脚本，请参阅 [入门 SageMaker HyperPod](smcluster-getting-started-slurm.md) 和 [使用生命周期脚本自定义 SageMaker HyperPod 集群](sagemaker-hyperpod-lifecycle-best-practices-slurm.md)。

**安排作业**

成功创建 HyperPod 集群后，集群用户可以登录集群节点（例如头节点或控制器节点、登录节点和工作节点），并安排运行机器学习工作负载的作业。要了解更多信息，请参阅[SageMaker HyperPod 集群上的作业](sagemaker-hyperpod-run-jobs-slurm.md)。

**硬件故障恢复能力**

SageMaker HyperPod 在群集节点上运行运行状况检查并提供工作负载自动恢复功能。借助的集群弹性功能 HyperPod，在节点数超过 16 的集群中将故障节点替换为运行正常的节点之后，您可以从保存的最后一个检查点恢复工作负载。要了解更多信息，请参阅[SageMaker HyperPod 集群弹性](sagemaker-hyperpod-resiliency-slurm.md)。

**记录和管理集群**

您可以在 Amazon 中找到 SageMaker HyperPod 资源利用率指标和生命周期日志 CloudWatch，并通过标记来管理 SageMaker HyperPod 资源。每个 `CreateCluster` API 运行都会创建一个不同的日志流，以 `<cluster-name>-<timestamp>` 格式命名。在日志流中，可以查看主机名、失败的生命周期脚本名称以及失败脚本的输出，如 `stdout` 和 `stderr`。有关更多信息，请参阅 [SageMaker HyperPod 集群管理](sagemaker-hyperpod-cluster-management-slurm.md)。

**与 SageMaker AI 工具兼容**

使用 SageMaker HyperPod，您可以使用 SageMaker AI 提供的 Amazon 经过优化的集体通信库（例如 A [SageMaker I 分布式数据并行度 (SMDDP)](data-parallel.md) 库）来配置集群。SMDDP 库实现了针对 Amazon 计算和网络基础架构优化的`AllGather`操作，适用于由 NVIDIA A100 提供支持的最高性能的 SageMaker AI 机器学习实例。 GPUs要了解更多信息，请参阅[在 Slurm 开启的情况下运行分布式训练工作负载 HyperPod](sagemaker-hyperpod-run-jobs-slurm-distributed-training-workload.md)。

**实例放置使用 UltraServers**

SageMaker AI 会 UltraServer 根据一种尽力而为的策略自动将任务分配给您内部的实例，即在使用另一个实例 UltraServer之前先使用一个中的所有实例。例如，如果您请求 14 个实例，并且您的训练计划 UltraServers 中有 2 个实例， SageMaker AI 将使用第一个实例中的所有实例 UltraServer。如果您请求了 20 个实例，并且您的训练计划 UltraServers 中有 2 个实例， SageMaker AI 将在第一个实例中使用所有 17 个实例， UltraServer 然后使用第二个实例中的 3 个实例 UltraServer。

**Topics**
+ [入门 SageMaker HyperPod](smcluster-getting-started-slurm.md)
+ [SageMaker HyperPod Slurm 集群操作](sagemaker-hyperpod-operate-slurm.md)
+ [使用生命周期脚本自定义 SageMaker HyperPod 集群](sagemaker-hyperpod-lifecycle-best-practices-slurm.md)
+ [SageMaker HyperPod 多头节点支持](sagemaker-hyperpod-multihead-slurm.md)
+ [SageMaker HyperPod 集群上的作业](sagemaker-hyperpod-run-jobs-slurm.md)
+ [SageMaker HyperPod 集群资源监控](sagemaker-hyperpod-cluster-observability-slurm.md)
+ [SageMaker HyperPod 集群弹性](sagemaker-hyperpod-resiliency-slurm.md)
+ [使用 Slurm 持续配置以增强集群操作](sagemaker-hyperpod-scaling-slurm.md)
+ [SageMaker HyperPod 集群管理](sagemaker-hyperpod-cluster-management-slurm.md)
+ [SageMaker HyperPod FAQs](sagemaker-hyperpod-faq-slurm.md)