대규모 언어 모델은 토큰 하나를 서빙하기 전에 먼저 가속기 메모리 안에 들어가야 합니다. 모델이 GPU 한 장보다 클 때는 여러 장에 나누어 올리며, 가장 먼저 떠오르는 계획 단계의 질문은 단순히 장치가 몇 대 필요한가입니다. 이 계산기는 모델에 필요한 총 VRAM, GPU 한 장당 메모리, 그리고 실제 배포에서 그 메모리 중 실제로 사용할 수 있는 비율, 이 세 가지 수치로부터 답을 구합니다.
모델이 여러 GPU에 걸치는 이유
현대 가속기는 고정된 양의 고대역폭 메모리를 탑재합니다 — H100은 80 GB, H200은 141 GB입니다. 가중치와 런타임 버퍼가 이 수치를 초과하는 모델은 한 장치에 올릴 수 없으므로 분할됩니다. 텐서 병렬화가 일반적인 방법입니다. 각 레이어를 그룹에 걸쳐 나누고, 모든 GPU가 가중치의 일부를 보유하며, 부분 결과는 각 레이어마다 집합 통신 단계로 이어 붙입니다. 그러면 그룹 전체가 하나의 더 큰 장치처럼 동작합니다. 이 계산기가 산출하는 수는 독립적인 복제본 집합이 아니라 긴밀하게 결합된 단일 그룹을 의미합니다.
가용 메모리는 정격 수치보다 낮습니다
GPU는 광고된 메모리를 모델에 온전히 내주지 않습니다. CUDA 컨텍스트, 프레임워크의 캐싱 할당기, 활성값 텐서, 할당 간 단편화가 모두 일부를 차지하며, 서빙 중에는 키-값 캐시가 컨텍스트 길이와 배치 크기에 따라 늘어납니다. 정격의 대략 80~90 퍼센트를 가용으로 보면 현실적인 여유가 남습니다. 정격에 가깝게 밀어붙이면 부하 상황에서 메모리 부족으로 인한 실패를 부릅니다.
공식
모델 요구량을 기가바이트, GPU당 메모리를 기가바이트, 가용 비율을 라 하면 장치 수와 총 메모리는 다음과 같습니다.
nT=⌈g⋅fM⌉=n⋅g
여기서 은 GPU 수, 는 합산된 정격 메모리입니다. 모델은 가속기 일부분으로는 구동할 수 없으므로 올림 처리를 합니다.
계산 예시
GPU 한 장당 80 GB이고 메모리의 90 퍼센트가 가용일 때, 140 GB의 VRAM이 필요한 모델을 예로 들어 봅니다.
nT=⌈80×0.9140⌉=⌈72140⌉=⌈1.94⌉=2=2×80=160GB
GPU 두 장이면 충분하며, 140 GB 요구량에 대해 160 GB의 정격 메모리를 확보합니다 — 키-값 캐시를 위한 넉넉한 여유입니다. 동일한 하드웨어에서 350 GB 모델은 장의 GPU가 필요합니다.
최소치를 넘어서
여기서 산출된 수는 적합성 질문에만 답합니다. 그 지점을 넘어 가속기를 추가하면 메모리 여유 — 더 큰 키-값 캐시, 더 높은 배치 크기, 더 긴 컨텍스트를 위한 공간 — 가 생기며, 모델의 적합 여부를 바꾸기보다는 처리량을 높입니다. 한편 분할에 따른 통신 오버헤드는 GPU당 효율을 점차 떨어뜨립니다. 성능을 위한 규모 산정은 별개의 작업입니다. 입력에 들어가는 기저 메모리 요구량을 추정하려면 LLM 추론 VRAM 계산기를 참고하고, 장치 수를 구동 비용으로 환산하려면 GPU 클라우드 비용 계산기를 참고하시기 바랍니다.
자주 묻는 질문 (FAQ)
텐서 병렬화란 무엇인가요?
텐서 병렬화는 모델의 각 레이어를 여러 가속기에 분할하여, 모든 GPU가 가중치의 일부를 보유하고 모든 행렬 곱의 일부를 계산하도록 합니다. 부분 결과는 각 레이어마다 집합 통신 단계로 합쳐집니다. 이는 한 장치보다 큰 모델을 여러 장치에 걸쳐 올릴 수 있게 하는 기법이며, 이 계산기가 산출하는 수가 독립적인 복제본이 아니라 긴밀하게 결합된 하나의 그룹을 의미하는 이유이기도 합니다.
가용 메모리가 정격 수치보다 낮은 이유는 무엇인가요?
GPU는 광고된 메모리를 모델에 온전히 제공하지 않습니다. CUDA 컨텍스트, 프레임워크의 캐싱 할당기, 활성값 텐서, 할당 간 단편화가 모두 공간을 소모하며, 서빙 중에는 키-값 캐시가 컨텍스트 길이와 배치 크기에 따라 늘어납니다. 대략 80~90 퍼센트를 가용으로 보면 현실적인 여유가 확보되며, 정격에 가깝게 밀어붙이면 부하 상황에서 메모리 부족 오류가 발생할 위험이 있습니다.
모델에 필요한 것보다 GPU를 더 추가하면 어떻게 되나요?
추가 가속기는 더 큰 키-값 캐시를 담거나, 더 높은 배치 크기를 지원하거나, 더 긴 컨텍스트를 위한 공간을 남기는 메모리 여유를 더해 줍니다. 메모리가 더 이상 제약이 아닌 지점을 넘어서면 GPU 추가는 적합성보다는 주로 처리량을 높이며, 분할에 따른 통신 오버헤드가 GPU당 효율을 떨어뜨릴 수 있습니다. 여기서 산출되는 최소 수는 적합성 질문에만 답하며, 성능을 위한 규모 산정은 별개의 결정입니다.
면책조항
이 추정은 메모리 적합성만 다루며 가속기 단위로 올림합니다. 처리량, 지연 시간, 인터커넥트에 대한 규모를 산정하지 않으며, 가용 비율은 프레임워크, 컨텍스트 길이, 배치 크기에 따라 달라집니다. 프로비저닝 전에 실제 배포 환경에서 확인하시기 바랍니다.