CanRun

Can I run Llama 3.3 70B on the Apple M4?

Won't runQ4_K_M needs 45.8 GB, 23.4 GB more than the 22.4 GB of usable memory. IQ2_M (heavy quality loss) works instead: Runs slowly, est. 2.2 tok/s (1.6–2.9, theoretical estimate ±30%).

32 GB unified memory · 120.0 GB/s · FP16 3.8 TFLOPS. Assumes 8k context and an f16 KV cache. Verdicts are shown for each memory size.

Verdict by memory size

The page uses the 32 GB configuration; here is every size.

  • 16 GBWon't runQ4_K_M doesn't fit
  • 24 GBWon't runQ4_K_M doesn't fit
  • 32 GBWon't runTry IQ2_M (heavy quality loss): Runs slowlyest. 2.2 tok/s (1.6–2.9, theoretical estimate ±30%)(used on this page)

Every quant of Llama 3.3 70B on the Apple M4

5 tracked GGUF files, smallest first, at 8k context
QuantFile sizeVerdictSpeedMemoryRuns asNotes
IQ2_M24.12 GBRuns slowly
est. 2.2 tok/s1.6–2.9theoretical estimate ±30%
26.8 GB RAMCPU only—
Q2_K26.38 GBWon't run—Needs about 29.6 GB; 28.0 GB of memory is free (22.4 GB usable by the GPU)——
IQ4_XS37.90 GBWon't run—Needs about 41.2 GB; 28.0 GB of memory is free (22.4 GB usable by the GPU)——
Q4_K_Mbaseline42.52 GBWon't run—Needs about 45.8 GB; 28.0 GB of memory is free (22.4 GB usable by the GPU)——
Q8_074.98 GBWon't run—Needs about 78.2 GB; 28.0 GB of memory is free (22.4 GB usable by the GPU)——

Where the memory goes at IQ2_M

Weights and KV cache in system RAM; 4 GB of RAM is kept for the OS and not counted as usable.
System RAM
Weights in system RAM
26.8 GB

Context length vs. KV cache

KV cache

Memory needed and verdict at IQ2_M for each context length and KV cache type, with estimated tokens per second.
ContextKV f16KV q8_0KV q4_0
4k
25.5 GBRuns slowly
est. 2.4 tok/s1.6–3.1theoretical estimate ±30%
24.8 GBRuns slowly
est. 2.4 tok/s1.7–3.1theoretical estimate ±30%
24.5 GBRuns slowly
est. 2.4 tok/s1.7–3.2theoretical estimate ±30%
8k
26.8 GBRuns slowly
est. 2.2 tok/s1.6–2.9theoretical estimate ±30%
25.6 GBRuns slowly
est. 2.3 tok/s1.6–3.1theoretical estimate ±30%
24.9 GBRuns slowly
est. 2.4 tok/s1.7–3.1theoretical estimate ±30%
16k
30.1 GBdoes not fit
27.0 GBRuns slowly
est. 2.2 tok/s1.6–2.9theoretical estimate ±30%
25.7 GBRuns slowly
est. 2.3 tok/s1.6–3.0theoretical estimate ±30%
32k
35.7 GBdoes not fit
30.7 GBdoes not fit
27.2 GBRuns slowly
est. 2.2 tok/s1.5–2.9theoretical estimate ±30%
64k
46.7 GBdoes not fit
36.7 GBdoes not fit
31.3 GBdoes not fit
128k
68.8 GBdoes not fit
48.8 GBdoes not fit
38.1 GBdoes not fit

S = Runs great · A = Runs well · B = Runs slowly · F = Won't run

At IQ2_M the verdict stays Runs slowly up to 8k context with an f16 KV cache, and up to 16k with q8_0.

Estimated speed

Generation
est. 2.2 tok/s (1.6–2.9, theoretical estimate ±30%)
Prompt processing
Prompt-processing estimates only apply when the whole model runs on the GPU.

Measured on this exact combination

No public measurement for this exact combination yet; the numbers above are estimates.

If this is not enough

How to run it

Commands for the IQ2_M file. Both tools download from Hugging Face on first run.

File: Llama-3.3-70B-Instruct-IQ2_M.gguf (24.12 GB) from bartowski/Llama-3.3-70B-Instruct-GGUF.

llama.cpp
llama-server -hf bartowski/Llama-3.3-70B-Instruct-GGUF:IQ2_M -c 8192 -ngl 0 -fa on
  • -ngl 0 keeps everything on the CPU.
  • -fa on enables flash attention (needed for KV cache quantization).
  • --cache-type-k q8_0 --cache-type-v q8_0 shrinks the KV cache to 1.44 GB at 8k context.
Ollama

Terminal:

OLLAMA_CONTEXT_LENGTH=8192 ollama serve
ollama run hf.co/bartowski/Llama-3.3-70B-Instruct-GGUF:IQ2_M
  • Ollama defaults to 4k context on GPUs under 24 GB. Set OLLAMA_CONTEXT_LENGTH when starting the server, or /set parameter num_ctx inside the chat.
  • /set parameter num_ctx 8192

Related pages

Frequently asked questions

Can I run Llama 3.3 70B on the Apple M4?

Q4_K_M needs 45.8 GB, 23.4 GB more than the 22.4 GB of usable memory. IQ2_M (heavy quality loss) works instead: Runs slowly, est. 2.2 tok/s (1.6–2.9, theoretical estimate ±30%). IQ2_M needs 26.8 GB at 8k context; the GPU can use 22.4 GB of the unified memory.

How much context can Llama 3.3 70B use on the Apple M4?

At IQ2_M the verdict stays Runs slowly up to 8k context with an f16 KV cache (2.7 GB of KV) and up to 16k with a q8_0 KV cache (2.9 GB). The model supports up to 128k.

Which quant should I use, and how fast is it?

IQ2_M (heavy quality loss) (24.12 GB) is the recommended balance: Runs slowly, est. 2.2 tok/s (1.6–2.9, theoretical estimate ±30%). It is also the largest tracked file that gets this verdict.

Speeds are estimates from memory bandwidth, calibrated against public benchmarks, and each one comes with an error band and a confidence label. Real results vary with drivers, backend, context length and thermals.