Amazon SageMaker AI의 이기종 클러스터에서 분산 훈련 실행 - Amazon SageMaker AI

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon SageMaker AI의 이기종 클러스터에서 분산 훈련 실행

SageMaker AI 예측기 클래스의 distribution 인수를 통해 분산 훈련을 실행할 특정 인스턴스 그룹을 할당할 수 있습니다. 예를 들어, 다음 두 인스턴스 그룹이 있고 그 중 하나에 대해 다중GPU 훈련을 실행하려는 경우를 가정해 보겠습니다.

from sagemaker.instance_group import InstanceGroup instance_group_1 = InstanceGroup("instance_group_1", "ml.c5.18xlarge", 1) instance_group_2 = InstanceGroup("instance_group_2", "ml.p3dn.24xlarge", 2)

인스턴스 그룹 중 하나에 대해 분산 훈련 구성을 설정할 수 있습니다. 예를 들어, 다음 코드 예제는 분산 훈련 구성에 두 개의 ml.p3dn.24xlarge 인스턴스를 사용하여 training_group_2를 할당하는 방법을 보여줍니다.

참고

현재는 이기종 클러스터의 인스턴스 그룹 하나만 배포 구성에 지정할 수 있습니다.

와 함께 MPI

PyTorch
from sagemaker.pytorch import PyTorch estimator = PyTorch( ... instance_groups=[instance_group_1, instance_group_2], distribution={ "mpi": { "enabled": True, "processes_per_host": 8 }, "instance_groups": [instance_group_2] } )
TensorFlow
from sagemaker.tensorflow import TensorFlow estimator = TensorFlow( ... instance_groups=[instance_group_1, instance_group_2], distribution={ "mpi": { "enabled": True, "processes_per_host": 8 }, "instance_groups": [instance_group_2] } )

SageMaker AI 데이터 병렬 라이브러리 사용

PyTorch
from sagemaker.pytorch import PyTorch estimator = PyTorch( ... instance_groups=[instance_group_1, instance_group_2], distribution={ "smdistributed": { "dataparallel": { "enabled": True } }, "instance_groups": [instance_group_2] } )
TensorFlow
from sagemaker.tensorflow import TensorFlow estimator = TensorFlow( ... instance_groups=[instance_group_1, instance_group_2], distribution={ "smdistributed": { "dataparallel": { "enabled": True } }, "instance_groups": [instance_group_2] } )
참고

SageMaker AI 데이터 병렬 라이브러리를 사용하는 경우 인스턴스 그룹이 라이브러리에서 지원하는 인스턴스 유형으로 구성되어 있는지 확인합니다.

SageMaker AI 데이터 병렬 라이브러리에 대한 자세한 내용은 SageMaker AI 데이터 병렬 훈련을 참조하세요.

SageMaker AI 모델 병렬 라이브러리 사용

PyTorch
from sagemaker.pytorch import PyTorch estimator = PyTorch( ... instance_groups=[instance_group_1, instance_group_2], distribution={ "smdistributed": { "modelparallel": { "enabled":True, "parameters": { ... # SageMaker AI model parallel parameters } } }, "instance_groups": [instance_group_2] } )
TensorFlow
from sagemaker.tensorflow import TensorFlow estimator = TensorFlow( ... instance_groups=[instance_group_1, instance_group_2], distribution={ "smdistributed": { "modelparallel": { "enabled":True, "parameters": { ... # SageMaker AI model parallel parameters } } }, "instance_groups": [instance_group_2] } )

SageMaker AI 모델 병렬 라이브러리에 대한 자세한 내용은 SageMaker AI 모델 병렬 훈련을 참조하세요.