

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

# AWS 인프라에 최적화된 SMDDP 라이브러리와의 호환성
<a name="model-parallel-core-features-v2-smddp-allgather"></a>

 AWS 인프라에 최적화된 `AllGather` 집합 통신 작업을 제공하는 SageMaker [분산 데이터 병렬 처리(SMDDP) 라이브러리와 함께 SageMaker 모델 병렬 처리 라이브러리 v2(SMP v2)](data-parallel.md)를 사용할 수 있습니다. 분산 훈련에서 집합 통신 작업은 여러 GPU 작업자를 동기화하고 이들 간에 정보를 교환하도록 설계되었습니다. `AllGather`는 일반적으로 샤딩된 데이터 병렬 처리에 사용되는 핵심 집합 통신 작업 중 하나입니다. SMDDP `AllGather` 작업에 대해 자세히 알아보려면 이러한 집합 통신 작업 [SMDDP `AllGather` 집합 작업](data-parallel-intro.md#data-parallel-allgather) 최적화를 참조하세요. 이러한 집합 통신 작업은 수렴에 대한 부작용 없이 더 빠른 엔드 투 엔드 훈련에 직접적으로 기여합니다.

**참고**  
SMDDP 라이브러리는 P4 및 P4de 인스턴스를 지원합니다(SMDDP 라이브러리의 [지원되는 프레임워크 AWS 리전및 인스턴스 유형](distributed-data-parallel-support.md) 참조).

SMDDP 라이브러리는 [프로세스 그룹](https://pytorch.org/docs/stable/distributed.html) 계층을 통해 PyTorch와 기본적으로 통합됩니다. SMDDP 라이브러리를 사용하려면 훈련 스크립트에 두 줄의 코드만 추가하면 됩니다. SageMaker Model Parallelism Library, PyTorch FSDP 및 DeepSpeed와 같은 모든 훈련 프레임워크를 지원합니다.

SMDDP를 활성화하고 `AllGather` 작업을 사용하려면 [1단계: PyTorch FSDP 훈련 스크립트 조정](model-parallel-use-api-v2.md#model-parallel-adapt-pytorch-script-v2)의 일부로 훈련 스크립트에 두 줄의 코드를 추가해야 합니다. 먼저 SMDDP 백엔드로 PyTorch Distributed를 초기화한 다음 SMP 초기화를 실행해야 합니다.

```
import torch.distributed as dist

# Initialize with SMDDP
import smdistributed.dataparallel.torch.torch_smddp
dist.init_process_group(backend="smddp") # Replacing "nccl"

 # Initialize with SMP
import torch.sagemaker as tsm
tsm.init()
```

PyTorch용 [SageMaker 프레임워크 컨테이너](https://github.com/aws/deep-learning-containers/blob/master/available_images.md#sagemaker-framework-containers-sm-support-only)(SMP v2의 [지원되는 프레임워크 및 AWS 리전](distributed-model-parallel-support-v2.md) 및 SMDDP 라이브러리의 [지원되는 프레임워크 AWS 리전및 인스턴스 유형](distributed-data-parallel-support.md) 참조)는 SMP 바이너리 및 SMDDP 바이너리로 사전 패키징됩니다. SMDebug 라이브러리 도구에 대한 자세한 내용은 [SageMaker AI 분산형 데이터 병렬화 라이브러리를 사용하여 분산 훈련 실행](data-parallel.md) 섹션을 참조하세요.