Outlier  ›  data

Streaming engine benchmarks: Plus + Vision tok/s on Apple Silicon

Corrected 2026-09-29: the quick answer and FAQ said ~2.1 tok/s; that is this benchmark’s protocol, and the shipping figure is 1.59.

Quick answer
  • Current engine (V9 paged): Plus 397B runs at 1.59 tok/s at the shipped K=20 setting (the 2026-05-01 K sweep: 5 prompts × 80 tokens, M1 Ultra with 64 GB, MLX 4-bit, fresh process), peaking at 14.04 GB. (The comparison table below uses a different protocol, per-token RSS sampling, which read 11 GB RSS and 3.6 GB wired.)
  • Both streaming engines retired: V11 in v1.11.71, V10 two builds later in v1.11.73.
  • Why: per-token streaming on V10/V11 committed 57–58 GB of Metal-wired memory during prefill. That's enough to crash a 32 GB Mac, and all it bought was a ~30–40% tok/s gain.
  • V9 paged (K=20 hot experts + 8 GB LRU) sits at 3.6 GB wired in this page's per-token protocol, 15× less wired memory. On a footprint-first tier, that's the trade you want.

Outlier Pro: $49 once

Download free Buy Pro

Free to start (Nano and Lite). macOS 15+, Apple silicon. Refund window: 30 days, no questions asked.

Engine version note: Both streaming engines have been retired, V11 in v1.11.71 and V10 in v1.11.73, after M1 Ultra sweeps found their per-token expert streaming committed 57–58 GB of Metal-wired memory. The current shipping engine for Plus is V9 paged inference. The Vision rows below were measured on Vision 3.6 (Qwen3.6-35B-A3B), which was retired in v1.11.796; the Vision tier that ships now is Vision 3.8 (Qwen3.8-27B, dense, 15.5 GB). The retired engines' numbers are kept here for transparency; new installs use V9.

All three of Outlier's MoE engines run on the same trick. Keep the active experts in unified memory, pull cold ones off disk. V9 paged, V10 streaming, V11 hybrid. Where they split is how they cache, and that split is what decided which one shipped. The streaming variants lost to V9 paged because their per-token streaming pattern committed far more Metal-wired memory. The raw comparison is below.

Methodology

HardwareM1 Ultra Mac Studio, 64 GB unified memory, iogpu.wired_limit_mb=57344
Model versionsPlus = Qwen3.5-397B-A17B MLX 4-bit; Vision (3.6, retired) = Qwen3.6-35B-A3B MLX 4-bit
Inference stackmlx-lm 0.31.3, MLX 0.18.x
Aggregation5-run mean per configuration, fresh process per run (no warm-cache bias)
Soak runs50-turn multi-turn workloads on Plus; 20-turn on Vision
RAM measurementOS-level RSS via ps -o rss=, sampled per token
Date range2026-05-07 (V10 results), 2026-05-09 (V11 soak verdict), 2026-05-19 (V11 retired, v1.11.71), v1.11.73 (V10 retired)

Plus 397B-A17B: engine comparison

Enginetok/sRSS peakWired Memory peakStatus
V9 paged K=202.111 GB3.6 GBcurrent: shipping default
V10 streaming K=42.913 GB57 GBretired v1.11.73
V11 hybrid LRU3.013 GB58 GBretired v1.11.71

Look at the Wired Memory column. That's the one that mattered. V10 and V11 streamed experts per token, which committed 57–58 GB of Metal command-buffer memory during prefill, enough to take down a 32 GB Mac on the very first generation. The payoff was a ~30–40% tok/s bump over V9. V9 paged holds 3.6 GB Wired at 2.1 tok/s (this page's per-token protocol), 15× less. This tier exists to fit a 209 GB model on a small Mac, so footprint beats speed and V9 ships. On the 2.1 figure: that is this benchmark's own per-token RSS protocol. The pre-ship K-override sweep, run at the shipped K=20 setting over 5 prompts of 80 tokens with model load timed separately, measures 1.59 tok/s (per-prompt 1.35–1.65) and 14.04 GB peak. Where the two disagree the rest of this site publishes the lower, shipping-config number; the comparison below is kept on one protocol so the engines stay comparable to each other.

Vision 35B-A3B: engine comparison

This is Vision 3.6, the Qwen3.6-35B-A3B tier that was retired in v1.11.796. The shipping Vision tier is Vision 3.8 (Qwen3.8-27B).

Enginetok/sRSS peakStatus
V9 paged16.31~18 GBwas the default for Vision 3.6 (24 GB+ Macs)
V10 streaming K=46.57~3.5 GBopt-in (lower RAM, slower)
V11 hybrid LRU10.921.60 GBretired v1.11.71

Vision 3.6 was a little different. There was a V10 opt-in for people on tight RAM, lower footprint at the cost of speed (~6.6 tok/s), but the default was V9 at 16.31 tok/s on 24 GB+ Macs. That old 16 GB MacBook Air result leaned on V11's LRU specifically. With V11 gone, the practical floor for Vision 3.6 was 24 GB, and Vision 3.8 needs 24 GB too.

Soak verdict: what passed and what didn't

Here's what the 2026-05-09 soak verdict on V11 turned up over 9 cycles. The quality numbers were fine. The memory number wasn't.

How to reproduce

  1. Install Outlier. You'll want Pro (the $49 licence), which includes Plus 397B: outlier.host
  2. Open Settings → Engine Mode. Plus runs on Capacity (V9 paged), and any old V10/V11 preference auto-migrates to Capacity for you.
  3. Run a multi-prompt set and grab tok/s from the response footer.
  4. While it's generating, sample OS RSS with ps -o pid,rss,command -p $(pgrep -f outlier-cli).

Want to reproduce V10/V11 themselves? You can't from a current DMG, since neither ships anymore. The source lives in repo history before commit 525298f (v1.11.71) and the v1.11.73 V10 removal.

Questions about the streaming-engine numbers

What engine does Outlier use for Plus now?

V9 paged inference (K=20 hot experts per layer plus an 8 GB LRU cache). It runs Plus 397B at 1.59 tok/s at the shipped K=20 setting (the 2026-05-01 K sweep), peaking at 14.04 GB. (This page's own per-token RSS protocol read 11 GB RSS and 3.6 GB wired.) The V10 and V11 streaming engines were retired.

Why were the streaming engines retired?

V10 and V11 per-token expert streaming committed 57–58 GB of Metal-wired memory during prefill, enough to crash a 32 GB Mac, for only a 30–40% tok/s gain. V9 paged uses 3.6 GB Wired (15× less), so on a footprint-first tier it wins.

How were the numbers measured?

The comparison table: 5-run mean per configuration, fresh process per run, on an M1 Ultra with OS-level RSS sampled per token. The current engine's 1.59 tok/s and 14.04 GB peak come from the separate K=20 sweep of 2026-05-01 (5 prompts of 80 tokens, fresh process, M1 Ultra with 64 GB, MLX 4-bit).

Try Outlier free

Free: Nano + Lite. Pro: $49 once. macOS 15+. Refund window: 30 days, no questions asked.

Download free (276 MB) Buy Pro

New models worth running