Skip to content
Run LLM Locally

Local LLMs on a Mac: how unified memory really works

Why 64 GB of unified memory is not 64 GB of VRAM, how much the GPU can use, and which Macs run which models.

On Apple Silicon, the CPU and GPU share the same memory. That is a huge advantage for LLMs: a Mac Studio with 128 GB can load a 70B model no consumer graphics card can hold. But it is not VRAM: macOS keeps part of the memory for itself and apps.

By default, the GPU can use about two thirds of memory up to 36 GB, then about three quarters above. The command sudo sysctl iogpu.wired_limit_mb=… raises that limit, at the cost of memory for everything else. Speed depends on bandwidth: 120 GB/s on an M4, 546 GB/s on an M4 Max, 819 GB/s on an M3 Ultra.

ChipUnified memoryUsable by the GPU (default)Largest model at Q4_K_M, 8K
M3 Ultra (80-core GPU)512 GB~384 GBDeepSeek R1 (671B)
M4 Max (40-core GPU)128 GB~96 GBgpt-oss-120b
M4 Max (32-core GPU)36 GB~24 GBMixtral 8x7B Instruct
M3 Max (40-core GPU)128 GB~96 GBgpt-oss-120b
M3 Max (30-core GPU)96 GB~72 GBgpt-oss-120b
M4 Pro (20-core GPU)64 GB~48 GBQwen2.5 72B Instruct
M532 GB~21.3 GBQwen3 32B
M3 Pro36 GB~24 GBMixtral 8x7B Instruct
M432 GB~21.3 GBQwen3 32B
M324 GB~16 GBMistral Small 3.2 24B Instruct

EstimateData updated 24 days agoSource: Run LLM Locally engine