가속기 최적화 VM 만들기


이 문서에서는 가속기 최적화 머신 계열을 사용하는 VM을 만드는 방법을 설명합니다. 가속기 최적화 머신 계열은 A3, A2, G2 머신 유형에서 사용 가능합니다.

각 가속기 최적화 머신 유형에는 특정 NVIDIA GPU 모델이 연결되어 있습니다.

  • A3 가속기 최적화 머신 유형의 경우 NVIDIA H100 80GB GPU가 연결됩니다. 다음과 같은 옵션으로 제공됩니다.
    • A3 Mega: 이 머신 유형에는 H100 80GB GPU가 연결됩니다.
    • A3 High: 이 머신 유형에는 H100 80GB GPU가 연결됩니다.
    • A3 Edge: 이 머신 유형에는 H100 80GB GPU가 연결됩니다.
  • A2 가속기 최적화 머신 유형의 경우 NVIDIA A100 GPU가 연결됩니다. 다음과 같은 옵션으로 제공됩니다.
    • A2 Ultra: 이 머신 유형에는 A100 80GB GPU가 연결됩니다.
    • A2 Standard: 이 머신 유형에는 A100 40GB GPU가 연결됩니다.
  • G2 가속기 최적화 머신 유형의 경우 NVIDIA L4 GPU가 연결됩니다.

시작하기 전에

  • OS 이미지 선택 및 GPU 할당량 확인과 같은 추가적인 기본 요건 단계를 검토하려면 개요 문서를 검토하세요.
  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다. 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음 옵션 중 하나를 선택하여 Compute Engine에 인증하면 됩니다.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      자세한 내용은 Google Cloud 인증 문서의 REST 사용을 위한 인증을 참고하세요.

필요한 역할

VM을 만드는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Compute 인스턴스 관리자(v1)(roles/compute.instanceAdmin.v1) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

이 사전 정의된 역할에는 VM을 만드는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

VM을 만들려면 다음 권한이 필요합니다.

  • 프로젝트에 대한 compute.instances.create 권한
  • 커스텀 이미지를 사용하여 VM 만들기: 이미지에 대한 compute.images.useReadOnly 권한
  • 스냅샷을 사용하여 VM 만들기: 스냅샷에 대한 compute.snapshots.useReadOnly 권한
  • 인스턴스 템플릿을 사용하여 VM 만들기: 인스턴스 템플릿에 대한 compute.instanceTemplates.useReadOnly 권한
  • VM에 레거시 네트워크 할당: 프로젝트에 대한 compute.networks.use 권한
  • VM의 고정 IP 주소 지정: 프로젝트에 대한 compute.addresses.use 권한
  • 레거시 네트워크 사용 시 VM에 외부 IP 주소 할당: 프로젝트에 대한 compute.networks.useExternalIp 권한
  • VM의 서브넷 지정: 프로젝트 또는 선택한 서브넷에 대한 compute.subnetworks.use 권한
  • VPC 네트워크를 사용할 때 VM에 외부 IP 주소 할당: 프로젝트 또는 선택한 서브넷에 대한 compute.subnetworks.useExternalIp 권한
  • VM에 VM 인스턴스 메타데이터 설정: 프로젝트에 대한 compute.instances.setMetadata 권한
  • VM에 태그 설정: VM에 대한 compute.instances.setTags 권한
  • VM에 라벨 설정: VM에 대한 compute.instances.setLabels 권한
  • VM에 사용할 서비스 계정 설정: VM에 대한 compute.instances.setServiceAccount 권한
  • VM의 새 디스크 만들기: 프로젝트에 대한 compute.disks.create 권한
  • 기존 디스크를 읽기 전용 또는 읽기-쓰기 모드로 연결: 디스크에 대한 compute.disks.use 권한
  • 기존 디스크를 읽기 전용 모드로 연결: 디스크에 대한 compute.disks.useReadOnly 권한

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

GPU가 연결된 VM 만들기

Google Cloud 콘솔, Google Cloud CLI 또는 REST를 사용하여 A3, A2, G2 가속기 최적화 VM을 만들 수 있습니다.

G2 VM에 일부 맞춤설정을 수행하려면 Google Cloud CLI 또는 REST를 사용해야 할 수 있습니다. G2 제한사항을 참조하세요.

콘솔

  1. Google Cloud 콘솔에서 인스턴스 만들기 페이지로 이동합니다.

    인스턴스 만들기로 이동

  2. VM의 이름을 지정합니다. 리소스 이름 지정 규칙을 참조합니다.

  3. GPU를 사용할 수 있는 리전 및 영역을 선택합니다. 사용 가능한 GPU 리전 및 영역 목록을 참조하세요.

  4. 머신 구성 섹션에서 GPU 머신 계열을 선택한 후 다음을 수행합니다.

    1. GPU 유형 목록에서 GPU 유형을 선택합니다.

      • A3 가속기 최적화 VM의 경우 NVIDIA H100 80GB 또는 NVIDIA H100 80GB MEGA를 선택합니다.
      • A2 가속기 최적화 VM의 경우 NVIDIA A100 40GB 또는 NVIDIA A100 80GB를 선택합니다.
      • G2 가속기 최적화 VM의 경우 NVIDIA L4를 선택합니다.
    2. GPU 수 목록에서 GPU 수를 선택합니다.

    3. GPU 모델이 그래픽 워크로드에 대한 NVIDIA RTX 가상 워크스테이션 (vWS)을 지원하고 이 VM에서 그래픽 집중 워크로드를 실행하려는 경우 가상 워크스테이션(NVIDIA GRID) 사용 설정을 선택하세요.

  5. 부팅 디스크 섹션에서 변경을 클릭합니다. 그러면 부팅 디스크 구성 페이지가 열립니다.

  6. 부팅 디스크 구성 페이지에서 다음을 수행합니다.

    1. 공개 이미지 탭에서 지원되는 Compute Engine 이미지 또는 Deep Learning VM Image를 선택합니다.
    2. 부팅 디스크 크기를 최소 40GB 이상으로 지정합니다.
    3. 부팅 디스크 옵션을 확인하려면 선택을 클릭합니다.
  7. 선택사항: 프로비저닝 모델을 구성합니다. 예를 들어 워크로드가 내결함성이 있고 잠재적인 VM 선점을 견딜 수 있는 경우 스팟 VM을 사용하여 VM 및 연결된 GPU의 비용을 줄이는 것이 좋습니다. 자세한 내용은 스팟 VM의 GPU를 참조하세요. 이렇게 하려면 다음 단계를 완료해야 합니다.

    1. 가용성 정책 섹션의 VM 프로비저닝 모델 목록에서 Spot을 선택합니다. 이 설정은 VM의 자동 재시작 및 호스트 유지보수 옵션을 중지합니다.
    2. 선택사항: VM 종료 시 목록에서 Compute Engine이 VM을 선점할 때 수행되는 작업을 선택합니다.
      • 선점 중에 VM을 중지하려면 중지(기본값)를 선택합니다.
      • 선점 중에 VM을 삭제하려면 삭제를 선택합니다.
  8. 만들기를 클릭하여 VM을 만들고 시작합니다.

gcloud

VM을 만들고 시작하려면 다음 플래그와 함께 gcloud compute instances create 명령어를 사용합니다. GPU가 있는 VM은 라이브 마이그레이션을 지원하지 않으므로 --maintenance-policy=TERMINATE 플래그를 설정해야 합니다.

샘플 명령어에 다음과 같은 선택적 플래그가 표시됩니다.

  • VM을 스팟 VM으로 구성하는 --provisioning-model=SPOT 플래그입니다. 워크로드가 내결함성이 있고 잠재적인 VM 선점을 견딜 수 있는 경우 스팟 VM을 사용하여 VM 및 연결된 GPU의 비용을 줄이는 것이 좋습니다. 자세한 내용은 스팟 VM의 GPU를 참조하세요. 스팟 VM의 경우 자동 재시작 및 호스트 유지보수 옵션 플래그가 사용 중지됩니다.
  • --accelerator 플래그를 사용하여 가상 워크스테이션을 지정합니다. NVIDIA RTX 가상 워크스테이션(vWS)은 G2 VM에서만 지원됩니다.
  gcloud compute instances create VM_NAME \
      --machine-type=MACHINE_TYPE \
      --zone=ZONE \
      --boot-disk-size=DISK_SIZE \
      --image=IMAGE \
      --image-project=IMAGE_PROJECT \
      --maintenance-policy=TERMINATE \
      [--provisioning-model=SPOT] \
      [--accelerator=type=nvidia-l4-vws,count=VWS_ACCELERATOR_COUNT]
  
다음을 바꿉니다.
  • VM_NAME: 새 VM의 이름입니다.
  • MACHINE_TYPE : 선택한 머신 유형입니다. 다음 중 하나를 선택하세요.
    • A3 머신 유형
    • A2 머신 유형
    • G2 머신 유형. G2 머신 유형은 커스텀 메모리도 지원합니다. 메모리는 1,024MB의 배수여야 하고 지원되는 메모리 범위 내에 있어야 합니다. 예를 들어 vCPU 4개와 메모리 19GB를 사용하는 VM을 만들려면 --machine-type=g2-custom-4-19456을 지정합니다.
  • ZONE: VM의 영역입니다. 이 영역은 선택한 GPU 모델을 지원해야 합니다.
  • DISK_SIZE: 부팅 디스크의 크기(GB 단위)입니다. 부팅 디스크 크기를 최소 40GB 이상으로 지정합니다.
  • IMAGE: GPU를 지원하는 운영체제 이미지입니다. 이미지 계열에서 최신 이미지를 사용하려면 --image 플래그를 --image-family 플래그로 바꾸고 GPU를 지원하는 이미지 계열로 값을 설정합니다. 예: --image-family=rocky-linux-8-optimized-gcp
    커스텀 이미지 또는 Deep Learning VM Image를 지정할 수도 있습니다.
  • IMAGE_PROJECT: OS 이미지가 속한 Compute Engine 이미지 프로젝트입니다. 커스텀 이미지 또는 Deep Learning VM Image를 사용하는 경우 해당 이미지가 속하는 프로젝트를 지정합니다.
  • VWS_ACCELERATOR_COUNT: 필요한 가상 GPU 수입니다.

REST

POST 요청을 instances.insert 메서드로 보냅니다. GPU가 있는 VM은 라이브 마이그레이션을 지원하지 않으므로 onHostMaintenance 매개변수를 TERMINATE로 설정해야 합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
"disks":
[
  {
    "type": "PERSISTENT",
    "initializeParams":
    {
      "diskSizeGb": "DISK_SIZE",
      "sourceImage": "SOURCE_IMAGE_URI"
    },
    "boot": true
  }
],
"name": "VM_NAME",
"networkInterfaces":
[
  {
    "network": "projects/PROJECT_ID/global/networks/NETWORK"
  }
],
"scheduling":
{
  "onHostMaintenance": "terminate",
  ["automaticRestart": true]
},
}

다음을 바꿉니다.
  • VM_NAME: 새 VM의 이름입니다.
  • PROJECT_ID: 프로젝트 ID입니다.
  • ZONE: VM의 영역입니다. 이 영역은 선택한 GPU 모델을 지원해야 합니다.
  • MACHINE_TYPE : 선택한 머신 유형입니다. 다음 중 하나를 선택하세요.
    • A3 머신 유형
    • A2 머신 유형
    • G2 머신 유형. G2 머신 유형은 커스텀 메모리도 지원합니다. 메모리는 1,024MB의 배수여야 하고 지원되는 메모리 범위 내에 있어야 합니다. 예를 들어 vCPU 4개와 메모리 19GB를 사용하는 VM을 만들려면 --machine-type=g2-custom-4-19456을 지정합니다.
    SOURCE_IMAGE_URI: 사용할 특정 이미지나 이미지 계열의 URI입니다. 예를 들면 다음과 같습니다.
    • 특정 이미지: "sourceImage": "projects/rocky-linux-cloud/global/images/rocky-linux-8-optimized-gcp-v20220719"
    • 이미지 계열: "sourceImage": "projects/rocky-linux-cloud/global/images/family/rocky-linux-8-optimized-gcp"
    이미지 계열을 지정하면 Compute Engine이 해당 계열의 지원 중단되지 않은 최신 OS 이미지에서 VM을 만듭니다. 이미지 계열을 사용할 시기에 대한 자세한 내용은 이미지 계열 권장사항을 참조하세요.
  • DISK_SIZE: 부팅 디스크의 크기(GB 단위)입니다. 부팅 디스크 크기를 최소 40GB 이상으로 지정합니다.
  • NETWORK: VM에 사용하려는 VPC 네트워크입니다. 기본 네트워크를 사용하도록 '기본값'을 지정할 수 있습니다.
추가 설정:
  • 워크로드가 내결함성이 있고 잠재적인 VM 선점을 견딜 수 있는 경우 스팟 VM을 사용하여 VM 및 연결된 GPU의 비용을 줄이는 것이 좋습니다. 자세한 내용은 스팟 VM의 GPU를 참조하세요. 스팟 VM을 지정하려면 요청에 "provisioningModel": "SPOT" 옵션을 추가합니다. 스팟 VM의 경우 자동 재시작 및 호스트 유지보수 옵션 플래그가 사용 중지됩니다.
    "scheduling":
      {
        "provisioningModel": "SPOT"
      }
    
  • G2 VM에서는 NVIDIA RTX 가상 워크스테이션(vWS)이 지원됩니다. 가상 워크스테이션을 지정하려면 요청에 'guestAccelerators' 옵션을 추가하세요. VWS_ACCELERATOR_COUNT를 필요한 가상 GPU 수로 바꿉니다.
    "guestAccelerators":
      [
        {
          "acceleratorCount": VWS_ACCELERATOR_COUNT,
          "acceleratorType": "projects/PROJECT_ID/zones/ZONEacceleratorTypes/nvidia-l4-vws"
        }
      ]
    

제한사항

A3 VM

A3 Edge, A3 High, A3 Mega 머신 유형을 사용하는 VM에는 다음 제한사항이 적용됩니다.

  • A3 머신 유형을 사용하는 VM에는 지속 사용 할인 및 가변형 약정 사용 할인이 적용되지 않습니다.
  • 특정 리전과 영역에서만 A3 머신 유형을 사용할 수 있습니다.
  • A3 머신 유형을 사용하는 VM에서는 리전 영구 디스크를 사용할 수 없습니다.
  • A3 머신 계열은 Sapphire Rapids 플랫폼에서만 사용할 수 있습니다.
  • VM에서 A3 머신 유형을 사용하는 경우에는 머신 유형을 변경할 수 없습니다. 머신 유형을 변경해야 하는 경우에는 새 VM을 만들어야 합니다.
  • VM 머신 유형을 A3 머신 유형으로 변경할 수 없습니다. A3 머신 유형을 사용하는 VM이 필요하면 새 VM을 만들어야 합니다.
  • A3 머신 유형은 단독 테넌시를 지원하지 않습니다.
  • A3 머신 유형에서는 Windows 운영체제를 실행할 수 없습니다.
  • 특정 예약을 통해서만 A3 머신 유형을 예약할 수 있습니다.
  • a3-highgpu-1g, a3-highgpu-2g, a3-highgpu-4g 머신 유형의 경우 다음과 같은 제한사항이 적용됩니다.
    • 이러한 머신 유형의 경우 스팟 VM을 사용하거나 MIG의 크기 조절 요청과 같이 동적 워크로드 스케줄러 (DWS)를 사용하는 기능을 사용해야 합니다. 이러한 옵션에 관한 자세한 안내는 다음을 검토하세요.
    • 이러한 머신 유형에서는 하이퍼디스크 균형을 사용할 수 없습니다.
    • 예약을 만들 수 없습니다.
    표준 프로비저닝을 사용하여 VM을 만들거나 이러한 머신 유형에 대한 예약을 만들려고 하면 오류 메시지가 표시됩니다.

A2 표준 VM

  • A2 표준 머신 유형을 사용하는 VM에는 지속 사용 할인 및 가변형 약정 사용 할인이 적용되지 않습니다.
  • 특정 리전과 영역에서만 A2 표준 머신 유형을 사용할 수 있습니다.
  • A2 표준 머신 유형을 사용하는 VM에서는 리전 영구 디스크를 사용할 수 없습니다.
  • Cascade Lake 플랫폼에서만 A2 표준 머신 유형을 사용할 수 있습니다.
  • VM에서 A2 표준 머신 유형을 사용하는 경우 한 A2 표준 머신 유형에서 다른 A2 표준 머신 유형으로만 전환할 수 있습니다. 그 밖의 다른 머신 유형으로는 변경할 수 없습니다. 자세한 내용은 가속기 최적화 VM 수정을 참조하세요.
  • <codea2-megagpu-16g< code="" dir="ltr" translate="no"> A2 표준 머신 유형에서는 Windows 운영체제를 사용할 수 없습니다. Windows 운영체제를 사용하는 경우 다른 A2 표준 머신 유형을 선택합니다.</codea2-megagpu-16g<>
  • A2 표준 머신 유형을 사용하는 Windows VM에서는 연결된 로컬 SSD를 빠르게 포맷할 수 없습니다. 이러한 로컬 SSD를 포맷하려면 diskpart 유틸리티를 사용하고 format fs=ntfs label=tmpfs를 지정하여 전체 포맷을 수행해야 합니다.
  • A2 표준 머신 유형은 단독 테넌시를 지원하지 않습니다.

A2 울트라 VM

  • A2 울트라 머신 유형을 사용하는 VM에는 지속 사용 할인 및 가변형 약정 사용 할인이 적용되지 않습니다.
  • 특정 리전과 영역에서만 A2 울트라 머신 유형을 사용할 수 있습니다.
  • A2 울트라 머신 유형을 사용하는 VM에서는 리전 영구 디스크를 사용할 수 없습니다.
  • Cascade Lake 플랫폼에서만 A2 울트라 머신 유형을 사용할 수 있습니다.
  • VM에서 A2 울트라 머신 유형을 사용하는 경우에는 머신 유형을 변경할 수 없습니다. 다른 A2 울트라 머신 유형이나 그 밖의 다른 머신 유형을 사용해야 하는 경우에는 새 VM을 만들어야 합니다.
  • 다른 머신 유형을 A2 울트라 머신 유형으로 변경할 수 없습니다. A2 울트라 머신 유형을 사용하는 VM이 필요하면 새 VM을 만들어야 합니다.
  • A2 울트라 머신 유형을 사용하는 Windows VM에서는 연결된 로컬 SSD를 빠르게 포맷할 수 없습니다. 이러한 로컬 SSD를 포맷하려면 diskpart 유틸리티를 사용하고 format fs=ntfs label=tmpfs를 지정하여 전체 포맷을 수행해야 합니다.

G2 VM

  • G2 머신 유형을 사용하는 VM에는 지속 사용 할인 및 가변형 약정 사용 할인이 적용되지 않습니다.
  • 특정 리전과 영역에서만 G2 머신 유형을 사용할 수 있습니다.
  • G2 머신 유형을 사용하는 VM에서는 리전 영구 디스크를 사용할 수 없습니다.
  • Cascade Lake 플랫폼에서만 G2 머신 유형을 사용할 수 있습니다.
  • G2 표준 머신 유형을 사용하는 VM에서는 표준 영구 디스크(pd-standard)가 지원되지 않습니다. 지원되는 디스크 유형은 G2에 지원되는 디스크 유형을 참조하세요.
  • G2 머신 유형에서 멀티 인스턴스 GPU를 만들 수 없습니다.
  • G2 VM 머신 유형을 변경해야 하는 경우 가속기 최적화 VM 수정을 참조하세요.
  • Deep Learning VM Image를 G2 머신 유형을 사용하는 VM의 부팅 디스크로 사용할 수 없습니다.
  • 현재 Container-Optimized OS의 기본 드라이버는 G2 머신 유형에서 실행되는 L4 GPU를 지원하지 않습니다. Container-Optimized OS는 선택한 드라이버 세트만 지원합니다. G2 머신 유형에서 Container-Optimized OS를 사용하려면 다음 참고를 검토하세요.
    • 권장되는 최소 NVIDIA 드라이버 버전 525.60.13 이상을 지원하는 Container-Optimized OS 버전을 사용합니다. 자세한 내용은 Container-Optimized OS 출시 노트를 참조하세요.
    • 드라이버 설치 시 L4 GPU에서 작동하는 최신 버전을 지정합니다. 예를 들면 sudo cos-extensions install gpu -- -version=525.60.13입니다.
  • 다음 시나리오의 경우 G2 VM을 만들려면 Google Cloud CLI 또는 REST를 사용해야 합니다.
    • 커스텀 메모리 값을 지정하려고 하는 경우
    • 표시되는 CPU 코어 수를 맞춤설정하려고 합니다.

드라이버 설치

VM에 GPU를 사용하기 위해서는 VM에 GPU 드라이버를 설치해야 합니다.

이 예시에서 대부분의 VM은 Google Cloud CLI를 통해 생성됩니다. 하지만 Google Cloud 콘솔 또는 REST를 사용하여 이러한 VM을 만들 수도 있습니다.

다음 예시에서는 다음 이미지를 사용하여 VM을 만드는 방법을 보여줍니다.

COS (A3 Edge/High)

Container-Optimized (COS) 이미지를 사용하여 H100 GPU가 연결된 a3-edgegpu-8g 또는 a3-highgpu-8g VM을 만들 수 있습니다.

Container-Optimized OS를 사용하는 이러한 a3-edgegpu-8g 또는 a3-highgpu-8gVM을 만드는 방법에 관한 자세한 내용은 GPUDirect-TCPX가 사용 설정된 A3 VM 만들기를 참고하세요.

공개 OS 이미지(G2)

Compute Engine에서 제공되는 공개 이미지 또는 커스텀 이미지를 사용하는 GPU가 연결된 VM을 만들 수 있습니다.

g2-standard-8 머신 유형을 사용하고 NVIDIA RTX 가상 워크스테이션이 있는 Google Cloud 이미지 계열에 최적화된 Rocky Linux 8에서 지원 중단되지 않은 최신 이미지를 사용하여 VM을 만들려면 다음 단계를 완료합니다.

  1. VM을 만듭니다. 이 예시에서는 부팅 디스크 유형 및 크기와 같은 선택적 플래그도 지정됩니다.

    gcloud compute instances create VM_NAME \
        --project=PROJECT_ID \
        --zone=ZONE \
        --machine-type=g2-standard-8  \
        --maintenance-policy=TERMINATE --restart-on-failure \
        --network-interface=nic-type=GVNIC \
        --accelerator=type=nvidia-l4-vws,count=1 \
        --image-family=rocky-linux-8-optimized-gcp \
        --image-project=rocky-linux-cloud \
        --boot-disk-size=200GB \
        --boot-disk-type=pd-ssd
    

    다음을 바꿉니다.

    • VM_NAME: VM의 이름입니다.
    • PROJECT_ID: 프로젝트 ID입니다.
    • ZONE: VM의 영역입니다.
  2. NVIDIA 드라이버 및 CUDA를 설치합니다. NVIDIA L4 GPU에는 CUDA 버전 XX 이상이 필요합니다.

DLVM 이미지(A2)

NVIDIA 드라이버 및 CUDA 라이브러리가 사전 설치되어 있기 때문에 DLVM 이미지를 사용하는 것이 가장 쉬운 시작 방법입니다.

이러한 이미지는 성능 최적화도 제공합니다.

NVIDIA A100을 지원하는 DLVM 이미지는 다음과 같습니다.

  • common-cu110: NVIDIA 드라이버 및 CUDA 사전 설치
  • tf-ent-1-15-cu110: NVIDIA 드라이버, CUDA, TensorFlow Enterprise 1.15.3 사전 설치
  • tf2-ent-2-1-cu110: NVIDIA 드라이버, CUDA, TensorFlow Enterprise 2.1.1 사전 설치
  • tf2-ent-2-3-cu110: NVIDIA 드라이버, CUDA, TensorFlow Enterprise 2.3.1 사전 설치
  • pytorch-1-6-cu110: NVIDIA 드라이버, CUDA, Pytorch 1.6

사용 가능한 DLVM 이미지와 이미지에 설치되어 있는 패키지에 대한 자세한 내용은 Deep Learning VM 문서를 참조하세요.

  1. tf2-ent-2-3-cu110 이미지 및 a2-highgpu-1g 머신 유형을 사용하여 VM을 만듭니다. 이 예시에서는 부팅 디스크 크기 및 범위와 같은 선택적 플래그가 지정되었습니다.

    gcloud compute instances create VM_NAME \
       --project PROJECT_ID \
       --zone ZONE \
       --machine-type a2-highgpu-1g \
       --maintenance-policy TERMINATE \
       --image-family tf2-ent-2-3-cu110 \
       --image-project deeplearning-platform-release \
       --boot-disk-size 200GB \
       --metadata "install-nvidia-driver=True,proxy-mode=project_editors" \
       --scopes https://www.googleapis.com/auth/cloud-platform
    

    다음을 바꿉니다.

    • VM_NAME: VM의 이름입니다.
    • PROJECT_ID: 프로젝트 ID입니다.
    • ZONE: VM의 영역입니다.
  2. 앞의 예시 명령어는 VM용 Vertex AI Workbench 사용자 관리 노트북 인스턴스도 생성합니다. 노트북에 액세스하려면 Google Cloud 콘솔에서 Vertex AI Workbench > 사용자 관리 메모장 페이지로 이동합니다.

    사용자 관리 노트북 페이지로 이동

멀티 인스턴스 GPU(A3 및 A2 VM만 해당)

멀티 인스턴스 GPU는 동일한 VM 내의 단일 NVIDIA H100 또는 A100 GPU를 독립적인 GPU 인스턴스로 최대 7개까지 분할합니다. 이러한 인스턴스는 동시에 실행되며 각각 고유의 메모리, 캐시, 스트리밍 멀티 프로세서를 포함합니다. 이 설정을 사용하면 NVIDIA H100 또는 A100 GPU가 이전 GPU 모델과 비교해서 최대 7배 높은 사용률로 보장된 서비스 품질(QoS)을 제공할 수 있습니다.

멀티 인스턴스 GPU를 최대 7개까지 만들 수 있습니다. A100 40GB GPU의 경우 각 멀티 인스턴스 GPU에 5GB 메모리가 할당됩니다. A100 80GB 및 H100 80GB GPU의 경우 할당된 메모리가 각각 10GB로 두 배 증가합니다.

멀티 인스턴스 GPU 사용에 대한 자세한 내용은 NVIDIA 멀티 인스턴스 GPU 사용자 가이드를 참조하세요.

멀티 인스턴스 GPU를 만들려면 다음 단계를 완료합니다.

  1. A3 또는 A2 가속기 최적화 VM을 만듭니다.

  2. NVIDIA GPU 드라이버를 사용 설정합니다.

  3. 멀티 인스턴스 GPU를 사용 설정합니다.

    sudo nvidia-smi -mig 1
    
  4. 사용 가능한 멀티 인스턴스 GPU 형태를 검토합니다.

    sudo nvidia-smi mig --list-gpu-instance-profiles
    

    출력은 다음과 비슷합니다.

    +-----------------------------------------------------------------------------+
    | GPU instance profiles:                                                      |
    | GPU   Name             ID    Instances   Memory     P2P    SM    DEC   ENC  |
    |                              Free/Total   GiB              CE    JPEG  OFA  |
    |=============================================================================|
    |   0  MIG 1g.10gb       19     7/7        9.62       No     16     1     0   |
    |                                                             1     1     0   |
    +-----------------------------------------------------------------------------+
    |   0  MIG 1g.10gb+me    20     1/1        9.62       No     16     1     0   |
    |                                                             1     1     1   |
    +-----------------------------------------------------------------------------+
    |   0  MIG 1g.20gb       15     4/4        19.50      No     26     1     0   |
    |                                                             1     1     0   |
    +-----------------------------------------------------------------------------+
    |   0  MIG 2g.20gb       14     3/3        19.50      No     32     2     0   |
    |                                                             2     2     0   |
    +-----------------------------------------------------------------------------+
    |   0  MIG 3g.40gb        9     2/2        39.25      No     60     3     0   |
    |                                                             3     3     0   |
    +-----------------------------------------------------------------------------+
    .......
    
  5. 원하는 멀티 인스턴스 GPU(GI) 및 연결된 컴퓨팅 인스턴스(CI)를 만듭니다. 전체 프로필 이름 또는 축약된 프로필 이름, 프로필 ID 또는 둘의 조합을 지정하여 이러한 인스턴스를 만들 수 있습니다. 자세한 내용은 GPU 인스턴스 만들기를 참조하세요.

    다음 예시에서는 프로필 ID(9)를 사용해서 2개의 MIG 3g.20gb GPU 인스턴스를 만듭니다.

    -C 플래그도 지정되어 필수 프로필에 대해 연결된 컴퓨팅 인스턴스를 만듭니다.

    sudo nvidia-smi mig -cgi 9,9 -C
    
  6. 2개의 멀티 인스턴스 GPU가 만들어졌는지 확인합니다.

    sudo nvidia-smi mig -lgi
    
  7. GI와 해당 CI가 모두 생성되었는지 확인합니다.

    sudo nvidia-smi
    

    출력은 다음과 비슷합니다.

    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 525.125.06   Driver Version: 525.125.06   CUDA Version: 12.0     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  NVIDIA H100 80G...  Off  | 00000000:04:00.0 Off |                   On |
    | N/A   33C    P0    70W / 700W |     39MiB / 81559MiB |     N/A      Default |
    |                               |                      |              Enabled |
    +-------------------------------+----------------------+----------------------+
    |   1  NVIDIA H100 80G...  Off  | 00000000:05:00.0 Off |                   On |
    | N/A   32C    P0    69W / 700W |     39MiB / 81559MiB |     N/A      Default |
    |                               |                      |              Enabled |
    +-------------------------------+----------------------+----------------------+
    ......
    
    +-----------------------------------------------------------------------------+
    | MIG devices:                                                                |
    +------------------+----------------------+-----------+-----------------------+
    | GPU  GI  CI  MIG |         Memory-Usage |        Vol|         Shared        |
    |      ID  ID  Dev |           BAR1-Usage | SM     Unc| CE  ENC  DEC  OFA  JPG|
    |                  |                      |        ECC|                       |
    |==================+======================+===========+=======================|
    |  0    1   0   0  |     19MiB / 40192MiB | 60      0 |  3   0    3    0    3 |
    |                  |      0MiB / 65535MiB |           |                       |
    +------------------+----------------------+-----------+-----------------------+
    |  0    2   0   1  |     19MiB / 40192MiB | 60      0 |  3   0    3    0    3 |
    |                  |      0MiB / 65535MiB |           |                       |
    +------------------+----------------------+-----------+-----------------------+
    ......
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |  No running processes found                                                 |
    +-----------------------------------------------------------------------------+
    

다음 단계