모델 하나가 GPU 전체를 필요로 하지 않는다면, 남은 자원에 다른 모델을 올릴 수 있을까. AWS가 11월 6일 SageMaker Inference의 GPU 분할 지원을 발표했다. NVIDIA의 MIG(Multi-Instance GPU)를 이용해 물리 GPU 하나를 여러 구획으로 나누고, 각 구획에 서로 다른 모델을 배치하는 기능이다.

달라지는 것은 한 GPU에 올리는 모델 수만이 아니다. 모델에 맞는 자원을 고를 때, 최신 GPU의 일부도 이전 세대 GPU 전체와 나란히 비교할 수 있게 된다. 다만 구획을 선택한다는 것이 구획만큼만 구매한다는 뜻은 아니다.

같은 GPU 안에서 자원을 따로 받는다

각 구획은 고정된 연산 자원과 전용 GPU 메모리를 받고, 하드웨어 수준에서 서로 격리된다. 여러 모델이 같은 GPU를 필요할 때마다 함께 쓰는 방식과 달리, 모델마다 자기 몫의 자원을 확보하는 구조다. AWS는 GPU 설정과 모델 배치, 확장을 SageMaker가 관리한다고 설명한다.

원문의 A100 분할 예시는 이 관계를 보여 준다. 아래에서 모델 A·B·C는 각 구획에 서로 다른 모델을 배치할 수 있음을 나타내는 설명용 이름이다.

A100 하나를 나눠 서로 다른 모델을 배치하는 예

AWS의 분할 구성 예시. 모델 이름은 설명용이며, 세 구획의 GPU 메모리 합계는 35GB다. 원문의 구성은 연산 자원 7개를 모두 사용한다.

  1. A100 GPU 하나연산 자원 7개와 GPU 메모리 40GB를 가진 물리 GPU

큰 구획

  1. 4g.20gb연산 자원 4개와 GPU 메모리 20GB를 배정받는다.
  2. 모델 A이 유형을 요청한 모델 사본 하나가 구획 하나를 차지한다.

중간 구획

  1. 2g.10gb연산 자원 2개와 GPU 메모리 10GB를 배정받는다.
  2. 모델 B다른 구획과 GPU 자원을 격리해 배치할 수 있다.

작은 구획

  1. 1g.5gb연산 자원 1개와 GPU 메모리 5GB를 배정받는다.
  2. 모델 C다른 구획과 GPU 자원을 격리해 배치할 수 있다.

이 구성을 GPU가 여덟 개인 P4d 인스턴스에 적용하면 유형별로 여덟 개씩, 총 24개 구획이 생긴다. 그 자리에 서로 다른 모델을 배치할 수도 있고, 같은 모델의 사본을 늘릴 수도 있다. 24개 구획이 곧 서로 다른 모델 24개나 처리 성능 24배를 뜻하는 것은 아니다.

격리의 범위도 GPU까지다. 같은 인스턴스의 모델들은 호스트 CPU와 시스템 메모리, 스토리지, 네트워크, 엔드포인트 라우팅을 계속 공유한다. 고객별 모델을 구획으로 나누더라도 서버 전체가 독립된 환경이 되는 것은 아니다.

최신 GPU의 일부는 언제 더 저렴할까

AWS는 H100의 mig-3g.40gb 구획 하나와 분할하지 않은 A100 40GB 하나를 비교했다. GPU 메모리 용량은 같지만, 한쪽은 최신 GPU의 일부이고 다른 쪽은 이전 세대 GPU 전체다.

양쪽 모두 SageMaker 실시간 엔드포인트에서 Llama-3.1-8B-Instruct 사본 하나를 실행했다. 같은 컨테이너 이미지와 토크나이저, 클라이언트 설정을 사용하고, 다섯 가지 입력·출력 길이 조합에서 동시 요청 수를 2~512로 바꾸며 측정했다.

AWS가 보고한 결과에서 비용 우위가 생기는 부하를 넘으면, H100 구획의 출력 100만 토큰당 비용이 A100 전체보다 18~34% 낮았다. 입력이 100토큰인 조건에서는 동시 요청 수 64, 8,000토큰인 조건에서는 4가 비용 우위가 바뀌는 지점이었다. 그보다 낮은 부하에서는 A100 전체가 더 저렴했다. 이 비교는 GPU를 나누면 언제나 비용이 줄어든다는 결과가 아니라, 입력 길이와 동시 요청 수에 따라 유리한 배치 단위가 달라진다는 사례다.

여기서 비용을 계산한 방식이 중요하다. AWS는 분석용 단가를 구하기 위해 오리건 리전의 온디맨드 인스턴스 가격을 P4d에서는 8로, P5에서는 16으로 나눴다. P4d는 A100 전체 여덟 개, P5는 비교에 쓴 H100 구획을 GPU당 두 개씩 배치하는 기준이다. 이렇게 환산한 단가를 처리량과 연결해 출력 토큰당 비용을 비교했다.

실제 청구는 전체 GPU 인스턴스 단위이며, 분할해도 인스턴스의 시간당 가격은 바뀌지 않는다. 따라서 이 수치를 구획 하나의 판매 가격으로 읽어서는 안 된다. 다른 구획에도 모델이나 사본을 배치해 확보한 인스턴스를 얼마나 활용하느냐가 실제 비용 판단에 함께 들어간다.

구획 구성은 엔드포인트를 만들 때 정한다. 실행 중인 GPU를 다시 나누려면 새 엔드포인트를 만들고 트래픽을 옮겨야 한다. 모델이 사용하는 구획 유형을 바꿀 때도 새 추론 컴포넌트가 필요하다.

지원 대상은 추론 컴포넌트를 사용하는 실시간 엔드포인트이며, 인스턴스 계열은 P4d·P5·G7·G7e다. 서버리스와 비동기 추론, 이기종 인스턴스 풀은 대상에서 빠진다. 발표에 명시된 지원 리전에는 서울이 포함되지 않았다.

이번 지원으로 GPU를 고르는 선택지는 더 세밀해졌다. AWS의 비교에서도 같은 모델에 유리한 자원은 부하에 따라 달랐다. 최신 GPU의 일부를 선택할 수 있다는 변화와, 그 선택이 실제 인스턴스 비용을 줄이는지는 함께 따져야 한다.