HPC & GPU Engineering/Platform Essentials

📘 고성능 AI 컴퓨팅 인프라 용어 사전 (5) – MIG (Multi-Instance GPU)

ygtoken 2025. 8. 3. 15:34
728x90

 

앞선 글에서 다룬 분산 학습은 GPU 여러 개를 잘 조합하는 기술이었다면,

이번에는 하나의 GPU를 여러 개처럼 나누어 쓰는 기술, 바로 **MIG(Multi-Instance GPU)**에 대해 다룹니다.

 

고가의 GPU를 좀 더 효율적이고 안정적으로 활용하기 위한 대표적인 하드웨어 가상화 기능입니다.

 


MIG란 무엇인가?

 

MIG는 NVIDIA A100/H100 GPU에 적용된 하드웨어 기반 가상화 기술로,

하나의 GPU를 논리적으로 최대 7개의 인스턴스로 분할하여 서로 독립적으로 사용할 수 있게 해줍니다.

 

  • 각 인스턴스는 고유한 **GPU 메모리, 캐시, 컴퓨팅 자원(SM 등)**을 가짐
  • 분리된 MIG 인스턴스는 서로 간섭 없이 독립적으로 동작
  • 쿠버네티스 등 클라우드 환경에서 멀티 테넌시 지원에 매우 유리

 


왜 필요한가?

 

고성능 GPU(A100, H100 등)는 단일 작업에는 너무 과할 수 있습니다.

하지만 여러 사용자가 동시에 쓸 경우, 메모리 충돌이나 자원 간섭이 발생하기 쉽습니다.

 

MIG는 다음과 같은 이유로 실무에서 중요합니다:

 

  • 리소스 낭비 방지: GPU 전체가 필요하지 않은 워크로드도 분할된 일부만 사용 가능
  • 보안과 격리: 서로 다른 팀/사용자의 작업이 메모리/코어 레벨에서 격리됨
  • 스케줄링 최적화: Kubernetes에서 GPU 리소스를 작은 단위로 할당 가능
  • 비용 절감: GPU 1대를 다수의 논리 GPU로 쪼개어 효율 사용

 


동작 방식 요약

항목 설명
지원 모델 NVIDIA A100, H100 시리즈 이상
최대 인스턴스 수 A100: 최대 7개, H100: 더 유연한 구성 가능
자원 분할 단위 SM(Core), L2 캐시, DRAM, 엔진 단위로 정밀 분할
논리 인식 방식 각 MIG 인스턴스는 GPU처럼 독립적으로 리눅스에 /dev/nvidiaX로 인식됨
K8s에서의 사용 nvidia.com/mig-1g.5gb 등과 같이 리소스 요청 가능
호환 도구 nvidia-smi, DCGM, GPU Operator 등에서 MIG 상태 확인 및 제어 가능

 


실무 활용 사례

 

  • 멀티 테넌트 AI 플랫폼
  • → 하나의 GPU를 여러 사용자에게 안정적으로 할당
  • Inference 서비스 환경
  • → 실시간 추론처럼 GPU 일부만 필요한 서비스에 적합
  • Kubernetes 기반 MLOps 환경
  • MIG-aware scheduler를 통해 GPU 자원을 논리적으로 배치
  • A/B 테스트 또는 경량 모델 다중 실험 환경
  • → 여러 개의 작은 실험을 병렬로 빠르게 수행 가능

 


MIG 구성 예시

구성 방식 MIG 인스턴스 수 사용 예
1g.5gb x 7 7개 추론 API, 경량 테스트 다수 실행
3g.20gb x 2 + 1g.5gb x 1 3개 중간급 학습 + 작은 서비스 혼합
7g.40gb x 1 1개 전체 GPU를 하나의 대형 학습 작업에 할당 (MIG 미사용 상태와 동일)

 


주의할 점

  • MIG는 같은 GPU 내에서만 독립적입니다. GPU 간 분산 학습 시에는 AllReduce 기반 분산 전략을 병행해야 함
  • MIG 인스턴스는 정적으로 설정되며, 변경 시 GPU 초기화가 필요함
  • 일부 AI 프레임워크에서 MIG 인식이 제한적일 수 있으므로 NVIDIA 컨테이너 런타임, 드라이버 호환성 확인 필요

 


마무리

 

MIG는 고가의 GPU 자원을 더 잘게 쪼개어 여러 작업을 동시에 실행할 수 있는,

하드웨어 차원의 “가상화 + 격리” 솔루션입니다.

 

단일 GPU의 시대가 지나고, GPU를 잘게 나누거나, 여러 GPU를 잘 엮는 능력이 점점 더 중요해지는 지금,

MIG는 AI 인프라 최적화의 실전 무기가 됩니다.

 

 

728x90