Amazon SageMaker HyperPod 태스크 거버넌스에서 컴퓨팅 할당량 할당 - Amazon SageMaker AI

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

Amazon SageMaker HyperPod 태스크 거버넌스에서 컴퓨팅 할당량 할당

클러스터 관리자는 조직이 구매한 컴퓨팅을 사용하는 방법을 결정할 수 있습니다. 이렇게 하면 낭비되는 리소스와 유휴 리소스가 줄어듭니다. 팀이 미사용 리소스를 서로 빌릴 수 있도록 컴퓨팅 할당량을 할당할 수 있습니다. HyperPod 작업 거버넌스의 컴퓨팅 할당량 할당을 사용하면 관리자가 인스턴스 수준과 보다 세분화된 리소스 수준에서 리소스를 할당할 수 있습니다. 이 기능은 전체 인스턴스 할당을 요구하지 않고 개별 컴퓨팅 리소스를 세밀하게 제어할 수 있도록 하여 팀에 유연하고 효율적인 리소스 관리를 제공합니다. 세분화된 수준에서 할당하면 기존 인스턴스 수준 할당의 비효율성이 제거됩니다. 이 접근 방식을 통해 리소스 사용률을 최적화하고 유휴 컴퓨팅을 줄일 수 있습니다.

컴퓨팅 할당량 할당은 액셀러레이터, vCPU 및 메모리라는 세 가지 유형의 리소스 할당을 지원합니다. 가속기는 부동 소수점 수 계산, 그래픽 처리 또는 데이터 패턴 일치와 같은 기능을 수행하는 가속 컴퓨터 인스턴스의 구성 요소입니다. 액셀러레이터에는 GPUs, Trainium 액셀러레이터 및 뉴런 코어가 포함됩니다. 다중 팀 GPU 공유의 경우 여러 팀이 동일한 인스턴스 유형에서 특정 GPU 할당을 수신하여 액셀러레이터 하드웨어의 사용률을 극대화할 수 있습니다. 데이터 사전 처리 또는 모델 캐싱 시나리오에 추가 RAM이 필요한 메모리 집약적 워크로드의 경우 기본 GPU-to-memory 비율 이상으로 메모리 할당량을 할당할 수 있습니다. GPU 훈련과 함께 상당한 CPU 리소스가 필요한 CPU가 많은 사전 처리 작업의 경우 독립적인 CPU 리소스 할당을 할당할 수 있습니다.

값을 제공하면 HyperPod 작업 거버넌스는 수식 할당 리소스를 인스턴스에서 사용 가능한 총 리소스 양으로 나눈 값을 사용하여 비율을 계산합니다. 그런 다음 HyperPod 작업 거버넌스는이 비율을 사용하여 다른 리소스에 기본 할당을 적용하지만 이러한 기본값을 재정의하고 사용 사례에 따라 사용자 지정할 수 있습니다. 다음은 HyperPod 작업 거버넌스가 값을 기반으로 리소스를 할당하는 방법에 대한 샘플 시나리오입니다.

  • 액셀러레이터만 지정됨 - HyperPod 태스크 거버넌스는 액셀러레이터 값을 기반으로 vCPU 및 메모리에 기본 비율을 적용합니다.

  • vCPU만 지정됨 - HyperPod 작업 거버넌스는 비율을 계산하여 메모리에 적용합니다. 가속기는 0으로 설정됩니다.

  • 지정된 메모리만 - HyperPod 작업 거버넌스는 메모리 지정 워크로드를 실행하는 데 컴퓨팅이 필요하므로 비율을 계산하여 vCPU에 적용합니다. 가속기는 0으로 설정됩니다.

할당량 할당을 프로그래밍 방식으로 제어하려면 ComputeQuotaResourceConfig 객체를 사용하고 할당을 정수로 지정할 수 있습니다.

{ "ComputeQuotaConfig": { "ComputeQuotaResources": [{ "InstanceType": "ml.g5.24xlarge", "Accelerators": "16", "vCpu": "200.0", "MemoryInGiB": "2.0" }] } }

기본값을 포함하여 할당된 모든 할당을 보려면 DescribeComputeQuota 작업을 사용합니다. 할당을 업데이트하려면 UpdateComputeQuota 작업을 사용합니다.

HyperPod CLI를 사용하여 컴퓨팅 할당량을 할당할 수도 있습니다. HyperPod CLI에 대한 자세한 내용은 섹션을 참조하세요Amazon EKS에서 오케스트레이션한 SageMaker HyperPod 클러스터에서 작업 실행. 다음 예제에서는 HyperPod CLI를 사용하여 컴퓨팅 할당량을 설정하는 방법을 보여줍니다.

hyp create hyp-pytorch-job --version 1.1 --job-name sample-job \ --image 123456789012.dkr.ecr.us-west-2.amazonaws.com/ptjob:latest \ --pull-policy "Always" \ --tasks-per-node 1 \ --max-retry 1 \ --priority high-priority \ --namespace hyperpod-ns-team-name \ --queue-name hyperpod-ns-team-name-localqueue \ --instance-type sample-instance-type \ --accelerators 1 \ --vcpu 3 \ --memory 1 \ --accelerators-limit 1 \ --vcpu-limit 4 \ --memory-limit 2

AWS 콘솔을 사용하여 할당량을 할당하려면 다음 단계를 따릅니다.

  1. https://console.aws.amazon.com/sagemaker/ Amazon SageMaker AI 콘솔을 엽니다.

  2. HyperPod 클러스터에서 클러스터 관리를 선택합니다.

  3. 컴퓨팅 할당에서 생성을 선택합니다.

  4. 아직 인스턴스가 없는 경우 할당 추가를 선택하여 인스턴스를 추가합니다.

  5. 할당에서 인스턴스 또는 개별 리소스별로 할당하도록 선택합니다. 개별 리소스별로 할당하는 경우 SageMaker AI는 선택한 비율에 따라 다른 리소스에 할당을 자동으로 할당합니다. 이 비율 기반 할당을 재정의하려면 해당 토글을 사용하여 해당 컴퓨팅을 재정의합니다.

  6. 4단계와 5단계를 반복하여 추가 인스턴스를 구성합니다.

컴퓨팅 할당량을 할당한 후 HyperPod CLI 또는를 통해 작업을 제출할 수 있습니다kubectl. HyperPod는 사용 가능한 할당량을 기반으로 워크로드를 효율적으로 예약합니다.