Gemma 3 12B IT on L20 48GB (48GB) — VRAM, KV Cache & Throughput

Gemma 3 12B IT (12.19B total, 12.19B active, Dense GQA) uses 7.28 GiB of 4-bit weights (Q4_K_M), requiring 8.65 GiB total at 8K context and 10.15 GiB at 32K on L20 48GB (~67.7 tok/s decode).

Interactive Sizing Workbench

Full Compatibility Report →
48 GB · 864 GB/s
Fits with Safe Headroom
Config-derived formula HF config.json ↗
Memory Allocation Breakdown (GiB) 8.65 GiB (9.29 GB) / 48 GiB (18%)
Model Weights: 7.28 GiB KV Cache & State: 0.81 GiB Runtime & Activation Buffers: 0.56 GiB System RAM Offload: 0 GiB
Required GPU Memory
8.65 GiB
9.29 GB (decimal)
Usable Hardware Memory
45.6 GiB
48 GB (physical)
Safe Headroom
+36.95 GiB
18% utilization
Est. Decode Throughput
~67.7 tok/s
12.19B active params
Est. Prefill Throughput
~2559 tok/s
4K Prompt TTFT: ~1600 ms
Est. Cost / 1M Tokens
$0.25
Dense GQA · Gemma

Recommended Hardware for Current Configuration

Best Single GPU
RTX 4060 Ti 16GB (16GB)
~$430
Best Value / Used GPU
RTX 3060 12GB (12GB)
~$280
Apple Unified Memory
Ryzen AI Max+ 395 128GB
~$1,999
Cloud From
Vast.ai · $0.06 / hr
1x RTX 3060 12GB

Production Launch Commands

llama.cpp (GGUF)
llama-server -hf unsloth/gemma-3-12b-it-GGUF:Q4_K_M \
  --ctx-size 8192 -ngl 999 --flash-attn
vLLM
vllm serve google/gemma-3-12b-it \
  --max-model-len 8192 --gpu-memory-utilization 0.92
Live Token Speed Simulator (TTFT ~1600ms · ~67.7 tok/s)
[Gemma 3 12B IT · 8.65 GiB] allocated on target GPU. Prefill completed in TTFT window; streaming autoregressive tokens at memory-bandwidth-bound rate...

Cloud GPU Comparison & Rent-vs-Buy TCO

Verified public rates across RunPod, Vast.ai, Vultr, and DigitalOcean.

Verified: 2026-11-04
Purchase break-even
~18.5 months
Est. local power: $3.51 / mo
Provider Recommended Instance Total VRAM Hourly Rate Monthly at Selected Hours Billing Mode Deploy
RunPod 1x RTX 3090 (Community Cloud) 24 GB $0.22 / hr $26.75 / mo Per-second Deploy GPU ↗
Vast.ai 1x RTX 3060 12GB (Verified Host) 12 GB $0.06 / hr $7.42 / mo Spot / On-demand Deploy GPU ↗
Vultr ($300 Free Credit*) 1x L40S 48GB (Dedicated Instance · $300 Credit*) 48 GB $1.67 / hr $203.19 / mo Hourly Deploy GPU ↗
Vultr Cloud GPU 1x L40S 48GB (Dedicated Instance) 48 GB $1.67 / hr $203.19 / mo Hourly Deploy GPU ↗
DigitalOcean 1x RTX 6000 Ada (Dedicated Instance) 48 GB $1.57 / hr $190.91 / mo Per-second Deploy GPU ↗

Rates reflect public listings on the verification date and fluctuate with regional inventory.

Fine-Tuning VRAM Requirements (QLoRA / LoRA / Full) — Gemma 3 12B IT

QLoRA (4b) Fits with Safe Headroom
10.06 GiB
Model Weights: 7.28 GiB · Gradients + Optimizer: 1.71 GiB · Act: 1.07 GiB
Recommended GPU: RTX 4060 Ti 16GB (16GB)
LoRA (16b) Fits with Safe Headroom
26.81 GiB
Model Weights: 22.71 GiB · Gradients + Optimizer: 2.68 GiB · Act: 1.42 GiB
Recommended GPU: Radeon AI PRO R9700 32GB (32GB)
Full BF16 Exceeds Available GPU Memory
95.61 GiB
Model Weights: 22.71 GiB · Gradients + Optimizer: 70.4 GiB · Act: 2.5 GiB
Recommended GPU: Instinct MI300X 192GB (192GB)

Engineering Sizing Notes & Optimization Playbook

Quick Hardware Verdict

L20 48GB (48GB physical, 45.6 GiB usable) runs 4-bit (Q4_K_M) Gemma 3 12B IT at 8K context using 8.65 GiB with 36.95 GiB of safe headroom (~67.7 tok/s single-stream decode).

KV Cache & Runtime Tuning

Gemma 3 12B IT uses Dense GQA (12.19B total, 12.19B active per token). Moving from 8K to 32K context expands FP16 KV cache from 0.81 GiB to 2.31 GiB; enabling 8-bit KV cache (llama.cpp -ctk q8_0 -ctv q8_0 or vLLM --kv-cache-dtype fp8) saves 1.15 GiB at 32K (reducing total VRAM to 9 GiB).

VRAM Scaling Across Context Windows (4K to 128K, 4-bit Weights)

Gemma 3 12B IT VRAM scaling from 4K to 128K context (4K: 8.4 GiB, 8K: 8.65 GiB, 32K: 10.15 GiB, 128K: 16.15 GiB) 4K 8.4 GiB (KV 0.56 GiB) 8K 8.65 GiB (KV 0.81 GiB) 32K 10.15 GiB (KV 2.31 GiB) 128K 16.15 GiB (KV 8.31 GiB) L20 48GB (48GB)
Model weights remain constant while attention KV cache grows with context length and batch size.

Quantization Precision & Memory Matrix — Gemma 3 12B IT @ 8K

Quantization Format Weights (GiB) KV Cache Total VRAM (GiB) Decode Speed Compatibility (L20 48GB) Recommended GPU Data Source
Native Weights (BF16 / FP8 / MXFP4 — Lossless) (BF16) 22.71 GiB 0.81 GiB 24.08 GiB (25.86 GB) ~23 tok/s Fits with Safe Headroom Radeon AI PRO R9700 32GB (32GB) Official checkpoint size
FP8 / GGUF Q8_0 (8-bit — Near-Lossless) (Q8_0) 12.06 GiB 0.81 GiB 13.43 GiB (14.42 GB) ~42.2 tok/s Fits with Safe Headroom RTX 4060 Ti 16GB (16GB) Config-derived formula
GGUF Q6_K (6-bit — High Precision) (Q6_K) 9.31 GiB 0.81 GiB 10.68 GiB (11.47 GB) ~53.9 tok/s Fits with Safe Headroom RTX 4060 Ti 16GB (16GB) Config-derived formula
GGUF Q5_K_M (5-bit — Balanced) (Q5_K_M) 8.28 GiB 0.81 GiB 9.65 GiB (10.36 GB) ~60.1 tok/s Fits with Safe Headroom RTX 4060 Ti 16GB (16GB) Config-derived formula
Q4_K_M / UD-Q4_K_XL / AWQ (4-bit — Recommended) (Q4_K_M) 7.28 GiB 0.81 GiB 8.65 GiB (9.29 GB) ~67.7 tok/s Fits with Safe Headroom RTX 4060 Ti 16GB (16GB) Config-derived formula
GGUF IQ4_XS (4.25-bit — Compact) (IQ4_XS) 6.32 GiB 0.81 GiB 7.69 GiB (8.26 GB) ~77.1 tok/s Fits with Safe Headroom RTX 4060 Ti 16GB (16GB) Config-derived formula
GGUF Q3_K_M (3-bit — Low VRAM) (Q3_K_M) 5.8 GiB 0.81 GiB 7.17 GiB (7.7 GB) ~83.3 tok/s Fits with Safe Headroom RTX 4060 Ti 16GB (16GB) Config-derived formula
GGUF UD-Q2_K_XL (2-bit — Extreme MoE) (UD-Q2_K_XL) 4.31 GiB 0.81 GiB 5.68 GiB (6.1 GB) ~108.4 tok/s Fits with Safe Headroom RTX 4060 Ti 16GB (16GB) Config-derived formula

Technical Specifications & FAQ

Does Gemma 3 12B IT fit on L20 48GB (48GB)?

In 4-bit (Q4_K_M) at 8,192 context, Gemma 3 12B IT requires 8.65 GiB total GPU memory (7.28 GiB weights + 0.81 GiB KV cache + 0.56 GiB runtime buffers) against 45.6 GiB usable on L20 48GB, delivering ~67.7 tok/s decode.

How much VRAM does Gemma 3 12B IT need at 32K context?

At 32,768 context tokens, Gemma 3 12B IT (Dense GQA) allocates 2.31 GiB for KV cache and state, bringing total 4-bit VRAM to 10.15 GiB (10.9 GB decimal).

Evaluate This Model on Other GPUs

Evaluate Other Models on This Hardware