1. GPU VM이란?
- Azure Stack Edge Pro GPU 디바이스의 GPU 가속 워크로드에는 GPU VM(가상 머신)이 필요합니다. Azure Stack Edge 디바이스에는 NVIDIA의 Tesla T4 또는 Tensor Core A2 GPU 1 또는 2가 장착될 수 있습니다. 이러한 디바이스에 GPU 가속 VM 워크로드를 배포하려면 GPU 최적화 VM 크기를 사용합니다. 선택한 GPU VM은 Azure Stack Edge 디바이스의 GPU 구성과 일치해야 합니다
2. GPU 공유
- Azure Stack Edge Pro 디바이스에서 VM 워크로드를 배포할 때 GPU를 공유할 수 없습니다. GPU는 하나의 VM에만 매핑될 수 있습니다. 즉, GPU가 한 개인 디바이스에는 GPU VM이 하나만 있고 GPU가 두 개인 디바이스에는 VM이 두 개만 있을 수 있습니다. 컨테이너화된 워크로드용으로 구성된 Kubernetes가 있는 디바이스에서 GPU VM을 사용할 때 고려해야 할 다른 요소도 있습니다.
- 1GPU + Kubernetes 구성
=> GPU VM을 만들고 디바이스에서 Kubernetes 구성: 이 시나리오에서는 GPU VM 만들기 및 Kubernetes 구성이 모두 성공합니다. 이 경우 Kubernetes는 GPU에 액세스할 수 없습니다.
=> 디바이스에서 Kubernetes를 구성한 다음 GPU VM을 만듭니다. 이 시나리오에서 Kubernetes는 디바이스에서 GPU를 주장하고 사용할 수 있는 GPU 리소스가 없으므로 VM 만들기가 실패합니다. - 2GPU + Kubernetes 구성
=> GPU VM을 만든 다음, 디바이스에서 Kubernetes 구성: 이 시나리오에서는 만든 GPU VM이 디바이스에서 하나의 GPU를 클레임하고 Kubernetes 구성도 성공하고 남은 하나의 GPU를 클레임합니다.
=> 디바이스에서 Kubernetes 구성 뒤에 두 개의 GPU VM을 만듭니다. 이 시나리오에서는 두 GPU VM이 디바이스에서 두 GPU를 클레임하고 Kubernetes는 GPU 없이 성공적으로 구성됩니다.
=> 디바이스에서 Kubernetes를 구성한 다음 GPU VM을 만듭니다. 이 시나리오에서 Kubernetes는 GPU 리소스를 사용할 수 없으므로 디바이스의 GPU와 VM 생성이 모두 실패할 것이라고 주장합니다. - 컨테이너화된 워크로드를 배포하는 경우 하드웨어 및 소프트웨어 계층에서 여러 가지 방법으로 GPU를 공유할 수 있습니다. Azure Stack Edge Pro 디바이스에서 Tesla T4 GPU를 사용하면 소프트웨어 공유로 제한되며, 디바이스에서 다음 두 가지 접근 방식을 사용하여 GPU의 소프트웨어를 공유할 수 있습니다.
- 컨테이너화된 워크로드를 배포하는 첫 번째 접근 방식은 환경 변수를 사용하여 시간을 공유할 수 있는 GPU 수를 지정하는 것입니다. 이 접근 방식을 사용할 때 다음 사항에 주의하세요.
=> 이 방법을 사용하여 GPU를 하나 또는 둘 다 지정할 수 있습니다. 소수 자릿수 사용은 지정할 수 없습니다.
=> 여러 모듈을 하나의 GPU에 매핑할 수 있지만 같은 모듈을 둘 이상의 GPU에 매핑할 수 없습니다.
=> NVIDIA SMI 출력을 사용하면 메모리 사용률을 포함한 전체 GPU 사용률을 확인할 수 있습니다. - 컨테이너화된 워크로드를 배포하는 두 번째 방법 NVIDIA GPU에서 다중 프로세스 서비스를 사용하도록 설정해야 합니다. MPS는 CUDA를 사용하는 여러 프로세스를 단일 공유 GPU에서 동시에 실행할 수 있는 런타임 서비스입니다. MPS는 최대 사용률을 얻기 위해 GPU의 여러 다른 프로세스에서 커널 및 메모리 작업을 겹칠 수 있습니다.이 접근 방식을 사용할 때 다음 사항에 주의해야 합니다.
=> MPS를 사용하면 GPU 배포에서 더 많은 플래그를 지정할 수 있습니다.
=> MPS를 통해 부분 사용량을 지정하여 디바이스에 배포된 각 애플리케이션의 사용량을 제한할 수 있습니다. 다음 매개 변수를 추가하여 deployment.yaml의 env 섹션에서 각 앱에 사용할 GPU 백분율을 지정할 수 있습니다.
yml 설정 예시// Example: application wants to limit gpu percentage to 20% env: - name: CUDA_MPS_ACTIVE_THREAD_PERCENTAGE value: "20" - GPU 사용량 확인 : 디바이스에 배포된 컨테이너화된 워크로드에서 GPU를 공유하는 경우 NVIDIA 시스템 관리 인터페이스(nvidia-smi)를 사용할 수 있습니다. Nvidia-smi는 NVIDIA GPU 디바이스를 관리하고 모니터링하는 데 도움이 되는 명령줄 유틸리티입니다. 해당 유틸리티를 통해 GPU 사용량을 볼 수 있는데, 먼저 디바이스의 PowerShell 인터페이스에 연결합니다. Get-HcsNvidiaSmi 명령을 실행하고 NVIDIA SMI 출력을 봅니다. MPS를 사용으로 설정한 다음 디바이스에 여러 워크로드를 배포하여 GPU 사용률이 변경되는 방식도 볼 수 있습니다.
3. 각 세대별 GPU 특징 및 마이그레이션 방법
- 대부분의 경우 GPU의 최신 세대에서 제공하는 성능의 급격한 증가는 GPU 시간당 비용이 다를 수 있더라도 버스트 가능한 작업의 경우 작업 기간을 줄이거나 컴퓨팅 리소스에 대한 고정 크기 수요를 충당하는 데 필요한 전체 GPU 지원 VM의 양을 줄임으로써 전체 TCO를 낮춥니다. 이러한 이점 외에도 고객은 고성능 VM을 통해 솔루션 시간을 개선하고 최신 소프트웨어, CUDA 런타임 및 드라이버 버전을 채택하여 솔루션의 상태 및 지원 가능성을 향상시킬 수 있습니다.
- NC(v1) 시리즈 VM은 Intel Xeon E5-2690 v3(Haswell) 프로세서와 쌍을 이루는 1~4개의 NVIDIA Tesla K80 데이터 센터 GPU 가속기를 지원하는 Azure에서 가장 오래된 GPU 가속 컴퓨팅 VM 유형입니다. 한때 까다로운 AI, ML 및 HPC 애플리케이션을 위한 주력 VM 유형이었던 이 VM은 제품 수명 주기의 후기 동안 여전히 인기 있는 선택이었습니다. 이는 특히 NC 시리즈의 프로모션 가격을 통해 GPU당 처리량보다 GPU 시간당 절대 비용이 매우 낮은 것을 중시하는 사용자들에게 선호되었습니다.일반적으로 NC-Series 고객은 NVIDIA Tesla T4 GPU 로 구동되는 가벼운 워크로드를 위한 Azure의 새로운 GPU 가속 플랫폼인 NC 크기에서 NC T4 v3 크기로 직접 이동하는 것을 고려해야 합니다. 현재 노후화된 NVIDIA K80 GPU 플랫폼의 컴퓨팅 성능이 비교적 낮기 때문에 최신 GPU가 포함된 VM 시리즈에 비해 NC 시리즈의 인기 있는 사용 사례는 실시간 유추 및 분석 워크로드이며, 가속화된 VM을 안정적인 상태로 사용하여 애플리케이션이 도착할 때 요청을 처리해야 합니다. 이러한 경우 요청의 볼륨 또는 일괄 처리 크기가 더 성능이 좋은 GPU를 활용하기에 충분하지 않을 수 있습니다. 또한 NC VM은 프로덕션 수준으로 수행할 필요가 없는 반복할 저렴한 클라우드 기반 CUDA 배포 대상이 필요한 GPU 가속에 대해 학습, 개발 또는 실험하는 개발자와 학생들에게도 인기가 있습니다.
- NC v2 시리즈 가상 머신은 원래 AI 및 딥 러닝 워크로드용으로 설계된 주력 플랫폼입니다. 딥 러닝 학습에 뛰어난 성능을 제공했으며, GPU당 성능은 원래 NC-Series 약 2배에 달하며 NVIDIA Tesla P100 GPU 및 Intel Xeon E5-2690 v4(Broadwell) CPU로 구동됩니다. NC 및 ND 시리즈와 마찬가지로 NC v2 시리즈는 RDMA를 통한 보조 대기 시간이 짧고 처리량이 높은 네트워크 및 InfiniBand 연결을 사용하여 구성을 제공하므로 많은 GPU에 걸친 대규모 학습 작업을 실행할 수 있습니다. 일반적으로 NCv2-Series 고객은 NVIDIA Ampere A100 PCIe GPU를 통해 구동되는 Azure의 새로운 GPU 가속 플랫폼인 NC A100 v4 크기로 직접 이동하는 것을 고려해야 합니다.
- ND 시리즈 가상 머신은 원래 AI 및 딥 러닝 워크로드용으로 설계된 미드레인지 플랫폼입니다. 이전 버전보다 향상된 단정밀도 부동 소수점 연산을 통해 일괄 처리 유추에 뛰어난 성능을 제공했으며 NVIDIA Tesla P40 GPU 및 Intel Xeon E5-2690 v4(Broadwell) CPU로 구동됩니다. NC 및 NC v2 시리즈와 마찬가지로 이 ND-Series RDMA를 통해 보조 대기 시간이 짧고 처리량이 높은 네트워크 및 InfiniBand 연결을 사용하여 구성을 제공하므로 많은 GPU에 걸친 대규모 학습 작업을 실행할 수 있습니다.
- 모든 레거시 NC, NC v2 및 ND-Series 크기는 단일 4-GPU VM 또는 단일 K80, P40 또는 P100 GPU가 각각 제공할 수 있는 단일 K80, P40 또는 P100 GPU보다 더 많은 컴퓨팅 능력을 요구하는 확장, 긴밀하게 결합된 워크로드를 위한 InfiniBand 상호 연결이 있거나 없는 4-GPU 크기를 포함하여 다중 GPU 크기에서 사용할 수 있습니다. 위의 권장 사항은 앞으로 간단한 경로를 제공하지만, 이러한 크기의 사용자는 NC v3 시리즈 및 ND v2 시리즈와 같은 보다 강력한 NVIDIA V100 GPU 기반 VM 시리즈로 성능 목표를 달성하는 것을 고려해야 합니다. 이는 일반적으로 다중 GPU 및 다중 노드 구성이 필요하기 전에 GPU 및 VM당 훨씬 더 큰 성능을 제공하여 더 낮은 비용으로 동일한 수준의 워크로드 성능을 가능하게 하고 관리 효율성이 향상됩니다.
4. 링크
- GPU VM이란? https://learn.microsoft.com/ko-kr/azure/databox-online/azure-stack-edge-gpu-overview-gpu-virtual-machines#gpu-vm-deployment
- GPU 공유 : https://learn.microsoft.com/ko-kr/azure/databox-online/azure-stack-edge-gpu-sharing
- GPU 마이그레이션 : https://learn.microsoft.com/ko-kr/azure/virtual-machines/migration/sizes/n-series-migration
'Azure 상식' 카테고리의 다른 글
| AKS Istio add-on 적용 시 유의 사항 (1) | 2025.08.18 |
|---|---|
| Express Route 개념 및 SKU Tier 특징 이해 (0) | 2025.08.18 |
| Flow Logs의 종류와 특징(Vnet Flow logs) (2) | 2025.08.12 |
| Azure 구독 및 관리 그룹에 대하여 (2) | 2025.08.11 |
| Azure Data Platform 이해 및 서비스 개요 (2) | 2025.08.11 |