多节点并行作业 - Amazon Batch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

多节点并行作业

您可以使用多节点并行任务来运行跨多个 Amazon EC2 实例的单个任务。借助 Amazon Batch 多节点并行任务(也称为群组调度),您可以运行大规模、高性能的计算应用程序和分布式 GPU 模型训练,而无需直接启动、配置和管理 Amazon EC2 资源。 Amazon Batch 多节点 parallel 作业与任何支持基于 IP 的节点间通信的框架兼容。示例包括 Apache MXNet、 TensorFlow、Caffe2 或消息传递接口 (MPI)。

多节点并行作业可作为单个作业提交。不过,作业定义(或作业提交节点覆盖)指定了要为作业创建的节点数量,以及要创建的节点组。每个多节点并行作业都包含一个主节点,这是最先启动的节点。主节点启动之后,子节点会启动并开始运行。只有当主节点退出时,作业才会完成。然后停止所有子节点。有关更多信息,请参阅 节点组

多节点并行作业节点为单租户。这意味着每个 Amazon EC2 实例上只运行一个任务容器。

最终的作业状态(SUCCEEDEDFAILED)由主节点的最终作业状态决定。要获取多节点并行作业的状态,可以使用提交作业时返回的作业 ID 来描述作业。如果需要子节点的详细信息,则必须分别描述每个子节点。您可以使用 #N 表示法(从 0 开头)对节点进行寻址。例如,要访问任务的第二个节点的详细信息,请使用 Amazon Batch DescribeJobsAPI 操作描述 aws_batch_job_id #1。多节点并行作业的 startedstoppedAtstatusReasonexit 信息从主节点进行填充。

如果指定作业重试次数,则主节点故障会导致再次尝试重试。子节点故障不会导致更多的尝试发生。多节点并行作业每次新的尝试都将更新其关联子节点的相应尝试。

要在上运行多节点 parallel 作业 Amazon Batch,您的应用程序代码必须包含分布式通信所需的框架和库。