Skip to content
llm-speed

M3 Ultra (60-core GPU) LLM benchmark

The fastest LLM measured on the M3 Ultra (60-core GPU) is Qwen3-0.6B-4bit at 429.2 decode tok/s via mlx (signed run). Across 44 reproducible runs on 26 models, this page lists decode tok/s, prefill, and TTFT for each, every number linking to the run it came from.

Fastest known config on M3 Ultra (60-core GPU)

429.2 decode tok/s

Qwen3-0.6B-4bit via mlx. see full run

Qwen3-30B-A3B-Instruct-2507-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-112.5tok/s308.7tok/s356msr_o6wbmfegmde
chat-longmlx@0.31.3-96.37tok/s1,885.2tok/s1,669msr_o6wbmfegmde
concurrent-decodemlx@0.31.3-105.9tok/sno datano datar_o6wbmfegmde
agent-tracemlx@0.31.3-101.3tok/s1,978.0tok/s1,057msr_o6wbmfegmde

DeepSeek-R1-0528-Qwen3-8B-MLX-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-116.8tok/s424.5tok/s247msr_yy_6jfx70jq
chat-longmlx@0.31.3-100.5tok/s1,104.0tok/s2,846msr_yy_6jfx70jq
concurrent-decodemlx@0.31.3-110.6tok/sno datano datar_yy_6jfx70jq
agent-tracemlx@0.31.3-107.2tok/s1,108.9tok/s1,884msr_yy_6jfx70jq

Qwen3-4B-Instruct-2507-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-182.7tok/s636.6tok/s173msr_p2rpb_0iyjj
chat-longmlx@0.31.3-147.0tok/s1,913.7tok/s1,644msr_p2rpb_0iyjj
concurrent-decodemlx@0.31.3-168.4tok/sno datano datar_p2rpb_0iyjj
agent-tracemlx@0.31.3-160.8tok/s1,913.6tok/s1,091msr_p2rpb_0iyjj

Qwen3-8B-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-120.5tok/s446.1tok/s247msr_b1awwhkoo2v
chat-longmlx@0.31.3-103.3tok/s1,108.8tok/s2,838msr_b1awwhkoo2v
concurrent-decodemlx@0.31.3-114.3tok/sno datano datar_b1awwhkoo2v
agent-tracemlx@0.31.3-109.4tok/s1,109.1tok/s1,885msr_b1awwhkoo2v

Qwen3-0.6B-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-429.2tok/s1,185.2tok/s92.8msr_6rgao6ao735
chat-longmlx@0.31.3-334.3tok/s6,893.3tok/s457msr_6rgao6ao735
concurrent-decodemlx@0.31.3-368.7tok/sno datano datar_6rgao6ao735
agent-tracemlx@0.31.3-368.5tok/s8,617.7tok/s233msr_6rgao6ao735

Qwen3-Next-80B-A3B-Instruct-MLX-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.34bit80.34tok/s24.49tok/s4,493msr_1pl79r50ofy
chat-longmlx@0.31.34bit77.63tok/s1,608.6tok/s1,956msr_1pl79r50ofy
concurrent-decodemlx@0.31.34bit78.60tok/sno datano datar_1pl79r50ofy
agent-tracemlx@0.31.34bit78.41tok/s1,586.3tok/s1,318msr_1pl79r50ofy

qwen2.5-72b-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-16.31tok/s23.25tok/s5,635msr_5c80gthqlh6

llama-3.3-70b-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-16.78tok/s25.09tok/s5,420msr_sx3a4y9n-m4

stable-code-instruct-3b-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-192.5tok/s560.7tok/s226msr_y2_5y8oo97d

Yi-Coder-9B-Chat-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-103.5tok/s390.9tok/s307msr_3hvui9a1yuc

starcoder2-15b-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-64.16tok/s220.5tok/s490msr_wsxml_39dh_

granite-8b-code-instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-112.3tok/s525.7tok/s221msr_bue3bee0gw7

Codestral-22B-v0.1-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-47.49tok/s205.7tok/s559msr_79dvtag5fd_

DeepSeek-Coder-V2-Lite-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-168.3tok/s291.5tok/s449msr_l_v1-zq_qaz

Qwen2.5-Coder-32B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-34.48tok/s144.1tok/s909msr_721b4bls_oq

Qwen2.5-Coder-14B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-70.51tok/s306.1tok/s428msr_l36cijqxq4t

Qwen2.5-Coder-7B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-138.6tok/s539.6tok/s243msr_uoehjq0nvc0

gpt-oss-20b-MXFP4-Q4

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-152.7tok/s239.9tok/s692msr_3ijun8ltjnb

Qwen3-Coder-30B-A3B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-112.2tok/s204.0tok/s539msr_fpsca03u2o_

Qwen3-32B-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-34.41tok/s95.12tok/s1,156msr_anmmc80-aoq

Qwen2.5-32B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.34bit34.60tok/s141.9tok/s923msr_njgxtgyym1e

gemma-2-9b-it-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-89.45tok/s170.7tok/s691msr_iz137eqvuzy

Qwen2.5-14B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.34bit70.85tok/s301.7tok/s434msr_v4bq1sviz4o

phi-4-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-74.37tok/s255.0tok/s443msr_sqzp-0rdez-

Llama-3.1-8B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.3-130.2tok/s400.3tok/s340msr_v2pbc0rq2l4

Qwen2.5-7B-Instruct-4bit

WorkloadBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortmlx@0.31.34bit139.6tok/s190.0tok/s689msr_5r6rhiynenc

Community folklore on M3 Ultra (60-core GPU)

52 unverified claims extracted from Reddit/HN comments. Lower trust than signed runs above; every row links to the source.

  • communityconfidence 70%

    18.50tok/s Qwen3-Coder on M3 Ultra via mlx

    our signed data: M3 Ultra · Qwen3-Coder

    m3 ultra with lmstudio-community/Qwen3-Coder-480B-A35B-Instruct-MLX-6bit 256k context len 18.50 token/s 1000 tokens first token 12.44 s

    source: Reddit · u/EnvironmentalMath660 · 2025-07-24

  • communityconfidence 70%

    38.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    : - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - Deep reasoning with tool calling I built this to run OpenClaw locally on my Mac instead of paying for cloud APIs. Qwen3-Code…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    65.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    upstream had minimal test coverage. Benchmarks (Mac Studio M3 Ultra, 256GB): Qwen3-Coder-Next-6bit (80B MoE, 3B active): - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - De…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    38.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    : - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - Deep reasoning with tool calling I built this to run OpenClaw locally on my Mac instead of paying for cloud APIs. Qwen3-Code…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    65.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    upstream had minimal test coverage. Benchmarks (Mac Studio M3 Ultra, 256GB): Qwen3-Coder-Next-6bit (80B MoE, 3B active): - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - De…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    38.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    : - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - Deep reasoning with tool calling I built this to run OpenClaw locally on my Mac instead of paying for cloud APIs. Qwen3-Code…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    65.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    upstream had minimal test coverage. Benchmarks (Mac Studio M3 Ultra, 256GB): Qwen3-Coder-Next-6bit (80B MoE, 3B active): - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - De…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    38.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    : - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - Deep reasoning with tool calling I built this to run OpenClaw locally on my Mac instead of paying for cloud APIs. Qwen3-Code…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    65.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    upstream had minimal test coverage. Benchmarks (Mac Studio M3 Ultra, 256GB): Qwen3-Coder-Next-6bit (80B MoE, 3B active): - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - De…

    source: HN · u/raullen · 2026-02-26

  • communityconfidence 70%

    38.00tok/s Qwen3-Coder-Next on M3 Ultra via vllm

    our signed data: M3 Ultra · Qwen3-Coder-Next

    : - Decode: 65 tok/s - Prefill: 1090-1440 tok/s - TTFT (cache hit, 33K context): 0.3s MiniMax-M2.5-4bit (229B MoE): - Decode: 33-38 tok/s - Deep reasoning with tool calling I built this to run OpenClaw locally on my Mac instead of paying for cloud APIs. Qwen3-Code…

    source: HN · u/raullen · 2026-02-26

See all 52 claims for M3 Ultra (60-core GPU)

Models measured on M3 Ultra (60-core GPU)

Common questions about M3 Ultra (60-core GPU)

Direct Q&A drawn from the runs above: fastest LLM, supported model classes, backend rankings, quantization guidance.

Read the M3 Ultra (60-core GPU) FAQ →