기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon SageMaker AI의 이기종 클러스터에서 분산 훈련 실행
SageMaker AI ModelTrainer 클래스의 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를 할당하는 방법을 보여줍니다.
참고
현재는 이기종 클러스터의 인스턴스 그룹 하나만 배포 구성에 지정할 수 있습니다. SageMaker AI Python SDK v3에서 Torchrun 분산 구성은 인스턴스 그룹 파라미터를 수락하지 않으며 훈련 작업의 모든 인스턴스에 적용됩니다.
MPI 사용 시
PyTorch
from sagemaker.trainimportModelTrainerfrom sagemaker.train.distributed import Torchrun # Note: In v3, Torchrun does not support scoping to a specific instance group. # It applies to all instances in the training job. Use instance_groups with # Channel/S3DataSource to control which group receives training data. model_trainer =ModelTrainer( ... instance_groups=[instance_group_1,instance_group_2], distributed=Torchrun() )
TensorFlow
from sagemaker.trainimportModelTrainerfrom sagemaker.train.distributed import Torchrun # Note: In v3, Torchrun does not support scoping to a specific instance group. # It applies to all instances in the training job. Use instance_groups with # Channel/S3DataSource to control which group receives training data. model_trainer =ModelTrainer( ... instance_groups=[instance_group_1,instance_group_2], distributed=Torchrun() )
SageMaker AI 데이터 병렬 라이브러리 사용
PyTorch
from sagemaker.trainimportModelTrainerfrom sagemaker.train.distributed import Torchrun model_trainer =ModelTrainer( ... instance_groups=[instance_group_1,instance_group_2], distributed=Torchrun() )
TensorFlow
from sagemaker.trainimportModelTrainerfrom sagemaker.train.distributed import Torchrun model_trainer =ModelTrainer( ... instance_groups=[instance_group_1,instance_group_2], distributed=Torchrun() )
참고
SageMaker AI 데이터 병렬 라이브러리를 사용하는 경우 인스턴스 그룹이 라이브러리에서 지원하는 인스턴스 유형으로 구성되어 있는지 확인하세요.
SageMaker AI 데이터 병렬 라이브러리에 대한 자세한 내용은 SageMaker AI 데이터 병렬 훈련을 참조하세요.
SageMaker AI 모델 병렬 라이브러리 사용
PyTorch
from sagemaker.trainimportModelTrainerfrom sagemaker.train.distributed import Torchrun model_trainer =ModelTrainer( ... instance_groups=[instance_group_1,instance_group_2], distributed=Torchrun() )
TensorFlow
from sagemaker.trainimportModelTrainerfrom sagemaker.train.distributed import Torchrun model_trainer =ModelTrainer( ... instance_groups=[instance_group_1,instance_group_2], distributed=Torchrun() )
SageMaker AI 모델 병렬 라이브러리에 대한 자세한 내용은 SageMaker AI 모델 병렬 훈련을 참조하세요.