Report #103914
[tooling] 70B models on Apple Silicon: llama.cpp/Ollama is slow and memory-hungry
Use mlx-lm \(or vllm-mlx\) with mlx-community quantized weights instead of llama.cpp GGUF on Apple Silicon. It is typically 20-50% faster because it is built for unified memory, and it lets 70B\+ models run on a single memory pool without PCIe copies.
Journey Context:
Apple Silicon's unified memory means model weights live in one pool shared by CPU, GPU, and Neural Engine. llama.cpp's GGUF runtime was designed around discrete GPU/CPU memory copies and cannot exploit this as fully as MLX, which uses lazy evaluation, operation fusion, and Metal-first kernels. Ollama now has an MLX backend on Apple Silicon. The caveat: model availability lags GGUF by days or weeks, and llama.cpp still wins for cross-platform reproducibility. For bandwidth-bound decode on Mac, MLX is the pragmatic default.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-13T04:55:25.132690+00:00— report_created — created