Can an M4 16GB Mac run Gemma 2 2B?
M4 ยท 16 GB unified memory ยท 120 GB/s ยท MacBook Air 13" (M4), MacBook Air 15" (M4)
At Q4_K_M it needs about 3.0 GiB, leaving 10.0 GiB spare out of the ~13.0 GiB macOS will let you use. Expect roughly 60 tokens/sec โ faster than you can read.
Where the memory goes
Three things occupy memory when a model is loaded: the weights themselves, the KV cache that holds the conversation, and the runtime's own working buffers. Only the first is fixed โ the KV cache grows with every token in your context.
| Quantisation | Weights | Total | Tok/s | Fits? |
|---|---|---|---|---|
| FP16 | 4.9 GiB | 6.6 GiB | 18 | Yes, comfortably |
| Q8_0 | 2.6 GiB | 4.2 GiB | 35 | Yes, comfortably |
| Q6_K | 2.0 GiB | 3.6 GiB | 45 | Yes, comfortably |
| Q5_K_M | 1.7 GiB | 3.3 GiB | 52 | Yes, comfortably |
| Q4_K_M | 1.5 GiB | 3.0 GiB | 60 | Yes, comfortably |
| Q3_K_M | 1.2 GiB | 2.7 GiB | 75 | Yes, comfortably |
| Q2_K | 0.9 GiB | 2.4 GiB | 98 | Yes, comfortably |
The default. Best quality-per-gigabyte for most people.
How long a context fits
The KV cache is often what breaks a setup that looked fine at load time. Quantising it to 8-bit roughly halves its footprint with little measurable quality cost.
| Context | KV cache | Total | FP16 KV | Q8 KV |
|---|---|---|---|---|
| 2K | 0.2 GiB | 2.3 GiB | Yes, comfortably | Yes, comfortably |
| 4K | 0.3 GiB | 2.5 GiB | Yes, comfortably | Yes, comfortably |
| 8K | 0.7 GiB | 3.0 GiB | Yes, comfortably | Yes, comfortably |
How to run it
Ollama is the shortest path. It picks a quantisation automatically โ usually Q4_K_M, which is what the numbers above assume.
brew install ollama
ollama serve &
ollama run gemma2:2b
For MLX โ Apple's own array framework, typically a little faster than llama.cpp on Apple Silicon:
pip install mlx-lm
mlx_lm.generate --model mlx-community/Gemma-2-2B-4bit --prompt "Hello"
Macs that run Gemma 2 2B comfortably
The smallest configuration that handles it is the M1 8GB (MacBook Air (M1)).
| Mac | Memory | Bandwidth | Tok/s |
|---|---|---|---|
| M1 8GB | 8 GB | 68 GB/s | 34 |
| M1 16GB | 16 GB | 68 GB/s | 34 |
| M1 Pro 16GB | 16 GB | 200 GB/s | 100 |
| M2 16GB | 16 GB | 100 GB/s | 50 |
| M4 16GB | 16 GB | 120 GB/s | 60 |
| M3 Pro 18GB | 18 GB | 150 GB/s | 75 |
| M2 24GB | 24 GB | 100 GB/s | 50 |
| M4 24GB | 24 GB | 120 GB/s | 60 |
| M4 Pro 24GB | 24 GB | 273 GB/s | 137 |
| M1 Max 32GB | 32 GB | 400 GB/s | 200 |
| M2 Max 32GB | 32 GB | 400 GB/s | 200 |
| M4 32GB | 32 GB | 120 GB/s | 60 |
Common questions
- Can an M4 16GB Mac run Gemma 2 2B?
- Yes. At Q4_K_M it needs about 3.0 GiB of the roughly 13.0 GiB available, generating around 60 tokens per second.
- How fast is Gemma 2 2B on an Mac?
- Around 60 tokens per second. Token generation on Apple Silicon is limited by memory bandwidth, and this machine has 120 GB/s.
- How much memory does Gemma 2 2B need?
- 1.5 GiB for the weights at Q4_K_M, plus 0.7 GiB for an 8K-token KV cache and about 0.9 GiB of runtime overhead โ 3.0 GiB in total.