Can I run DeepSeek-V3.1 on a Apple M5 Max?
Not at these settings. No indexed quantization of DeepSeek-V3.1 fits Apple M5 Max at any context we compute, with q8_0 KV. The smallest shipped quantization is 137.32 GiB in weights alone, against 25.11 GiB usable. CPU offload can still run it, slowly.
Every quantization at every context
| Quant | Weights● | 4K◐ | 8K◐ | 16K◐ | 32K◐ | 64K◐ | 128K◐ |
|---|---|---|---|---|---|---|---|
| F16 | 1250.09 GiB | 1250.9 | 1251.0 | 1251.3 | 1251.9 | 1253.0 | 1255.3 |
| BF16 | 1250.09 GiB | 1250.9 | 1251.0 | 1251.3 | 1251.9 | 1253.0 | 1255.3 |
| Q8_0 | 664.30 GiB | 665.1 | 665.2 | 665.5 | 666.1 | 667.2 | 669.5 |
| Q6_K | 514.51 GiB | 515.3 | 515.4 | 515.7 | 516.3 | 517.4 | 519.7 |
| Q5_K_M | 445.49 GiB | 446.3 | 446.4 | 446.7 | 447.3 | 448.4 | 450.7 |
| Q5_K_S | 430.86 GiB | 431.6 | 431.8 | 432.1 | 432.6 | 433.8 | 436.0 |
| Q4_1 | 392.12 GiB | 392.9 | 393.0 | 393.3 | 393.9 | 395.0 | 397.3 |
| Q4_K_M | 381.12 GiB | 381.9 | 382.0 | 382.3 | 382.9 | 384.0 | 386.3 |
| Q4_K_S | 367.08 GiB | 367.9 | 368.0 | 368.3 | 368.9 | 370.0 | 372.3 |
| Q4_0 | 359.88 GiB | 360.7 | 360.8 | 361.1 | 361.7 | 362.8 | 365.1 |
| IQ4_NL | 354.35 GiB | 355.1 | 355.3 | 355.5 | 356.1 | 357.3 | 359.5 |
| IQ4_XS | 335.26 GiB | 336.0 | 336.2 | 336.5 | 337.0 | 338.2 | 340.4 |
| Q3_K_M | 298.44 GiB | 299.2 | 299.4 | 299.6 | 300.2 | 301.4 | 303.6 |
| Q3_K_L | 297.75 GiB | 298.5 | 298.7 | 298.9 | 299.5 | 300.7 | 302.9 |
| IQ3_M | 286.74 GiB | 287.5 | 287.6 | 287.9 | 288.5 | 289.6 | 291.9 |
| Q3_K_S | 273.21 GiB | 274.0 | 274.1 | 274.4 | 275.0 | 276.1 | 278.4 |
| UD-IQ3_XXS | 260.49 GiB | 261.3 | 261.4 | 261.7 | 262.3 | 263.4 | 265.7 |
| IQ3_XS | 258.11 GiB | 258.9 | 259.0 | 259.3 | 259.9 | 261.0 | 263.3 |
| IQ3_XXS | 249.25 GiB | 250.0 | 250.2 | 250.4 | 251.0 | 252.2 | 254.4 |
| Q2_K_L | 229.03 GiB | 229.8 | 229.9 | 230.2 | 230.8 | 231.9 | 234.2 |
| Q2_K | 228.82 GiB | 229.6 | 229.7 | 230.0 | 230.6 | 231.7 | 234.0 |
| UD-IQ2_M | 219.34 GiB | 220.1 | 220.2 | 220.5 | 221.1 | 222.2 | 224.5 |
| UD-IQ2_XXS | 210.37 GiB | 211.1 | 211.3 | 211.6 | 212.1 | 213.3 | 215.6 |
| IQ2_M | 200.27 GiB | 201.0 | 201.2 | 201.5 | 202.0 | 203.2 | 205.5 |
| UD-IQ1_M | 192.62 GiB | 193.4 | 193.5 | 193.8 | 194.4 | 195.5 | 197.8 |
| UD-IQ1_S | 179.11 GiB | 179.9 | 180.0 | 180.3 | 180.9 | 182.0 | 184.3 |
| IQ2_S | 176.61 GiB | 177.4 | 177.5 | 177.8 | 178.4 | 179.5 | 181.8 |
| IQ2_XS | 175.47 GiB | 176.2 | 176.4 | 176.7 | 177.2 | 178.4 | 180.7 |
| UD-TQ1_0 | 158.79 GiB | 159.6 | 159.7 | 160.0 | 160.6 | 161.7 | 164.0 |
| IQ2_XXS | 152.79 GiB | 153.6 | 153.7 | 154.0 | 154.6 | 155.7 | 158.0 |
| IQ1_M | 137.32 GiB | 138.1 | 138.2 | 138.5 | 139.1 | 140.2 | 142.5 |
Figures are GiB of total memory: weights plus KV cache plus compute buffer and backend overhead. Weights and KV are near-exact; the overhead term is modeled. Hover any cell for the breakdown.
Why other calculators disagree
A parameters × bits ÷ 8 estimate ignores two things that dominate at long context. First, the weights themselves are not the nominal rate — quantizations are mixtures, so the real file is consistently larger than the label implies. Second, this model uses latent attention and allocates no V cache at all, so any formula reading num_key_value_heads overstates its cache by more than an order of magnitude.