The run: Qwen3.8-Flash-Next, described as a ~125B-parameter MoE with ~6B parameters active per token (the reporter's "125B A6B"), quantized to 4-bit (UD-Q4_K_XL, ~111 GB across 4 shards), served with llama.cpp on one 24 GB RTX 4090 + ~110 GB DDR4, CUDA 13, PCIe 4.0 x16, a continuous 28k prompt across runs.
| Config | Context | Prefill | Decode | VRAM |
|---|---|---|---|---|
| Hybrid offload (-ncmoe 40) | 80k | ~384 t/s | ~22.5 t/s | 23.9 GB |
| Full expert offload (-cmoe) | 80k | ~356 t/s | ~20.8 t/s | 11.7 GB |
| Full expert offload | 180k | ~358 t/s | ~21.0 t/s | 15.6 GB |
| Full expert offload | 250k | ~364 t/s | ~21.0 t/s | 18.3 GB |
Two levers did the work, per the report: --cpu-moe / --n-cpu-moe N (shorthand -cmoe / -ncmoe) push expert tensors off the GPU into system RAM — pinning all experts to DDR4 dropped VRAM from ~24 GB to ~11.7 GB for near-zero decode loss — and a larger batch (-b 4096 -ub 4096) roughly doubled prefill ingestion (~150 → ~360 t/s). The build was from an experimental llama.cpp branch (the reporter cited PR #27742).
A dense N-parameter model touches all N weights for every token, so N must sit in fast memory. A mixture-of-experts model routes each token through a small subset of "expert" sub-networks — so while the model stores ~125B parameters, it only computes with ~6B per token. Two consequences fall straight out:
1. Decode compute is tiny relative to size. Per-token work scales with the active parameters (~6B), not the total (~125B). That is why ~21 t/s is achievable at all on a consumer card.
2. The bulk of the weights are cold most of the time. Any given token only needs its routed experts, so the enormous expert tables can live in slower, cheaper memory and be pulled in as needed. llama.cpp's CPU-MoE flags do exactly that: attention and the active path stay on the accelerator; the expert weights sit in system RAM. You trade a little latency for an enormous capacity gain — a 24 GB card behaves as if it had ~110 GB.
The catch on a discrete GPU: those experts cross the PCIe bus to reach the compute. It works, but it is an offload dance — bandwidth-bound and fiddly to tune (that is what -ncmoe 40 is: hand-placing 40 expert layers to balance the bus).
On a discrete-GPU box, "VRAM" and "system RAM" are two separate pools with a PCIe straw between them. On Apple Silicon they are the same pool — unified memory, addressed by CPU and GPU alike. So the offload the 4090 has to choreograph doesn't exist on a Mac: a 111 GB 4-bit model simply is resident. No -ncmoe tuning, no bus hop, no expert-streaming penalty.
What gates Mac decode instead is memory bandwidth — and MoE's small active-parameter count is precisely the workload that bandwidth-bound decode handles well. Apple's published figures: M4 Pro ≈ 273 GB/s, M4 Max ≈ 546 GB/s, M3 Ultra ≈ 819 GB/s. A 128 GB M4 Max holds the entire ~111 GB model with room for a long context window; a 256–512 GB M3 Ultra holds far larger MoE outright.
This isn't theoretical for us. The Proxies.sx compute marketplace already lists an Ultra tier whose stated job is "DeepSeek-671B-class MoE (4-bit)" — a 671B-total / 37B-active MoE — served whole from a single Mac Studio's unified memory. Same principle as the 4090 run, minus the offload dance.
If your workload wants a large, long-context, single-tenant model endpoint — big MoE, unlimited tokens, no per-token metering, no noisy neighbors — you do not need a datacenter H100. You need one Mac with enough unified memory, rented whole. That is what compute.proxies.sx is.
| Tier | Hardware | Unified memory | Serves (verified catalog language) | $/30d |
|---|---|---|---|---|
| Starter | M4 Pro | 24–36 GB | 27B-class @ 4-bit, 16K context | $249 |
| Pro | M4 Pro/Max | 48–64 GB | 27B @ 8-bit / 70B-class @ 4-bit | $449 |
| Max | M4 Max | 128 GB | 70B comfortably / 27B full precision / big-MoE @ 4-bit | $799 |
| Ultra | M3 Ultra Studio | 256–512 GB | DeepSeek-671B-class MoE @ 4-bit | $2,499 |
1. Browse tiers & pricing: compute.proxies.sx/market — pay with card (Stripe) or USDC (CoinGate).
2. After checkout your node provisions; drive it from your code:
curl https://api.proxies.sx/v1/peer/compute/rentals/<rentalId>/chat \
-H "X-API-Key: psx_your_key" \
-H "Content-Type: application/json" \
-d '{"messages":[{"role":"user","content":"Hello"}]}'
Model list your rented node can serve: /v1/peer/compute/catalog. Have Macs to supply instead? Register a node and earn 45% while it's rented.
The 4090 figures are one person's, on one rig, on an experimental build — directional, not gospel, and not ours. Decode throughput on any box (Mac included) depends on quant, context length, and memory bandwidth; we quote our own numbers only when we've measured them, and the catalog language above is the contract we actually serve against. MoE offload/residency buys capacity, not free lunch: bigger context still costs memory (watch the VRAM column climb 11.7 → 18.3 GB from 80k → 250k), and a 4-bit quant is a quality trade you should test for your task. The durable takeaway isn't a t/s number — it's that model size stopped meaning datacenter, and unified memory is the cleanest place that's true.
Ground Truth · back to the feed · machine-readable: /news/feed.md · Rent a Mac node