Rapid-MLX vs Ollama: a faster Ollama alternative for Mac

Rapid-MLX decoded faster than Ollama on one stream and across four streams on both September Macs. Its newer October M5 Max run led oMLX and LM Studio; Ollama was not measured in that run.

Disclosure: we build Rapid-MLX.

Rapid-MLX at a glance

pip install rapid-mlx
rapid-mlx serve qwen3.5-9b-4bit

October 2026 M5 Max measurement (Ollama not run)

The October run compares Rapid-MLX 0.16.1 default, oMLX 0.7.0 and headless LM Studio on Qwen3.5-9B 4-bit. It is separate from the September Ollama comparison below. Single run per engine; small differences (under ~5%) are within run-to-run variation. Rapid-MLX default used MTP speculative decoding on a text-only lane with image input off. Scenario JSON, harness, versions, and summary are published.

Scenario Rapid-MLX 0.16.1 default oMLX 0.7.0 LM Studio (MLX)
Decode, 1 stream 115.5 tok/s 78.0 tok/s 81.1 tok/s
4 streams, aggregate 248.2 tok/s 224.6 tok/s 230.0 tok/s
Tool calls passed (30 prompts) 30/30 30/30 30/30
Agent session: turns 2–10, median 0.233 s 0.238 s 0.613 s
After restart: turn 1 0.197 s 0.265 s 32.678 s
After restart: turns 2–10, median 0.229 s 0.230 s 0.611 s
After restart: 10 turns, total 2.275 s 2.340 s 37.842 s
Agent session: 10 turns, total 11.547 s 10.772 s 37.894 s
Agent session: turn 1, cold 9.442 s 8.576 s 32.694 s
TTFT, ~2k-token prompt 0.815 s 0.747 s 2.780 s
TTFT, ~16k-token prompt 6.089 s 5.721 s 21.743 s

MLX vs Ollama: the direct answer

The September Rapid-MLX numbers below are Rapid-MLX 0.15.3 (measured at commit 1394f16, which 0.15.3 includes); the raw data and the script are published. For the longer August study across three models, including llama.cpp and LM Studio, see Rapid-MLX vs Ollama vs LM Studio, measured. To actually switch, the migration guide maps every Ollama command.

In the September 2026 runs on an M4 Pro Mac mini (48 GB) and an M3 Pro Mac (18 GB), MLX-based Rapid-MLX 0.15.3 decoded faster than Ollama on one stream and across four streams for Qwen3.5-9B 4-bit; Ollama answered follow-up agent turns faster. These are different 4-bit files of the same model, and Ollama was not measured on the October M5 Max.

Rapid-MLX vs Ollama, measured in September 2026

Rapid-MLX loads the MLX 4-bit build of Qwen3.5-9B; Ollama loads its own qwen3.5:9b (GGUF Q4_K_M), the tag ollama pull qwen3.5:9b gives you. The weights are the same model at a similar bit width, not the same file. Ollama ran with a 32k context so no prompt was truncated, and with OLLAMA_NUM_PARALLEL=4, which Ollama 0.34.3 ignores for this model (its log: "model architecture does not currently support parallel requests"), so its four streams ran one after another. Rapid-MLX ran with PFlash off (see /compare). Ollama was measured in the earlier run on each machine with the same harness; its version has not changed. Medians of 3 runs (2 for the 4-stream row).

Rapid-MLX 0.15.3 (@1394f16), 48 GB Ollama 0.34.3, 48 GB Rapid-MLX 0.15.3 (@1394f16), 18 GB Ollama 0.34.3, 18 GB
Decode, 1 stream 66.1 tok/s 38.4 tok/s 43.6 tok/s 22.8 tok/s
TTFT, ~2k-token prompt (cold) 5.30 s 6.35 s 5.50 s 6.24 s
TTFT, ~16k-token prompt (cold) 42.8 s 49.4 s 44.7 s 49.9 s
4 streams, aggregate 68.3 tok/s 37.4 tok/s 62.3 tok/s 22.5 tok/s
Tool calls passed (30 prompts) 30/30 30/30 30/30 30/30
Agent session: turns 2–10, median 0.49 s 0.41 s 0.69 s 0.44 s
After a restart (Ollama: model reload): turn 1 12.3 s 73.1 s 13.0 s 76.9 s

How to read it: Rapid-MLX decoded faster on one stream on both Macs. The 4-stream gap is mostly Ollama serving this model one request at a time, not a like-for-like batching comparison. Cold prefill was close, with Ollama 10–15% slower. Both passed all 30 tool-call prompts.

In the September coding-agent replay, Ollama answered follow-up turns in 0.41 s against 0.49 s on 48 GB, 0.44 s against 0.69 s on 18 GB, where the gap is larger. The previous release, Rapid-MLX 0.15.2, lost that test badly on the 18 GB Mac (70.0 s, re-prefilling the whole prompt every turn); that is fixed in 0.15.3. After a restart, Rapid-MLX reloaded most of the prefix from its disk save and Ollama prefilled from scratch. The oMLX page covers the session in more detail.

What each tool is

Why Rapid-MLX

Rapid-MLX led Ollama's single-stream and four-stream decode rows on both September Macs, passed 30/30 tool-call prompts and restored its agent-session prefix after restart. The October M5 Max run measured a newer Rapid-MLX release against oMLX and LM Studio, with leading decode throughput. Rapid-MLX is Apache-2.0 licensed and provides OpenAI and Anthropic APIs, per-model tool-call parsers, agent setup commands, a Desktop app and Homebrew installation (brew install rapid-mlx).

You do not have to choose on day one: the two servers listen on different ports (Ollama on 11434, Rapid-MLX on 8000), so they can run side by side while you compare them on your own prompts.

Other options, including oMLX, LM Studio and mlx-lm, are on the full comparison page.

Frequently asked questions

Is Rapid-MLX faster than Ollama?

For decode, yes in our runs: on an M4 Pro Mac mini with 48 GB (Qwen3.5-9B at 4-bit), Rapid-MLX 0.15.3 (measured at commit 1394f16, which 0.15.3 includes) decoded 66.1 tok/s on one stream against Ollama's 38.4 tok/s, and 68.3 tok/s against 37.4 tok/s across four streams (Ollama serves this model one request at a time). In a long coding-agent session Ollama answered follow-up turns faster: 0.41 s against 0.49 s on 48 GB, and 0.44 s against 0.69 s on an 18 GB Mac. The previous release, 0.15.2, was far slower there (70.0 s); that is fixed in 0.15.3.

What is a good Ollama alternative for a Mac?

On Apple Silicon, the MLX-native servers: Rapid-MLX, oMLX and Apple's mlx-lm server. LM Studio provides a desktop model browser and local server. The comparison page puts them side by side with measured numbers.

Can I keep using my Ollama tools?

Anything that speaks the OpenAI API only needs a new base URL (http://localhost:8000/v1). The migration guide has the command-by-command mapping.