모델의 크기 추정
LLM 모델이 VRAM을 차지하는 크기는 모델의 매개변수(Parameter) 개수와 양자화(Quantization) 비트 수를 알면 곱셈 한 번으로 매우 정확하게 계산할 수 있습니다.
Gemma 4 4.6B (Q5_K_M) 모델이 약 3.5GB를 차지하게 되는 수학적 원리와 계산 과정을 쉽게 풀어드릴게요.
1. 핵심 공식
$$\text{모델의 VRAM 크기 (GB)} \approx \frac{\text{매개변수 수 (Billion)} \times \text{양자화 비트 수 (Bit)}}{8} \times 1.15$$
8로 나누는 이유: $1,\text{Byte} = 8,\text{bit}$ 이기 때문에, 비트(bit) 단위를 바이트(Byte) 단위로 변환하기 위함입니다.1.15를 곱하는 이유 (오버헤드): 모델의 가중치(Weights) 외에도 토큰 임베딩 레이어, CUDA 컨텍스트 초기화 공간, 신경망 구조 정의 데이터 등이 약 $10% \sim 15%$의 추가 메모리(Overhead)를 사용하기 때문입니다.
2. Gemma 4 4.6B (Q5_K_M) 실제 계산 과정
이 모델의 스펙을 공식에 대입해 보겠습니다.
- 매개변수 수: $4.6,\text{B}$ (46억 개)
- 양자화(Q5_K_M): 이름의
Q5에서 알 수 있듯이, 가중치 하나당 평균 $5,\text{bit}$로 압축했다는 뜻입니다. (원래 압축 안 한 모델은 $16,\text{bit}$ 페어 구조인 $2,\text{Byte}$를 씁니다.)
[1단계] 순수 가중치 크기 계산
$$4.6,\text{B (매개변수)} \times 5,\text{bit} = 23,\text{Gbit}$$
$$23,\text{Gbit} \div 8 = 2.875,\text{GB}$$
[2단계] 시스템 오버헤드($15%$) 반영
$$2.875,\text{GB} \times 1.15 \approx 3.306,\text{GB}$$
여기에 Ollama 엔진 자체의 기본 구동 메모리와 임베딩 레이어(embedding length 1536) 연산 공간이 더해지면서 실제 약 3.4GB ~ 3.5GB 내외의 VRAM을 최종 점유하게 됩니다.
💡 응용: 압축 방식에 따른 VRAM 변화 공식
동일한 Gemma 4 4.6B 모델이라도 어떤 압축(Quantization) 방식을 선택하느냐에 따라 용량이 완전히 달라집니다.
| 양자화 버전 | 비트 수 ($1$개당) | VRAM 계산 식 (오버헤드 포함) | 실제 점유 예측 |
|---|---|---|---|
| Q4_K_M (4비트) | 약 $4.5,\text{bit}$ | $(4.6 \times 4.5 \div 8) \times 1.15$ | 약 3.0 GB |
| Q5_K_M (5비트) | 약 $5.5,\text{bit}$ | $(4.6 \times 5.5 \div 8) \times 1.15$ | 약 3.5 GB (현재 모델) |
| Q8_0 (8비트) | 약 $8.5,\text{bit}$ | $(4.6 \times 8.5 \div 8) \times 1.15$ | 약 5.6 GB |
| Unquantized ($16$비트) | $16.0,\text{bit}$ | $(4.6 \times 16.0 \div 8) \times 1.15$ | 약 10.5 GB (4060에서 구동 불가) |
요약
앞으로 허깅페이스나 Ollama에서 모델을 고르실 때는 [매개변수 크기(B)] * [Q비트수] / 8을 하신 뒤, 안전하게 $1.2$ 정도를 곱해 보세요. 그 결과값이 내 RTX 4060 VRAM(8GB)보다 여유 있게 작아야만 쾌적한 런타임 추론이 가능해집니다!