Overview
How much RAM for a 70B model on a Mac: about 39 to 46 GB of unified memory for a 4-bit build at a 4096-token context, so a 48 GB Mac is the lowest configuration that clears it and 64 GB leaves room for a longer context. This is arithmetic from the formulas on methodology, not a measurement. The share of unified memory macOS keeps for itself is unknown, so a total close to the installed figure can still fail to load. All sources were read on 2026-10-13.
How much RAM does a 70B model need?
The memory for a model is total_GB = weights_GB + kv_GB + overhead_GB, with weights_GB = params × bits / 8 / 1e9 (decimal GB) and an assumed 2 GB overhead, as defined on methodology.
Inputs for the worked example:
- Parameters: the Llama 3.3 70B Instruct card calls it 70B, and its tensor metadata shows 71B params. This page uses 71B because that is what has to load.
- Layers and KV heads: the Llama 3.3
config.jsonreturns HTTP 401 (gated), so those values are unknown from that file. The DeepSeek-R1-Distill-Llama-70B card, which is not gated, says the model “is derived from Llama3.3-70B-Instruct”. Its config.json has 80 layers, 8 KV heads andhead_dim128. Those values are used as the 70B-class shape. They are not read from the Llama 3.3 file. - Q4_K_M file size: the llama.cpp quantize README lists Llama 3.1 70B at 280.9 GB original and 43.1 GB Q4_K_M. That is the Llama 3.1 file, not a Llama 3.3 file. The Llama 3.3 Q4_K_M size is unknown.
KV cache: kv_GB = 2 × 80 × 8 × 128 × context × 2 / 1e9, with the assumed 2 bytes per value. That is 1.342 GB at context 4096, 10.737 GB at 32768, and 42.950 GB at 131072 (the config’s max_position_embeddings).
| Build | Weights | Total at 4096 | Total at 32768 | Total at 131072 |
|---|---|---|---|---|
| 4.0 bits (71B × 4 / 8) | 35.5 GB | 38.842 GB | 48.237 GB | 80.45 GB |
| Q4_K_M file (Llama 3.1 figure) | 43.1 GB | 46.442 GB | 55.837 GB | 88.050 GB |
| 8.0 bits (71B × 8 / 8) | 71 GB | 74.342 GB | 83.737 GB | 115.95 GB |
| 16 bits (71B × 16 / 8) | 142 GB | 145.342 GB | 154.737 GB | 186.95 GB |
Each total is weights + KV + 2. The 4.0-bit row is exact 4.0 bits, not a measured GGUF bits-per-weight, so it understates a real k-quant file. For the 43.1 GB file the implied rate is 43.1 × 8 / 71 = 4.86 bits per weight.
Can a Mac run a 70B model?
Yes, if the installed unified memory is above the total in the table, before the unknown macOS reserve. The configurations below are from Apple’s spec pages (Mac mini, MacBook Pro, Mac Studio).
| Installed memory | Where Apple lists it | Q4_K_M total at 4096 (46.442 GB) | Q4_K_M at 32768 (55.837 GB) | 8-bit at 4096 (74.342 GB) |
|---|---|---|---|---|
| 32 or 36 GB | Mac mini M6 (32), MacBook Pro M5 (32), MacBook Pro M5 Max (36), Mac Studio M5 Max (36) | Below total | Below total | Below total |
| 48 GB | Mac mini M5 Pro, MacBook Pro M5 Pro and M5 Max, Mac Studio M5 Max | Above by 1.558 GB | Below total | Below total |
| 64 GB | same models as 48 GB | Above | Above | Below total |
| 96 GB | Mac Studio M5 Ultra (base memory; 256 GB and 512 GB are the options) | Above | Above | Above |
| 128 GB | MacBook Pro M5 Max, Mac Studio M5 Max (40-core GPU) | Above | Above | Above |
A 48 GB Mac clears the short-context Q4_K_M total by 1.558 GB, which the unknown reserve could eat. 64 GB is the first listed size with real headroom. For a 70B model the Mac mini page lists 64 GB at most, on M5 Pro; the M6 rows top out at 32 GB, so “Llama 3.3 70B on a Mac mini” means an M5 Pro configuration at 48 or 64 GB. Mac mini M4 is not on the current spec page; Apple Support’s Mac mini (2024) page lists the M4 Pro at 24 GB, configurable to 48 or 64 GB.
Speed is unknown. Apple lists memory bandwidth per chip, but this site does not turn it into a speed. Measure it yourself with measure-tokens-per-second-mac. A picker for other models is what-fits-my-ram.
How much RAM for Llama 3.3 70B, and for DeepSeek R1 70B?
Llama 3.3 70B uses the table above: 46.442 GB for a Q4_K_M-size file at context 4096, with the Llama 3.3 file size itself unknown. The DeepSeek-R1-Distill-Llama-70B card lists 71B params too, and its config has the same shape used above, so the same arithmetic applies. A published file size for that distill was not read, so a quant total for it is unknown. More on that family is planned at deepseek-on-mac.
How much RAM for a 32B model?
At 4-bit, a 32B model needs about 19 GB at context 4096 and about 27 GB at 32768, so 24 GB covers the short context and 32 GB covers both. The example is Qwen2.5-32B-Instruct: the card says 32.5B parameters, 64 layers, 8 KV heads, and Apache-2.0. The config.json has hidden_size 5120 and 40 attention heads, so head_dim is 5120 / 40 = 128, and max_position_embeddings is 32768.
| Build | Weights | Total at 4096 | Total at 32768 |
|---|---|---|---|
| 4.0 bits | 16.25 GB | 19.324 GB | 26.840 GB |
| 8.0 bits | 32.5 GB | 35.574 GB | 43.090 GB |
KV is 1.074 GB at 4096 and 8.590 GB at 32768 (2 × 64 × 8 × 128 × context × 2 / 1e9). A 16 GB Mac is below the 4-bit total. 24 GB is above it at 4096 and below it at 32768. 32 GB is above both 4-bit totals and below the 8-bit total at 4096; 48 GB clears all four. See best-llm-for-32gb-mac. No 27B card was read for this page, so a 27B total is unknown; for a nominal 27B parameter count, 4-bit weights alone are 27 × 4 / 8 = 13.5 GB.
Why do RAM calculators disagree on a 70B model?
They mix different bits per weight and different overheads. Three rules of thumb that people use are params ÷ 2, params × 0.6 and 1.2 GB per billion. This page cites no calculator and no source for these rules, so the table shows only the arithmetic each implies for a nominal 70B (GB per billion × 70):
| Rule | Result for 70B | Implied bits per weight (GB per billion × 8) |
|---|---|---|
| 0.5 GB per billion | 35 GB | 4.0 |
| 0.6 GB per billion | 42 GB | 4.8 |
| 1.2 GB per billion | 84 GB | 9.6 |
The first is weights only at exactly 4 bits. The second is close to the 43.1 GB Q4_K_M file. The third is above 8 bits, so it presumably carries cache and overhead. None of the three is a KV cache calculation, which is why the context row in the table above matters. For the quantization background see llm quantization explained.
Questions
How much RAM for a 70B model on a Mac?
About 39 to 46 GB for a 4-bit build at context 4096, from weights + KV + 2 GB overhead, so a 48 GB Mac is the floor and 64 GB leaves headroom for a 32768 context (55.837 GB for the Q4_K_M-size file). The macOS reserve is unknown.
How much RAM for Llama 3.3 70B?
The card lists 70B (71B in tensor metadata). Using the llama.cpp Llama 3.1 70B Q4_K_M size of 43.1 GB plus 1.342 GB KV and 2 GB overhead gives 46.442 GB. The Llama 3.3 file size and its own config are unknown because the repository is gated.
Can a Mac mini run a 70B model?
Only the M5 Pro configurations at 48 or 64 GB that Apple lists. The M6 Mac mini rows top out at 32 GB, which is below the 4-bit total of 38.842 GB. Speed is unknown.
How much RAM for a 32B model?
19.324 GB at 4-bit and context 4096, and 26.840 GB at 32768, for Qwen2.5-32B-Instruct. 8-bit is 35.574 GB at 4096.
Does this page give tokens per second?
No. Speed is unknown here; use measure-tokens-per-second-mac to measure it on your own Mac.
Where do the formulas come from?
From methodology, which defines the weight formula, the KV formula, the 2-byte assumption and the 2 GB overhead.
Sources read on 2026-10-13
- Llama 3.3 70B Instruct card: 70B in the description, 71B params in tensor metadata, 128k context, gated; config.json returned 401.
- DeepSeek-R1-Distill-Llama-70B card: 71B params, “derived from Llama3.3-70B-Instruct”, not gated.
- DeepSeek-R1-Distill-Llama-70B config.json: 80 layers, 8 KV heads, head_dim 128, max_position_embeddings 131072.
- llama.cpp quantize README: Llama 3.1 70B 280.9 GB original and 43.1 GB Q4_K_M. Speed columns not used.
- Qwen2.5-32B-Instruct card and config.json: 32.5B, 64 layers, 8 KV heads, hidden size 5120, 40 attention heads, 32768 positions, Apache-2.0.
- Apple Mac mini specs, MacBook Pro specs, Mac Studio specs: unified memory options per chip.
- Methodology: weight, KV and overhead formulas.