Unified memory · Apple
What AI models can an Apple M1 Ultra 128GB run?
128 GB is server territory. The constraint stops being memory and becomes bandwidth: everything fits, and what varies is how long you wait for it. Memory is shared with the CPU, so the practical ceiling is lower than the sticker number: macOS hands roughly three quarters of it to the GPU by default.
The short answer
Assuming an 8k context window and default settings, these are the models worth downloading first.
See how fast it feels
Apple M1 Ultra 128GB running GPT OSS 120B at MXFP4
YouWhy does my model use more memory when the conversation gets longer?
Reading your question
Simulated from our estimate at a 512-token question, not a recording. Assumes nothing else is competing for the GPU.
Where it sits
The GPU can use about 96 GB of this machine's 128 GB by default, so for planning it behaves like a 48 GB card with different bandwidth. The 48 GB guide explains what that tier runs and where it runs out, and the bandwidth guide explains why 800 GB/s decides how fast it answers.
Our indicative price for this machine is $3,400 new, reviewed 2026-09-01. That is 3.8 GB of memory and 24 GB/s of bandwidth for every $100. Prices move, so treat these as a place to start a search and not a quote.
Devices in a similar price band, fastest memory first:
| Device | Price | Memory | Bandwidth | Best all-round pick |
|---|---|---|---|---|
| Apple M3 Ultra 96GB | $3,999 | 96 GB | 819 GB/s | GPT OSS 120B, 102.5 t/s |
| Apple M2 Ultra 64GB | $3,499 | 64 GB | 800 GB/s | Qwen3.5 27B, 20.2 t/s |
| Apple M4 Max 36GB | $3,199 | 36 GB | 546 GB/s | Gemma 4 12B Instruct, 28.2 t/s |
| Apple M4 Max 48GB | $3,699 | 48 GB | 546 GB/s | Qwen3.5 27B, 13.8 t/s |
Every model, scored on this device
Each row uses the highest-quality quantization that both fits and stays conversational. Speed is a single-stream estimate at 8k context.
| Model | Params | Verdict | Download | Memory used | Speed | Max context |
|---|---|---|---|---|---|---|
| GPT OSS 120B GPT-OSS | 116.83B (5.7B active) | Runs great | MXFP4 | 59.65 GB | 100.1 t/s | 128k |
| Qwen3.5 27B Qwen | 27.78B | Runs well | Q8_0 | 28.54 GB | 20.2 t/s | 256k |
| Gemma 4 31B Instruct Gemma | 31.27B | Runs well | Q8_0 | 34.64 GB | 15.9 t/s | 128k |
| Qwen3 Coder Next Qwen | 79.67B (3.19B active) | Runs great | Q8_0 | 79.4 GB | 92.7 t/s | 256k |
| Qwen3 32B Qwen | 32.76B | Runs well | Q8_0 | 34.83 GB | 16.2 t/s | 32k |
| Qwen3 Next 80B A3B Instruct Qwen | 81.32B (3.19B active) | Runs great | Q8_0 | 81.04 GB | 92.7 t/s | 256k |
| Granite 4.1 30B Granite | 28.87B | Runs well | Q8_0 | 30.94 GB | 17.8 t/s | 128k |
| Qwen2.5 32B Instruct Qwen | 32.76B | Runs well | Q8_0 | 34.83 GB | 16.2 t/s | 32k |
| Gemma 3 27B Instruct Gemma | 27.43B | Runs well | Q8_0 | 28.65 GB | 19.3 t/s | 128k |
| Qwen3.5 35B A3B Qwen | 35.95B (2.9B active) | Runs great | Q8_0 | 36.1 GB | 103.6 t/s | 256k |
| Qwen2.5 Coder 32B Instruct Qwen | 32.76B | Runs well | Q8_0 | 34.83 GB | 16.2 t/s | 32k |
| Gemma 4 26B A4B Instruct Gemma | 25.81B (3.74B active) | Runs great | Q8_0 | 26.69 GB | 69.8 t/s | 256k |
| GLM 4.7 Flash GLM | 31.22B (3.66B active) | Runs great | Q8_0 | 31.61 GB | 78.9 t/s | 128k |
| Mixtral 8x7B Instruct V0.1 Mistral | 46.7B (12.88B active) | Runs well | Q8_0 | 47.59 GB | 23 t/s | 32k |
| Llama 3.3 70B Instruct Llama | 70.55B | Runs well | Q5_K_M | 49.74 GB | 11.2 t/s | 128k |
| Qwen2.5 72B Instruct Qwen | 72.71B | Runs well | Q5_K_M | 51.17 GB | 10.9 t/s | 32k |
| Qwen2.5 VL 72B Instruct Qwen | 73.41B | Runs well | Q5_K_M | 51.64 GB | 10.8 t/s | 64k |
| Qwen3 30B A3B Qwen | 30.53B (3.34B active) | Runs great | Q8_0 | 31.27 GB | 78.4 t/s | 32k |
| Mistral Small 24B Instruct 2501 Mistral | 23.57B | Runs well | Q8_0 | 24.98 GB | 22.7 t/s | 32k |
| Phi 3.5 MoE Instruct Phi | 41.87B (6.64B active) | Runs great | Q8_0 | 42.81 GB | 41.8 t/s | 128k |
| Gemma 4 12B Instruct Gemma | 11.96B | Runs great | Q8_0 | 13.52 GB | 41.4 t/s | 256k |
| Qwen3 14B Qwen | 14.77B | Runs great | Q8_0 | 16.28 GB | 36 t/s | 32k |
| GPT OSS 20B GPT-OSS | 20.91B (4.18B active) | Runs great | MXFP4 | 11.81 GB | 132.1 t/s | 128k |
| Qwen3 Coder 30B A3B Instruct Qwen | 30.53B (3.34B active) | Runs great | Q8_0 | 31.27 GB | 78.4 t/s | 32k |
| Qwen2.5 14B Instruct Qwen | 14.77B | Runs great | Q8_0 | 16.53 GB | 35.4 t/s | 32k |
| Qwen2.5 Coder 14B Instruct Qwen | 14.77B | Runs great | Q8_0 | 16.53 GB | 35.4 t/s | 32k |
| Codestral 22B V0.1 Mistral | 22.25B | Runs well | Q8_0 | 24.21 GB | 23.1 t/s | 32k |
| Qwen3.5 9B Qwen | 9.65B | Runs great | Q8_0 | 10.22 GB | 61.5 t/s | 256k |
| Phi 4 Phi | 14.66B | Runs great | Q8_0 | 16.48 GB | 35 t/s | 16k |
| Llama 3 3 Nemotron Super 49B V1 Llama | 49.87B | Runs well | Q5_K_M | 53.55 GB | 10.4 t/s | 16k |
Show the other 56 models
| Gemma 3 12B Instruct | 12.19B | Runs great | Q8_0 | 13.24 GB | 42.2 t/s | 128k |
| Gemma 4 E4B Instruct | 8B | Runs great | Q8_0 | 8.39 GB | 67.5 t/s | 128k |
| Granite 4.1 8B | 8.79B | Runs great | Q8_0 | 10.32 GB | 54.7 t/s | 128k |
| Qwen3 8B | 8.19B | Runs great | Q8_0 | 9.61 GB | 63.1 t/s | 32k |
| Mistral Nemo Instruct 2407 | 12.25B | Runs great | Q8_0 | 13.78 GB | 42.8 t/s | 128k |
| Qwen2.5 VL 7B Instruct | 8.29B | Runs great | Q8_0 | 9 GB | 67.1 t/s | 64k |
| Qwen2.5 7B Instruct | 7.62B | Runs great | Q8_0 | 8.34 GB | 73.1 t/s | 32k |
| Llama 3.1 8B Instruct | 8.03B | Runs great | Q8_0 | 9.32 GB | 64.5 t/s | 128k |
| DeepSeek Coder V2 Lite Instruct | 15.71B | Runs great | Q8_0 | 16.09 GB | 108.3 t/s | 128k |
| Gemma 2 9B Instruct | 9.24B | Runs great | Q8_0 | 11.47 GB | 48.9 t/s | 8k |
| Qwen2.5 Coder 7B Instruct | 7.62B | Runs great | Q8_0 | 8.34 GB | 73.1 t/s | 32k |
| OLMo 3 7B Instruct | 7.3B | Runs great | Q8_0 | 10.1 GB | 58.4 t/s | 64k |
| Internlm3 8B Instruct | 8.8B | Runs great | Q8_0 | 9.46 GB | 63.5 t/s | 32k |
| Mistral 7B Instruct V0.3 | 7.25B | Runs great | Q8_0 | 8.55 GB | 67.6 t/s | 32k |
| Gemma 4 E2B Instruct | 5.12B | Runs great | Q8_0 | 5.41 GB | 106.2 t/s | 128k |
| Qwen3.5 4B | 4.66B | Runs great | Q8_0 | 5.24 GB | 110.8 t/s | 256k |
| Mistral 7B Instruct V0.2 | 7.24B | Runs great | Q8_0 | 8.54 GB | 67.7 t/s | 32k |
| GLM 4.5 | 358.34B | Fits only at 2 to 3 bits | IQ2_XXS | 89.22 GB | 28.9 t/s | 16k |
| DeepSeek Coder 7B Instruct V1.5 | 6.91B | Runs great | Q8_0 | 10.96 GB | 53.5 t/s | 4k |
| DeepSeek Coder 6.7B Instruct | 6.74B | Runs great | Q8_0 | 11.04 GB | 51.6 t/s | 16k |
| LFM2.5 8B A1B | 8.47B | Runs great | Q8_0 | 8.78 GB | 191.5 t/s | 64k |
| Qwen3 4B | 4.02B | Runs great | Q8_0 | 5.43 GB | 106.6 t/s | 32k |
| Gemma 3 4B Instruct | 4.3B | Runs great | Q8_0 | 4.88 GB | 119.5 t/s | 128k |
| Phi 4 Mini Instruct | 3.84B | Runs great | Q8_0 | 5.14 GB | 113.3 t/s | 128k |
| Granite 4.1 3B | 3.4B | Runs great | Q8_0 | 4.31 GB | 136.3 t/s | 128k |
| Qwen2.5 3B Instruct | 3.09B | Runs great | Q8_0 | 3.65 GB | 162.9 t/s | 32k |
| Phi 3 Mini 4k Instruct | 3.82B | Runs great | Q8_0 | 4.87 GB | 122.7 t/s | 4k |
| Llama 3.2 3B Instruct | 3.21B | Runs great | Q8_0 | 4.39 GB | 134.2 t/s | 128k |
| LFM2.5 2.6B | 2.7B | Runs great | Q8_0 | 3.11 GB | 194.5 t/s | 128k |
| Qwen3.5 2B | 2.27B | Runs great | Q8_0 | 2.67 GB | 230.6 t/s | 256k |
| Gemma 2 2B Instruct | 2.61B | Runs great | Q8_0 | 3.51 GB | 170.4 t/s | 8k |
| Starcoder2 3B | 3.03B | Runs great | Q8_0 | 3.46 GB | 183.4 t/s | 16k |
| Qwen3 1.7B | 2.03B | Runs great | Q8_0 | 3.19 GB | 188.6 t/s | 32k |
| DeepSeek R1 Distill Qwen 1.5B | 1.78B | Runs great | Q8_0 | 2.27 GB | 310.9 t/s | 128k |
| Qwen2.5 1.5B Instruct | 1.54B | Runs great | Q8_0 | 2.03 GB | 312.1 t/s | 32k |
| SmolLM2 1.7B | 1.71B | Runs great | Q8_0 | 3.5 GB | 170.4 t/s | 8k |
| OLMo 2 0425 1B | 1.48B | Runs great | Q8_0 | 2.77 GB | 240.5 t/s | 4k |
| Llama 3.2 1B Instruct | 1.24B | Runs great | Q8_0 | 1.79 GB | 368.2 t/s | 128k |
| LFM2.5 1.2B Instruct | 1.17B | Runs great | Q8_0 | 1.56 GB | 486.2 t/s | 64k |
| Gemma 3 1B Instruct | 1B | Runs great | Q8_0 | 1.32 GB | 523.6 t/s | 32k |
| Qwen3.5 0.8B | 0.87B | Runs great | Q8_0 | 1.25 GB | 559.1 t/s | 256k |
| Qwen3 0.6B | 0.75B | Runs great | Q8_0 | 1.89 GB | 336.3 t/s | 32k |
| Qwen2.5 0.5B Instruct | 0.49B | Runs great | Q8_0 | 0.85 GB | 940 t/s | 32k |
| LFM2.5 350M | 0.35B | Runs great | Q8_0 | 0.71 GB | 1455.5 t/s | 64k |
| Qwen3.5 122B A10B | 125.09B | Just fits | n/a | 96.2 GB | 48.3 t/s | n/a |
| MiniMax M3 | 427.04B | Fits only at 2 to 3 bits | n/a | 103.79 GB | 44.3 t/s | n/a |
| MiniMax M2.5 | 228.7B | Just fits | n/a | 115.43 GB | 42.9 t/s | n/a |
| MiniMax M2.7 | 228.69B | Just fits | n/a | 115.43 GB | 42.9 t/s | n/a |
| Qwen3 235B A22B | 235.09B | Just fits | n/a | 108.85 GB | 27.4 t/s | n/a |
| GLM 4.5 Air | 110.47B | Just fits | n/a | 111.13 GB | 21.6 t/s | n/a |
| Kimi K2.6 | 1026.88B | Will not run | n/a | 578.41 GB | n/a | n/a |
| Kimi K2 Instruct | 1026.41B | Will not run | n/a | 578.15 GB | n/a | n/a |
| GLM 5.1 | 753.86B | Will not run | n/a | 425.01 GB | n/a | n/a |
| GLM 5.2 | 753.33B | Will not run | n/a | 424.72 GB | n/a | n/a |
| DeepSeek V3.2 | 685.4B | Will not run | n/a | 386.4 GB | n/a | n/a |
| DeepSeek R1 | 684.53B | Will not run | n/a | 385.92 GB | n/a | n/a |
What it will not run
12 of the 86 architectures we track are out of reach here, even at 2-bit precision.
Other devices with 128 GB
Same capacity, different speed. Once a model fits, bandwidth is what separates these.
Questions people ask about an Apple M1 Ultra 128GB
How much VRAM does an Apple M1 Ultra 128GB have?
The Apple M1 Ultra 128GB has 128 GB of unified memory shared with the CPU, of which roughly 96 GB is available to a model once the operating system takes its share.
Can an Apple M1 Ultra 128GB run a 70B model?
Yes. At Q8_0 a 70B model fits in 79.4 GB and generates around 92.7 tokens per second.
What is the best local model for an Apple M1 Ultra 128GB?
GPT OSS 120B at MXFP4 is the strongest all-round fit: 59.65 GB used, around 100.1 tokens per second at 8k context.