젬마 4(Gemma 4) 모델별 차이 — 12B·26B-A4B·31B 사양과 VRAM 비교
CanRun · 2026년 10월 21일 업데이트
젬마 4(Gemma 4) 12B는 Q4_K_M을 8k 컨텍스트로 띄우면 12GB 카드에 전부 올라갑니다. 26B-A4B와 31B를 GPU에 전부 올리려면 24GB가 필요합니다. RTX 5060 Ti 16GB에서 MoE 모델인 26B-A4B는 전문가 일부를 시스템 RAM에 둡니다. dense 모델인 31B는 일부가 RAM으로 넘어가 겨우 돌아갑니다. ollama run gemma4로 받는 작은 E4B는 8GB 카드에도 전부 올라갑니다.
세 모델은 무엇이 다른가
Gemma 4 12B와 31B는 dense 모델입니다. 토큰을 하나 만들 때마다 모든 가중치를 거칩니다. 26B-A4B는 MoE(전문가 혼합) 모델입니다. 모델 카드와 설정 파일을 보면 층마다 전문가가 128개 있습니다. 라우터가 토큰마다 그중 8개를 고르고, 공유 전문가 1개를 더해 계산합니다. 그래서 전체 파라미터는 약 26B이지만, 토큰마다 쓰는 파라미터는 약 4B입니다. 이름의 A4B는 활성(active) 파라미터가 4B라는 뜻입니다.
| 모델 | 파라미터 | 최대 컨텍스트 | 라이선스 | GGUF 출처 |
|---|---|---|---|---|
| Gemma 4 12B | 11.96B | 256k | 오픈 라이선스 · Apache-2.0 | 커뮤니티 GGUF · unsloth |
| Gemma 4 26B-A4B | 26.54B (활성 4B) | 256k | 오픈 라이선스 · Apache-2.0 | 커뮤니티 GGUF · unsloth |
| Gemma 4 31B | 31.27B | 256k | 오픈 라이선스 · Apache-2.0 | 커뮤니티 GGUF · unsloth |
구글은 2026년 4월 출시 글에서 26B-A4B와 31B를 공개했습니다. 작은 엣지용 모델인 E2B와 E4B도 이때 함께 나왔는데, 이 둘은 아래 Ollama 절에서 다룹니다. 12B는 두 달 뒤인 2026년 6월에 따로 나왔습니다. 모델 카드에는 ‘12B Unified’라는 이름으로 올라 있습니다. 별도의 인코더 없이 텍스트·이미지·오디오를 모델이 직접 받는다는 뜻입니다. 26B-A4B와 31B는 텍스트와 이미지를 입력으로 받습니다.
세 모델 모두 컨텍스트는 256k까지이고, 라이선스는 Apache 2.0입니다. 층 수는 설정 파일 기준으로 12B가 48개, 26B-A4B가 30개, 31B가 60개입니다. 구글 모델 카드는 26B-A4B가 4B 파라미터 모델에 가까운 속도로 돌아간다고 설명합니다. 12B 출시 글에는 VRAM이나 통합 메모리 16GB로 로컬에서 돌릴 수 있다고 적혀 있습니다. CanRun 계산으로는 12B Q4_K_M이 12GB 카드에도 전부 올라갑니다.
모델마다 필요한 메모리
아래 표는 Q4_K_M 파일을 8k 컨텍스트로 띄울 때 그래픽카드에 필요한 메모리입니다. 그래픽카드에 올리는 가중치에 f16 KV 캐시(컨텍스트를 담는 메모리)와 연산 버퍼를 더했습니다. 연산 버퍼는 런타임이 계산 중에 쓰는 메모리입니다. 8k에서는 세 모델 모두 KV 캐시가 작은데, 그 이유는 아래 긴 컨텍스트 절에서 설명합니다.
| 모델 | 파라미터 | 기본 양자화 · 그래픽카드에 올라가는 가중치 | 8k KV 캐시 | 8k 합계 |
|---|---|---|---|---|
| Gemma 4 12B | 11.96B | Q4_K_M · 7.1GB | 0.1GB | 7.8GB |
| Gemma 4 26B-A4B | 26.54B (활성 4B) | Q4_K_M · 16.9GB | 0.2GB | 17.7GB |
| Gemma 4 31B | 31.27B | Q4_K_M · 18.3GB | 0.7GB | 19.5GB |
그래픽카드에서는 OS가 VRAM 일부를 따로 씁니다(Windows에서 화면 출력을 맡은 GPU라면 약 0.6GB). llama.cpp는 입력 임베딩 표를 시스템 RAM에 두고 MTP 블록이 있어도 기본 설정에서는 불러오지 않아서, 표의 가중치는 파일보다 조금 작습니다. 맥은 파일 전체로 계산합니다.
8k에서 필요한 메모리는 12B가 7.8GB, 26B-A4B가 17.7GB, 31B가 19.5GB입니다. 카드가 쓸 수 있는 메모리는 8GB인 RTX 4060이 7.4GB, RTX 3060 12GB가 11.4GB입니다. RTX 5060 Ti 16GB는 15.4GB, 24GB인 RTX 3090은 23.4GB입니다. Windows가 화면 출력에 쓰는 몫을 뺀 값입니다.
MoE 모델이라고 메모리가 덜 들지는 않습니다. 라우터는 어떤 전문가든 고를 수 있어서, 전문가는 모두 메모리 어딘가에 있어야 합니다. MoE가 줄이는 것은 메모리가 아니라 토큰마다 읽는 양입니다. 그래서 26B-A4B에 드는 메모리도 31B와 큰 차이가 없습니다.
12B Q4_K_M은 8GB 카드에 다 들어가지 않습니다. 필요량이 RTX 4060의 사용 가능 메모리보다 많아서, 일부가 시스템 RAM으로 넘어갑니다. 26B-A4B와 31B는 24GB인 RTX 3090에 전부 올라갑니다.
8GB부터 32GB까지, 카드별로 돌아가는 크기
아래 표는 세 모델을 NVIDIA 카드 8종에서 판정한 결과입니다. 카드는 8GB·12GB·16GB·24GB·32GB를 고루 넣었습니다. 한국에서 많이 쓰는 RTX 4060과 RTX 5060 Ti 16GB도 들어 있습니다. 8k 컨텍스트, f16 KV 캐시, 시스템 RAM 32GB(DDR5-5600 듀얼 채널), Windows를 가정했습니다. 칸마다 예상 속도 범위와 신뢰 라벨이 붙어 있습니다. Gemma 4에는 생각 모드용으로 1.5배 엄격한 속도 기준을 적용했고, 그 이유는 아래 생각 모드 절에서 설명합니다.
| 하드웨어 | Gemma 4 12B | Gemma 4 26B-A4B | Gemma 4 31B |
|---|---|---|---|
| GeForce RTX 40608GB | 원활 추정 21.9 tok/s17.6–26.3보정된 추정 ±20% | 원활 추정 30.6 tok/s21.4–39.7이론 추정 ±30% | 겨우 가능 추정 3.2 tok/s2.5–3.8보정된 추정 ±20% |
| GeForce RTX 3060 12GB12GB | 쾌적 추정 34.7 tok/s30.6–38.9보정된 추정 ±12% | 원활 추정 40.7 tok/s28.5–53.0이론 추정 ±30% | 겨우 가능 추정 4.3 tok/s3.5–5.2보정된 추정 ±20% |
| GeForce RTX 407012GB | 쾌적 추정 48.6 tok/s42.8–54.5보정된 추정 ±12% | 원활 추정 47.8 tok/s33.5–62.1이론 추정 ±30% | 겨우 가능 추정 4.6 tok/s3.7–5.5보정된 추정 ±20% |
| GeForce RTX 507012GB | 쾌적 추정 64.8 tok/s57.1–72.6보정된 추정 ±12% | 원활 추정 53.6 tok/s37.5–69.7이론 추정 ±30% | 겨우 가능 추정 4.7 tok/s3.8–5.7보정된 추정 ±20% |
| GeForce RTX 5060 Ti 16GB16GB | 쾌적 추정 43.2 tok/s38.0–48.4보정된 추정 ±12% | 원활 추정 59.2 tok/s41.4–76.9이론 추정 ±30% | 겨우 가능 추정 7.0 tok/s5.6–8.4보정된 추정 ±20% |
| GeForce RTX 309024GB | 쾌적 추정 90.3 tok/s79.5–101.2보정된 추정 ±12% | 쾌적 108.0 tok/s8k 추정 134.9 tok/s (108.0–161.9, 보정된 추정 ±20%)실측 1건 (32k 컨텍스트) | 쾌적 추정 34.5 tok/s30.4–38.6보정된 추정 ±12% |
| GeForce RTX 409024GB | 쾌적 추정 97.3 tok/s85.6–108.9보정된 추정 ±12% | 쾌적 추정 142.6 tok/s114.1–171.1보정된 추정 ±20% | 쾌적 추정 37.2 tok/s32.7–41.6보정된 추정 ±12% |
| GeForce RTX 509032GB | 쾌적 추정 172.9 tok/s152.2–193.7보정된 추정 ±12% | 쾌적 216.1 tok/s8k 추정 210.4 tok/s (168.3–252.4, 보정된 추정 ±20%)실측 2건 (512/8k 컨텍스트) | 쾌적 추정 66.1 tok/s58.1–74.0보정된 추정 ±12% |
이론 추정(±30%)은 MoE 전문가를 시스템 RAM에 두는 경우처럼 실제 속도의 편차가 큰 구성에 붙습니다. 이때는 VRAM에 들어가는 만큼 전문가를 GPU에 두고 나머지만 RAM에 둔다고 보고 계산합니다.
8GB — RTX 4060
RTX 4060에서 12B Q4_K_M은 일부가 시스템 RAM으로 넘어갑니다. 그래도 90% 이상이 GPU에 남아 원활하게 돌아갑니다. IQ4_XS로 받으면 필요량이 7.1GB로 줄어, 아슬아슬하게 GPU에 전부 올라갑니다. 여유가 적으니 모델을 띄운 뒤 ollama ps로 확인하세요. 이 파일은 GPU에 전부 올라가도 원활하게 돌아가는 데 그칩니다. 추정 속도가 생각 모드용으로 엄격해진 쾌적 기준에 조금 못 미치기 때문입니다.
26B-A4B는 전문가 대부분을 시스템 RAM에 두고 원활하게 돌아갑니다. 이 속도는 이론 추정이고, 추정치가 원활 기준을 간신히 넘습니다. 그래서 실제 속도가 조금만 달라도 판정이 한 단계 갈릴 수 있습니다. 31B는 상당 부분이 시스템 RAM으로 넘어가 겨우 돌아갑니다.
12GB — RTX 3060 12GB·RTX 4070·RTX 5070
12B는 세 카드 모두에서 GPU에 전부 올라가 쾌적하게 돌아갑니다. 판정은 같아도, 메모리 대역폭이 높은 카드일수록 속도 범위가 높습니다. 12B를 Q8_0으로 받으면 세 카드 어디에도 다 들어가지 않아 겨우 돌아갑니다.
26B-A4B는 세 카드 모두에서 전문가 일부를 시스템 RAM에 두고 원활하게 돌아갑니다. 이 속도는 이론 추정입니다. 31B는 세 카드 모두에서 일부가 시스템 RAM으로 넘어가 겨우 돌아갑니다.
16GB — RTX 5060 Ti 16GB
RTX 5060 Ti 16GB에서 12B는 쾌적하게 돌아갑니다. Q8_0으로 받아도 GPU에 전부 올라가 원활하게 돌아갑니다. AMD의 RX 9060 XT 16GB에서도 12B Q4_K_M은 쾌적하게 돌아갑니다. 표에는 없는 카드지만, 이 조합에는 공개 벤치마크 결과가 있습니다. llama.cpp의 벤치마크 토론 글 두 곳에 Vulkan과 ROCm으로 잰 결과가 올라와 있습니다. CanRun이 직접 잰 값은 아닙니다.
26B-A4B는 Q4_K_M으로 17.7GB가 필요해, 사용 가능 메모리 15.4GB를 넘습니다. 그래서 전문가 일부를 시스템 RAM에 두고 원활하게 돌아갑니다. 이 속도는 이론 추정입니다.
IQ4_XS 파일은 Q4_K_M과 같은 ‘균형’ 등급입니다. 파일은 13.6GB이고, 8k에서 14.3GB가 필요합니다. 1GB쯤 여유를 남기고 GPU에 전부 올라가 쾌적하게 돌아갑니다. 이 속도는 보정된 추정입니다. 아래 표는 이 카드에서 26B-A4B를 양자화별로 판정한 결과입니다.
| 양자화 | 품질 등급 | 판정 | 속도 | 메모리 |
|---|---|---|---|---|
| Q8_0 | 준무손실 | 원활 | 추정 31.4 tok/s21.9–40.8이론 추정 ±30% | 14.4 / 16.0GB + RAM 13.8GB |
| Q4_K_M | 균형 | 원활 | 추정 59.2 tok/s41.4–76.9이론 추정 ±30% | 15.4 / 16.0GB + RAM 2.9GB |
| IQ4_XS | 균형 | 쾌적 | 추정 78.1 tok/s62.5–93.7보정된 추정 ±20% | 14.9 / 16.0GB |
| UD-Q2_K_XL | 손실 큼 | 쾌적 | 추정 101.4 tok/s81.1–121.7보정된 추정 ±20% | 11.9 / 16.0GB |
이론 추정(±30%)은 MoE 전문가를 시스템 RAM에 두는 경우처럼 실제 속도의 편차가 큰 구성에 붙습니다. 이때는 VRAM에 들어가는 만큼 전문가를 GPU에 두고 나머지만 RAM에 둔다고 보고 계산합니다.
31B는 이 카드에서 일부가 시스템 RAM으로 넘어가 겨우 돌아갑니다. IQ4_XS로 낮춰도 17.6GB가 필요해 다 들어가지 않습니다. 그래서 여전히 겨우 돌아갑니다. UD-Q2_K_XL은 GPU에 전부 올라가 원활하게 돌아갑니다. 다만 이 파일은 2비트 양자화라 ‘손실 큼’ 등급에 듭니다. 등급별 차이는 ‘GGUF 양자화 등급 정리 — Q4_K_M·IQ4_XS·Q8_0 무엇을 받을까’ 가이드에 정리했습니다.
이 카드에서 26B-A4B IQ4_XS를 바로 실행하는 명령은 아래와 같습니다. Windows용 llama.cpp 폴더에서 PowerShell을 열어 실행합니다. macOS·Linux에서는 .\llama-server.exe 대신 llama-server라고 씁니다.
.\llama-server.exe -hf unsloth/gemma-4-26B-A4B-it-GGUF:UD-IQ4_XS -c 8192 -ngl all -fa on
Ollama에서는 Hugging Face의 같은 파일을 바로 받아 실행할 수 있습니다.
ollama run hf.co/unsloth/gemma-4-26B-A4B-it-GGUF:UD-IQ4_XS
24GB·32GB — RTX 3090·RTX 4090·RTX 5090
RTX 3090·RTX 4090·RTX 5090에서는 세 모델 모두 GPU에 전부 올라가 쾌적하게 돌아갑니다. 26B-A4B는 RTX 3090과 RTX 5090에서 잰 공개 벤치마크 결과가 있습니다.
아래 RTX 3090 결과는 2026년 4월 한 사용자가 Ollama GitHub 이슈에 올린 것입니다. Windows 11과 Ollama 0.20.3에서 32k 컨텍스트로 돌렸고, ollama ps에는 100% GPU로 나왔습니다. 그 무렵 Ollama에서는 플래시 어텐션을 켜면 Gemma 4가 느려지는 문제가 있었습니다. 그래서 플래시 어텐션을 끄고 쟀습니다. 파일은 unsloth 파일이 아니라 Ollama가 직접 만든 Q4_K_M 빌드입니다.
Q8_0에서는 카드마다 결과가 갈립니다. RTX 3090에서 26B-A4B Q8_0은 다 들어가지 않아, 전문가 일부를 시스템 RAM에 두고 원활하게 돌아갑니다. 이 속도는 이론 추정입니다. RTX 5090에서는 GPU에 전부 올라가 쾌적하게 돌아갑니다. 31B Q8_0은 RTX 5090에도 다 들어가지 않습니다. 필요량 33.9GB가 사용 가능 메모리 31.4GB를 넘기 때문입니다. 그래도 원활하게 돌아갑니다. RTX 3090에서는 31B Q8_0이 겨우 돌아갑니다.
26B-A4B가 빠른 이유와 시스템 RAM을 쓰는 방식
생성 속도는 토큰마다 메모리에서 읽는 양을 따라갑니다. 26B-A4B는 토큰마다 약 4B 파라미터만 읽고, 31B는 모든 가중치를 읽습니다. 두 모델이 다 들어가는 RTX 3090에서는 둘 다 쾌적하게 돌아갑니다. 다만 위 표의 속도 범위를 보면 차이가 큽니다.
24GB보다 작은 카드에서는 이 차이가 판정으로 드러납니다. 26B-A4B는 31B와 메모리가 비슷하게 드는데도, 표의 8~16GB 카드에서 모두 원활하게 돌아갑니다. 이 판정은 모두 이론 추정입니다. 31B는 같은 카드에서 모두 겨우 돌아가고, 이쪽은 보정된 추정입니다.
CanRun 계산은 MoE 모델을 이렇게 나눠 올립니다. 먼저 전문가가 아닌 가중치와 KV 캐시, 연산 버퍼를 GPU에 둡니다. 남은 VRAM에는 전문가를 층 단위로 채우되, 한 층 분량은 여유로 비워 둡니다. 나머지 층의 전문가는 시스템 RAM에 두고, 토큰마다 라우터가 고른 전문가만 거기서 읽습니다. CanRun은 RAM 4GB를 Windows와 다른 프로그램 몫으로 빼 둡니다. 아래 막대는 RTX 4060에서 26B-A4B가 이렇게 나뉜 모습입니다.
메모리 사용 내역: GeForce RTX 4060에서 Gemma 4 26B-A4B (Q4_K_M)
- 가중치
- 5.9GB
- KV 캐시
- 0.2GB
- 연산 버퍼
- 0.6GB
- OS 예약
- 0.6GB
- 여유
- 0.7GB
- 시스템 RAM의 가중치
- 11.0GB
dense 모델은 사정이 다릅니다. 부분 오프로드에서는 RAM에 둔 층을 토큰마다 통째로 읽어야 합니다. 그래서 CanRun은 GPU에 올라간 비율이 90% 미만인 dense 모델을 ‘겨우 가능’보다 높게 판정하지 않습니다. 한편 전문가를 RAM에 둔 구성의 속도는 이론 추정(±30%)입니다. 운영체제와 백엔드, RAM 구성에 따라 실제 속도가 크게 달라질 수 있기 때문입니다.
시스템 RAM이 16GB여도 CanRun 계산으로는 26B-A4B가 RTX 4060에 들어갑니다. 이때도 원활하게 돌아가며, 이 속도도 이론 추정입니다. 31B는 RAM 16GB로는 이 카드에 들어가지 않습니다. 실제로 어떻게 나뉘었는지는 ollama ps로 확인하세요.
llama.cpp는 b7410(2025년 12월) 이후 빌드부터 이 배치를 스스로 만듭니다. 기본으로 켜진 --fit 옵션이 나눠 올리므로, 명령에는 컨텍스트만 주면 됩니다. macOS·Linux에서는 .\llama-server.exe 대신 llama-server라고 씁니다.
.\llama-server.exe -hf unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_M -c 8192
배치를 직접 정하려면 CanRun이 계산한 N을 --n-cpu-moe에 넣습니다. --n-cpu-moe N은 앞쪽 N개 층의 전문가 가중치를 RAM에 둡니다. 아래는 RTX 5060 Ti 16GB용 명령이고, RTX 4060이라면 --n-cpu-moe 23을 씁니다.
.\llama-server.exe -hf unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_M -c 8192 -ngl all --n-cpu-moe 6 -fa on
Ollama 0.30 이후 버전은 이 배치를 llama.cpp에 맡깁니다. 카드별로 필요한 RAM과 확인 방법은 ‘그래픽카드보다 큰 MoE 모델 돌리기 — gpt-oss-120b와 시스템 RAM’ 가이드에 정리했습니다.
긴 컨텍스트 — 26B-A4B와 31B
Gemma 4는 층 대부분에서 슬라이딩 윈도 어텐션을 씁니다. 이런 층은 최근 1024토큰만 보므로 컨텍스트가 길어져도 KV 캐시가 늘지 않습니다. 컨텍스트에 따라 계속 커지는 것은 전체 어텐션 층뿐인데, 설정 파일을 보면 이런 층은 일부입니다. 12B는 48층 중 8층, 26B-A4B는 30층 중 5층, 31B는 60층 중 10층이 전체 어텐션입니다. 31B는 26B-A4B보다 전체 어텐션 층이 두 배이고, 그 층의 KV 헤드도 두 배입니다. 그래서 토큰당 KV 캐시가 26B-A4B의 네 배가 됩니다.
| 모델 | 토큰당 KV | 32k | 128k | 256k |
|---|---|---|---|---|
| Gemma 4 31B | 80 KiB | 2.7GB | 10.7GB | 21.5GB |
| Gemma 4 26B-A4B | 20 KiB | 0.7GB | 2.7GB | 5.4GB |
| Gemma 4 12B | 16 KiB | 0.5GB | 2.1GB | 4.3GB |
표의 ‘—’는 모델이 지원하는 길이보다 긴 컨텍스트라는 뜻입니다. KV 캐시를 q8_0·q4_0으로 두면 f16의 약 54%·29% 크기가 됩니다.
128k에서 31B의 KV 캐시는 10.7GB, 26B-A4B는 2.7GB입니다. 이 차이는 같은 카드에서 쓸 수 있는 컨텍스트 길이를 가릅니다.
RTX 3090에서 31B Q4_K_M은 32k까지 GPU에 전부 올라가 쾌적하게 돌아갑니다. 32k에서 필요량은 21.8GB입니다. f16 캐시로 64k를 쓰면 24.8GB가 필요해 사용 가능 메모리 23.4GB를 넘습니다. 그래서 일부가 시스템 RAM으로 넘어가 원활하게 돌아갑니다. KV 캐시를 q8_0으로 바꾸면 64k도 다시 GPU에 전부 올라가 쾌적하게 돌아갑니다.
128k를 f16 캐시로 쓰면 겨우 돌아갑니다. q4_0 캐시로 바꾸면 아슬아슬하게 GPU에 들어가 쾌적하게 돌아갑니다. 여유가 적으니 ollama ps로 확인하세요. 256k는 f16 캐시로는 들어가지 않습니다. 아래 표는 RTX 3090에서 31B를 컨텍스트와 KV 캐시 종류별로 판정한 결과입니다.
| 컨텍스트 | KV f16 | KV q8_0 | KV q4_0 |
|---|---|---|---|
| 4k | 19.2GB쾌적 추정 35.1 tok/s30.9–39.3보정된 추정 ±12% | 19.0GB쾌적 추정 35.4 tok/s31.2–39.7보정된 추정 ±12% | 18.9GB쾌적 추정 35.6 tok/s31.3–39.8보정된 추정 ±12% |
| 8k | 19.5GB쾌적 추정 34.5 tok/s30.4–38.6보정된 추정 ±12% | 19.2GB쾌적 추정 35.1 tok/s30.9–39.3보정된 추정 ±12% | 19.1GB쾌적 추정 35.4 tok/s31.1–39.6보정된 추정 ±12% |
| 16k | 20.3GB쾌적 추정 33.3 tok/s29.3–37.3보정된 추정 ±12% | 19.7GB쾌적 추정 34.4 tok/s30.3–38.5보정된 추정 ±12% | 19.3GB쾌적 추정 35.0 tok/s30.8–39.2보정된 추정 ±12% |
| 32k | 21.8GB쾌적 추정 31.2 tok/s27.5–34.9보정된 추정 ±12% | 20.5GB쾌적 추정 33.2 tok/s29.2–37.1보정된 추정 ±12% | 19.9GB쾌적 추정 34.3 tok/s30.2–38.5보정된 추정 ±12% |
| 64k | 24.8GB원활 추정 13.6 tok/s10.9–16.3보정된 추정 ±20% | 22.3GB쾌적 추정 30.9 tok/s27.2–34.6보정된 추정 ±12% | 20.9GB쾌적 추정 33.0 tok/s29.0–37.0보정된 추정 ±12% |
| 128k | 30.7GB겨우 가능 추정 3.5 tok/s2.8–4.2보정된 추정 ±20% | 25.7GB겨우 가능 추정 9.9 tok/s7.9–11.8보정된 추정 ±20% | 23.1GB쾌적 추정 30.6 tok/s27.0–34.3보정된 추정 ±12% |
| 256k | 42.7GB미탑재 | 32.7GB불가 추정 2.8 tok/s2.2–3.3보정된 추정 ±20% | 27.3GB겨우 가능 추정 6.8 tok/s5.5–8.2보정된 추정 ±20% |
S = 쾌적 · A = 원활 · B = 겨우 가능 · F = 불가
같은 카드에서 26B-A4B는 f16 캐시로 128k까지 GPU에 전부 올라가 쾌적하게 돌아갑니다. 128k에서 필요량은 21.3GB입니다. f16 캐시로 256k를 쓰면 전문가 일부가 시스템 RAM으로 옮겨 가 원활하게 돌아갑니다. 이 속도는 이론 추정입니다. q8_0 캐시로 바꾸면 256k도 GPU에 전부 들어가 쾌적하게 돌아갑니다.
Ollama는 감지한 GPU 메모리가 24GiB 미만이면 4k, 24~48GiB면 32k, 48GiB 이상이면 256k 토큰을 기본 컨텍스트 길이로 씁니다 (Ollama 문서, 2026-09-29 확인). 그래서 24GB 카드에서는 Ollama가 32k로 시작합니다. 이 컨텍스트에서도 31B는 RTX 3090의 GPU에 전부 올라갑니다. 컨텍스트를 늘릴 때 메모리가 얼마나 더 드는지는 ‘KV 캐시와 컨텍스트 길이 — 컨텍스트를 늘리면 VRAM이 얼마나 더 필요할까’ 가이드에서 설명합니다.
Ollama gemma4 태그와 CanRun이 계산하는 파일
ollama run gemma4를 실행하면 gemma4:latest 태그를 받습니다. Ollama 라이브러리 페이지를 보면 이 태그는 gemma4:e4b와 같은 빌드입니다(2026년 10월 확인). 이 글의 세 모델이 아니라 엣지용 모델 E4B를 받는 셈입니다. 구글 모델 카드에 따르면 이름의 E는 실효(effective) 파라미터를 뜻합니다. E4B는 실효 파라미터가 4.5B이고 전체는 8B이며, E2B는 각각 2.3B와 5.1B입니다. 그 차이는 층별 임베딩(Per-Layer Embeddings) 표입니다. 토큰마다 층별로 작은 임베딩을 하나씩 담은 큰 표입니다. 모델 카드에 따르면 이 표는 값을 빠르게 찾아 읽는 데만 쓰입니다.
llama.cpp는 이 표를 입력층으로 분류하고, 입력층은 늘 CPU에 둡니다. 그래서 모든 층을 GPU에 올려도 이 표는 시스템 RAM에 남고, 토큰마다 그 토큰의 행만 읽습니다. 아래 막대는 RTX 4060에서 E4B가 이렇게 나뉜 모습입니다.
메모리 사용 내역: GeForce RTX 4060에서 Gemma 4 E4B (Q4_K_M)
- 가중치
- 3.0GB
- KV 캐시
- 0.1GB
- 연산 버퍼
- 0.6GB
- OS 예약
- 0.6GB
- 여유
- 3.7GB
- 시스템 RAM의 가중치
- 2.0GB
4.98GB 파일 가운데 1.95GB는 그래픽카드에 올라가지 않습니다. llama.cpp가 1.94GB 크기의 층별 임베딩 표(PLE)를 시스템 RAM에 두고, 토큰마다 그 표에서 한 줄만 읽기 때문입니다.
E4B Q4_K_M 파일은 5.0GB이고, 그중 그래픽카드에 올라가는 가중치는 3.0GB입니다. 나머지는 거의 다 층별 임베딩 표이고, CanRun 계산으로는 이만큼이 시스템 RAM에 들어가야 합니다. KV 캐시와 연산 버퍼까지 더하면 8k에서 E4B는 3.7GB, E2B는 2.1GB의 VRAM이 필요합니다. KV 캐시도 층 수에 비해 작습니다. 설정 파일을 보면 E4B는 42층 중 뒤쪽 18층, E2B는 35층 중 뒤쪽 20층이 앞쪽 층의 KV 캐시를 다시 씁니다.
RTX 4060에서는 12B가 다 들어가지 않지만, 두 엣지 모델은 GPU에 전부 올라가 쾌적하게 돌아갑니다. 이 속도는 이론 추정입니다. E4B는 f16 KV 캐시로 최대 컨텍스트인 128k를 써도 이 카드에 전부 들어갑니다. 다만 필요량이 6.9GB라 여유가 적으니 ollama ps로 확인하세요. 8k라면 Q8_0 파일도 전부 들어갑니다. 시스템 RAM이 16GB여도 표가 들어갈 자리는 남습니다. 8GB 노트북 GPU인 RTX 4060 Laptop과 RTX 4070 Laptop에서도 두 모델 모두 쾌적하게 돌아갑니다. 이 판정도 이론 추정입니다.
맥은 GPU와 CPU가 메모리 하나를 같이 쓰므로, CanRun은 표까지 포함한 파일 전체로 계산합니다. 그래서 맥에서 E4B에 필요한 메모리는 5.7GB입니다. 메모리 16GB인 M4 맥에는 전부 들어가고 원활하게 돌아갑니다. 이 속도는 이론 추정이고, 아래 생각 모드 절에서 설명하는 엄격한 쾌적 기준에 조금 못 미칩니다. 같은 맥에서 E2B는 쾌적하게 돌아가며, 이것도 이론 추정입니다.
RTX 5090에서는 두 모델 모두 llama.cpp를 Vulkan으로 돌린 공개 벤치마크 결과가 있습니다. 이런 결과는 메모리 대역폭만으로 계산한 속도보다 토큰마다 일정한 시간만큼 느립니다. 그래서 CanRun은 E2B·E4B 속도를 추정할 때 이 지연을 더합니다. 공개 벤치마크가 있는 카드가 아직 몇 장뿐이라, 나머지 E2B·E4B 속도는 이론 추정(±30%)으로 둡니다. Ollama의 gemma4:e4b·gemma4:e2b는 Ollama가 직접 만든 빌드입니다. 받는 크기도 CanRun이 계산하는 unsloth 파일보다 큽니다. 모델을 띄운 뒤 ollama ps로 확인하세요.
이 글의 세 모델은 gemma4:12b·gemma4:26b·gemma4:31b처럼 태그에 크기를 붙여 받습니다. 예를 들어 26B-A4B는 ollama run gemma4:26b로 실행합니다. Ollama 페이지는 26B를 활성 파라미터가 4B인 MoE 모델로, 31B를 dense 모델로 소개합니다. 다만 이 태그들은 Ollama가 직접 만든 빌드라서, CanRun이 계산하는 unsloth GGUF 파일과 다릅니다. 크기도 Ollama 페이지에 따로 나와 있습니다.
태그가 가리키는 빌드는 나중에 바뀌기도 합니다. 앞에 나온 2026년 4월 RTX 3090 결과는 빌드 ID 5571076f3d70으로 돌린 것입니다. 지금 Ollama에서 이 빌드는 gemma4:26b-a4b-it-q4_K_M 태그에 있습니다. gemma4:26b는 지금 다른 빌드를 가리킵니다.
CanRun이 계산한 파일을 그대로 쓰려면 Hugging Face에서 받습니다. 모델에 맞는 줄 하나를 실행하세요.
ollama run hf.co/unsloth/gemma-4-E2B-it-GGUF:Q4_K_M
ollama run hf.co/unsloth/gemma-4-E4B-it-GGUF:Q4_K_M
ollama run hf.co/unsloth/gemma-4-12b-it-GGUF:Q4_K_M
ollama run hf.co/unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_M
ollama run hf.co/unsloth/gemma-4-31B-it-GGUF:Q4_K_M
이 글처럼 8k로 맞추려면 작업 표시줄에서 Ollama 앱을 먼저 종료합니다. 그다음 PowerShell에서 서버를 띄웁니다.
$env:OLLAMA_CONTEXT_LENGTH="8192"; ollama serve
macOS·Linux에서는 OLLAMA_CONTEXT_LENGTH=8192 ollama serve로 씁니다. 서버를 띄운 뒤 창을 하나 더 열어 위의 ollama run 명령을 실행합니다. 모델이 뜨면 ollama ps의 PROCESSOR 열에서 GPU와 CPU에 나뉜 비율을 확인하세요. 컨텍스트를 계속 같은 값으로 쓰는 설정은 ‘올라마(Ollama)가 느리거나 앞 내용을 잊을 때 — 컨텍스트 기본값’ 가이드에 있습니다.
생각 모드 — 모델은 꺼 두고, Ollama는 켠다
세 모델 모두 생각 모드가 있고, E2B·E4B도 마찬가지입니다. 모델 카드에 따르면 시스템 프롬프트가 <|think|> 토큰으로 시작할 때만 생각 모드가 켜집니다. 채팅 템플릿도 enable_thinking의 기본값을 false로 둡니다. 그래서 CanRun은 Gemma 4를 ‘생각 모드 기본 꺼짐’으로 기록합니다.
그런데도 CanRun은 Gemma 4에 1.5배 엄격한 생각 모드 기준을 적용합니다. 판정 기준표에는 이 내용이 나오지 않습니다. 이유는 런타임의 기본값에 있습니다. Ollama는 로컬에서 생각 모드를 켜고 끌 수 있는 모델이면 기본으로 켜 둡니다. Ollama 소스의 테스트에도 로컬 Gemma 모델의 생각 모드가 기본으로 켜지는지 확인하는 항목이 있습니다. llama-server의 --reasoning 옵션은 기본값이 auto라서, 템플릿이 지원하면 생각 모드를 켭니다.
생각 모드를 끄고 쓰면 표보다 한 단계 좋은 판정이 나오는 Gemma 4 조합이 있을 수 있습니다. 예를 들어 RTX 4060에서 12B IQ4_XS는 GPU에 전부 올라가는데도 원활하게 돌아가는 데 그칩니다. 추정 속도가 엄격해진 쾌적 기준에 조금 못 미치기 때문입니다.
끄는 방법은 런타임마다 다릅니다. Ollama에서는 ollama run gemma4:26b --think=false처럼 실행합니다. llama-server에서는 --reasoning off를 붙입니다. 모델 카드에 따르면 12B·26B-A4B·31B는 생각 모드를 꺼도 빈 생각 블록을 출력합니다. E2B·E4B는 출력하지 않습니다. 자세한 내용은 ‘생각 모드(리즈닝) 모델의 속도 비용 — 켜고 끄는 법’ 가이드에 있습니다.
이 숫자는 얼마나 확실한가
메모리 수치는 실제 GGUF 파일 크기와 각 모델의 설정 파일로 계산합니다. MoE 모델은 GGUF 헤더에서 전문가와 공유 가중치의 크기를 따로 읽습니다. E2B·E4B는 층별 임베딩 표의 크기도 헤더에서 읽습니다. 그래서 모델이 들어가는지는 추정이 아니라 공식으로 계산한 결과입니다.
속도에는 신뢰 라벨이 붙습니다. ‘실측’은 그 카드·모델·양자화 조합의 공개 벤치마크 결과입니다. 이 글에서는 RTX 3090·RTX 5090의 26B-A4B와 RX 9060 XT 16GB의 12B가 여기에 해당합니다. RTX 5090의 E2B·E4B도 마찬가지입니다. RTX 3090 결과는 Ollama가 직접 만든 Q4_K_M 빌드로 잰 것입니다.
‘보정된 추정’은 12B·31B처럼 dense 모델을 NVIDIA·AMD 카드에 전부 올릴 때 ±12%입니다. MoE 모델을 GPU에 전부 올리거나 부분 오프로드로 돌릴 때는 ±20%입니다. ‘이론 추정’은 ±30%로, 전문가를 시스템 RAM에 두는 구성과 공개 벤치마크가 없는 E2B·E4B 조합에 붙입니다.
모든 판정은 다음 조건을 가정합니다. Windows에서 그 카드가 화면 출력도 맡고, 시스템 RAM은 32GB(DDR5-5600 듀얼 채널)입니다. 8k 컨텍스트와 f16 KV 캐시로 모델 하나를 띄워, 요청을 하나씩 처리합니다. Ollama와 llama.cpp는 메모리를 저마다의 방식으로 추정합니다. 그래서 아슬아슬하게 들어가는 조합은 ollama ps로 실제 배치를 확인하세요. 생각 모드가 있는 모델에는 속도 기준을 1.5배 엄격하게 적용하며, 아래 기준표에는 이 내용이 빠져 있습니다.
판정 읽는 법
- 쾌적
- GPU에 전부 올라가고 20 tok/s 이상
- 원활
- GPU에 전부 올라가고 8~20 tok/s, MoE 전문가를 시스템 RAM에 두고 20 tok/s 이상, 또는 GPU에 90% 이상 올라가고 8 tok/s 이상
- 겨우 가능
- 2~8 tok/s, CPU 전용, GPU에 90% 미만, 또는 MoE 전문가를 RAM에 두고 20 tok/s 미만
- 불가
- 메모리에 안 들어가거나 2 tok/s 미만
다음 단계
- ‘그래픽카드보다 큰 MoE 모델 돌리기 — gpt-oss-120b와 시스템 RAM’ 가이드에서 전문가를 시스템 RAM에 두는 배치를 더 자세히 다룹니다.
- ‘KV 캐시와 컨텍스트 길이 — 컨텍스트를 늘리면 VRAM이 얼마나 더 필요할까’ 가이드는 모델마다 KV 캐시가 커지는 속도가 다른 이유를 설명합니다.
- ‘생각 모드(리즈닝) 모델의 속도 비용 — 켜고 끄는 법’ 가이드에서 생각 모드의 속도 비용과 끄는 방법을 볼 수 있습니다.
- ‘GGUF 양자화 등급 정리 — Q4_K_M·IQ4_XS·Q8_0 무엇을 받을까’ 가이드는 IQ4_XS·Q8_0 같은 양자화 등급을 비교합니다.
- ‘로컬 LLM 사양 — VRAM 8~32GB로 돌릴 수 있는 모델 (2026)’ 가이드에 VRAM 구간별로 들어가는 모델을 정리했습니다.
- 모델 페이지 Gemma 4 E2B, Gemma 4 E4B, Gemma 4 12B, Gemma 4 26B-A4B, Gemma 4 31B에서 카드별 판정을 볼 수 있습니다.
- 카드 페이지 GeForce RTX 5060 Ti 16GB, GeForce RTX 3090에는 그 카드에서 돌아가는 모델이 모여 있습니다.
자주 묻는 질문
젬마 4 26B-A4B와 31B는 무엇이 다른가요?
26B-A4B는 토큰마다 약 4B 파라미터만 쓰는 MoE 모델이고, 31B는 모든 가중치를 쓰는 dense 모델입니다. 메모리는 둘 다 많이 듭니다. Q4_K_M을 GPU에 전부 올리려면 두 모델 모두 24GB가 필요합니다. RTX 5060 Ti 16GB에서 31B는 일부가 시스템 RAM으로 넘어가 겨우 돌아갑니다. 같은 카드에서 26B-A4B는 IQ4_XS 파일이면 GPU에 전부 올라가 쾌적하게 돌아갑니다. RTX 3090에서는 둘 다 쾌적하게 돌아가고, 26B-A4B 쪽은 공개 벤치마크 결과도 있습니다.
Gemma 4에는 VRAM이 얼마나 필요한가요?
Q4_K_M을 8k 컨텍스트로 GPU에 전부 올리려면 12B는 12GB, 26B-A4B와 31B는 24GB를 목표로 잡으세요. 엣지 모델 E2B·E4B는 8GB 카드에도 전부 올라갑니다. 필요량은 12B가 7.8GB, 26B-A4B가 17.7GB, 31B가 19.5GB입니다. 12B는 RTX 3060 12GB에서 쾌적하게 돌아갑니다. 26B-A4B와 31B는 RTX 3090에 전부 올라갑니다. 8GB인 RTX 4060에서도 12B는 90% 이상이 GPU에 남아 원활하게 돌아갑니다. 16GB 카드라면 26B-A4B를 IQ4_XS로 받아 GPU에 전부 올릴 수 있습니다.
시스템 RAM이 16GB여도 Gemma 4 26B-A4B를 돌릴 수 있나요?
CanRun 계산으로는 돌릴 수 있습니다. 8GB인 RTX 4060에서도 전문가 대부분을 시스템 RAM에 두면 들어갑니다. dense 모델인 31B는 같은 카드와 RAM 16GB로는 들어가지 않습니다. 이 구성의 속도는 이론 추정입니다. 카드별 결과는 계산기의 ‘시스템 RAM’을 16GB로 바꿔 확인하세요. 실제로 어떻게 나뉘었는지는 ollama ps에서 볼 수 있습니다.
ollama run gemma4는 어떤 모델을 받나요?
엣지용 모델 E4B를 받습니다. 기본 태그 gemma4:latest가 gemma4:e4b와 같은 빌드이기 때문입니다(2026년 10월 확인). CanRun 계산으로는 E4B Q4_K_M이 RTX 4060 같은 8GB 카드에도 전부 올라갑니다. 층별 임베딩 표는 시스템 RAM에 따로 두기 때문입니다. Ollama 빌드는 Ollama가 따로 만든 더 큰 파일이니, 모델을 띄운 뒤 ollama ps로 확인하세요. 이 글의 세 모델을 쓰려면 gemma4:12b·gemma4:26b·gemma4:31b 태그를 쓰세요. CanRun이 계산한 파일을 그대로 쓰려면 위 Ollama 절의 hf.co 명령으로 받으면 됩니다.
Gemma 4도 생각 모드가 있나요?
있습니다. 다만 시스템 프롬프트가 <|think|>로 시작할 때만 켜집니다. 그런데 Ollama와 llama-server는 기본으로 생각 모드를 켭니다. 그래서 CanRun은 Gemma 4에 엄격한 속도 기준을 적용합니다. 끄려면 Ollama에서는 --think=false를 붙이세요. llama-server라면 --reasoning off를 붙입니다.
출처
- Gemma 4 12B 모델 카드: ‘12B Unified’ dense 모델, 인코더 없이 받는 텍스트·이미지·오디오 입력, 256K 컨텍스트, Apache 2.0,
<|think|>로 켜는 생각 모드와 꺼도 출력되는 빈 생각 블록 - Gemma 4 26B-A4B 모델 카드: 전체·활성 파라미터 수, 전문가 128개 중 8개와 공유 전문가 1개, 30층, 4B 모델에 가까운 속도라는 설명
- Gemma 4 31B 모델 카드: dense 모델, 60층, 텍스트·이미지 입력, 256K 컨텍스트
- Gemma 4 E4B 모델 카드: 이름의 E가 실효(effective) 파라미터를 뜻한다는 설명, E2B·E4B의 실효·전체 파라미터 수, 값을 찾아 읽는 데만 쓰는 층별 임베딩(Per-Layer Embeddings) 표, 생각 모드를 끄면 E2B·E4B는 빈 생각 블록을 출력하지 않는다는 점
- Gemma 4 E2B 모델 카드: 더 작은 엣지용 모델, 텍스트·이미지·오디오 입력, 128K 컨텍스트
- 설정 파일 12B·26B-A4B·31B: 층 수, 전체 어텐션 층 수와 KV 헤드 수, 1024토큰 슬라이딩 윈도, 26B-A4B의 전문가 수와 토큰마다 고르는 전문가 수
- 설정 파일 E4B·E2B: 층별 임베딩(
hidden_size_per_layer_input), 앞 층의 KV 캐시를 다시 쓰는 층(num_kv_shared_layers— E4B 42층 중 18층, E2B 35층 중 20층) - llama.cpp 소스 llama-arch.cpp 1031번 줄과 llama-model.cpp 1684~1686번 줄: 층별 임베딩 표를 행 단위로 찾아 읽는 입력층 텐서로 분류하는 줄, 입력층을 늘 CPU에 둔다는 줄
- Gemma 4 26B-A4B 채팅 템플릿:
enable_thinking의 기본값 false - 구글의 Gemma 4 출시 글: 2026년 4월 공개, Apache 2.0, 양자화 버전을 소비자용 GPU에서 돌릴 수 있다는 설명
- 구글의 Gemma 4 12B 출시 글: 2026년 6월 공개, 멀티모달 인코더가 없는 구조, VRAM이나 통합 메모리 16GB로 로컬에서 돌릴 수 있다는 설명
- Ollama gemma4 라이브러리 페이지와 태그 목록:
latest와e4b가 같은 빌드라는 점,e2b·e4b·12b·26b·31b태그와 소개 문구·받는 크기, 빌드 ID(2026년 10월 확인) - Hugging Face의 Ollama 사용 안내:
ollama run hf.co/사용자/저장소:양자화형식 - unsloth GGUF 저장소 E2B·E4B·12B·26B-A4B·31B: CanRun이 계산하는 파일
- llama.cpp 서버 README:
--cpu-moe,--n-cpu-moe N(앞쪽 N개 층의 MoE 가중치를 CPU에 둠), 기본으로 켜진--fit, 기본값이auto인--reasoning - llama.cpp b7410 릴리스:
--fit이 들어간 2025년 12월 빌드 - Ollama v0.30.0 릴리스 노트: llama.cpp로 모델을 돌린다는 설명
- Ollama 소스 model_thinking.go와 model_thinking_test.go: 로컬 실행에서 생각 모드를 기본으로 켜는 동작과 Gemma 테스트 사례
- Ollama 컨텍스트 길이 문서: GPU 메모리에 따른 기본 컨텍스트
- Ollama FAQ:
ollama ps의 PROCESSOR 열 - Ollama 이슈 #15237의 댓글: 본문의 RTX 3090 공개 벤치마크 결과
- Ollama 이슈 #15353의 댓글과 llama.cpp PR #23615: 본문의 RTX 5090 공개 벤치마크 결과(Ollama에서 플래시 어텐션을 끄고 잰 결과와 llama-bench 결과)
- llama.cpp 토론 Vulkan 성능·ROCm 성능의 댓글: 본문의 RX 9060 XT 16GB 공개 벤치마크 결과
- llama.cpp PR #28618: 본문의 RTX 5090 E2B·E4B 공개 벤치마크 결과(Vulkan, unsloth Q4_K_M 파일)
이 페이지의 속도는 오차 범위와 신뢰 라벨을 붙인 추정치이거나, 출처를 밝힌 공개 벤치마크 결과입니다. 판정은 표마다 적어 둔 구성을 기준으로 합니다.