本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
多节点并行作业
您可以使用多节点并行任务来运行跨多个 Amazon EC2 实例的单个任务。借助 AWS Batch 多节点并行任务(也称为群组调度),您可以运行大规模、高性能的计算应用程序和分布式GPU模型训练,而无需直接启动、配置和管理 Amazon EC2 资源。 AWS Batch 多节点 parallel 作业与任何支持基于 IP 的节点间通信的框架兼容。示例包括 Apache MXNet、 TensorFlow、Caffe2 或消息传递接口 () MPI。
多节点并行作业可作为单个作业提交。不过,作业定义(或作业提交节点覆盖)指定了要为作业创建的节点数量,以及要创建的节点组。每个多节点并行作业都包含一个主节点,这是最先启动的节点。主节点启动之后,子节点会启动并开始运行。只有当主节点退出时,作业才会完成。然后停止所有子节点。有关更多信息,请参阅 节点组。
多节点并行作业节点为单租户。这意味着每个 Amazon EC2 实例上只运行一个任务容器。
最终的作业状态(SUCCEEDED
或 FAILED
)由主节点的最终作业状态决定。要获取多节点并行作业的状态,可以使用提交作业时返回的作业 ID 来描述作业。如果需要子节点的详细信息,则必须分别描述每个子节点。您可以使用 #
表示法(从 0 开头)对节点进行寻址。例如,要访问任务的第二个节点的详细信息,请使用 AWS Batch DescribeJobsAPI操作描述 N
aws_batch_job_id
#1。多节点并行作业的 started
、stoppedAt
、statusReason
和 exit
信息从主节点进行填充。
如果指定作业重试次数,则主节点故障会导致再次尝试重试。子节点故障不会导致更多的尝试发生。多节点并行作业每次新的尝试都将更新其关联子节点的相应尝试。
要在上运行多节点 parallel 作业 AWS Batch,您的应用程序代码必须包含分布式通信所需的框架和库。