다중 노드 병렬 작업
다중 노드 병렬 작업을 사용하면 여러 Amazon EC2 인스턴스에 걸쳐 단일 작업을 실행할 수 있습니다. AWS Batch 다중 노드 병렬 작업(단체 예약이라고도 함)을 사용하면 Amazon EC2 리소스를 직접 시작, 구성 및 관리할 필요 없이 긴밀하게 결합된 대규모 고성능 컴퓨팅 애플리케이션과 분산 GPU 모델 학습을 실행할 수 있습니다. AWS Batch 다중 노드 병렬 작업은 IP 기반 노드 간 통신을 지원하는 모든 프레임워크와 호환됩니다. Apache MXNet, TensorFlow, Caffe2 또는 Message Passing Interface (MPI) 등을 예로 들 수 있습니다.
다중 노드 병렬 작업은 단일 작업으로 제출됩니다. 하지만 작업 정의(또는 작업 제출 노드 재정의)는 작업에 생성할 노드 수와 생성할 노드 그룹을 지정합니다. 각 다중 노드 병렬 작업에는 처음에 시작되는 기본 노드가 포함됩니다. 기본 노드가 가동된 후 하위 노드가 시작됩니다. 메인 노드가 종료되는 경우에만 작업이 완료됩니다. 그러면 모든 하위 노드가 중지됩니다. 자세한 내용은 노드 그룹 단원을 참조하십시오.
다중 노드 병렬 작업 노드는 단일 테넌트입니다. 즉, 각 Amazon EC2 인스턴스에서 작업 컨테이너가 하나만 실행됩니다.
최종 작업 상태(SUCCEEDED
또는 FAILED
)는 기본 노드의 최종 작업 상태에 따라 결정됩니다. 다중 노드 병렬 작업의 상태를 가져오려면 작업을 제출할 때 반환된 작업 ID를 사용하여 작업을 설명할 수 있습니다. 하위 노드에 대한 세부 정보가 필요한 경우 각 하위 노드를 개별적으로 설명해야 합니다. #
표기법(0부터 시작)을 사용하여 노드에 주소를 지정할 수 있습니다. 예를 들어, 작업의 두 번째 노드에 대한 세부 정보에 액세스하려면 AWS Batch DescribeJobs API 작업을 사용하여 N
aws_batch_job_id
#1을 설명합니다. 다중 노드 병렬 작업에 대한 started
, stoppedAt
, statusReason
및 exit
정보는 기본 노드에서 채워집니다.
작업 재시도를 지정하는 경우 메인 노드 장애로 인해 또 다른 시도가 발생합니다. 하위 노드 장애로 인해 추가 시도가 발생하지는 않습니다. 다중 노드 병렬 작업의 새로운 시도가 발생할 때마다 연결된 하위 노드의 해당 시도가 업데이트됩니다.
AWS Batch에서 다중 노드 병렬 작업을 실행하려면 분산 통신에 필요한 프레임워크와 라이브러리가 애플리케이션 코드에 포함되어야 합니다.