Skip to content
llm-speed

M3 Ultra LLM benchmark

On the M3 Ultra, single-user chat decode speeds by model size (one result per model) are: ~7–9B models at 116.8 tok/s (mlx; community results only: middle of 8 community results, not measured by llm-speed, source run, community), ~14–15B models at 70.5 tok/s (mlx; community results only: middle of 4 community results, not measured by llm-speed, source run, community), ~22–32B models at 34.5 tok/s (mlx; community results only: middle of 4 community results, not measured by llm-speed, source run, community) and ~70–72B models (too few results: 2 models, 0 by llm-speed, 2 community; no middle value). Short-chat workload, local runtimes, dense models only. Each model counts once (its standard run at default context), cold-load rows are left out, and a size class needs results from at least 3 models for a middle value. Quantization, backend and settings vary between submissions, so check each row in the tables below.

Specs vendor specs, not measured

Unified memory (max configuration)
512 GB
Memory bandwidth
819 GB/s
Launch date
2025-03-05

Sources: support.apple.com, apple.com. Vendor-published figures, accessed 2026-10-14.

512 GB is the historical maximum announced in 2025. Apple's model-specific support page checked September 7, 2026 lists 96 GB configurable to 256 GB. Check the actual machine: a family ceiling is not installed memory, current availability or a measured configuration. 2025 launch specification · Model-specific specification

Fastest single result in these submissions (any model size)

429.2 decode tok/s

Qwen3-0.6B-4bit via mlx. Workload: chat-short. Reported hardware: M3 Ultra (60-core GPU) + 96GB unified. see full run

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-112.5tok/s308.7tok/s356msr_o6wbmfegmde
chat-longnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-96.37tok/s1,885.2tok/s1,669msr_o6wbmfegmde
concurrent-decodenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-105.9tok/sno datano datar_o6wbmfegmde
agent-tracenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-101.3tok/s1,978.0tok/s1,057msr_o6wbmfegmde

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-116.8tok/s424.5tok/s247msr_yy_6jfx70jq
chat-longnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-100.5tok/s1,104.0tok/s2,846msr_yy_6jfx70jq
concurrent-decodenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-110.6tok/sno datano datar_yy_6jfx70jq
agent-tracenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-107.2tok/s1,108.9tok/s1,884msr_yy_6jfx70jq

Qwen3-4B-Instruct-2507-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-182.7tok/s636.6tok/s173msr_p2rpb_0iyjj
chat-longnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-147.0tok/s1,913.7tok/s1,644msr_p2rpb_0iyjj
concurrent-decodenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-168.4tok/sno datano datar_p2rpb_0iyjj
agent-tracenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-160.8tok/s1,913.6tok/s1,091msr_p2rpb_0iyjj

Qwen3-8B-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-120.5tok/s446.1tok/s247msr_b1awwhkoo2v
chat-longnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-103.3tok/s1,108.8tok/s2,838msr_b1awwhkoo2v
concurrent-decodenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-114.3tok/sno datano datar_b1awwhkoo2v
agent-tracenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-109.4tok/s1,109.1tok/s1,885msr_b1awwhkoo2v

Qwen3-0.6B-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-429.2tok/s1,185.2tok/s92.8msr_6rgao6ao735
chat-longnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-334.3tok/s6,893.3tok/s457msr_6rgao6ao735
concurrent-decodenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-368.7tok/sno datano datar_6rgao6ao735
agent-tracenot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-368.5tok/s8,617.7tok/s233msr_6rgao6ao735

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-short80B
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.34bit80.34tok/s24.49tok/s4,493msr_1pl79r50ofy
chat-long80B
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.34bit77.63tok/s1,608.6tok/s1,956msr_1pl79r50ofy
concurrent-decode80B
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.34bit78.60tok/sno datano datar_1pl79r50ofy
agent-trace80B
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.34bit78.41tok/s1,586.3tok/s1,318msr_1pl79r50ofy

qwen2.5-72b-Instruct-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-16.31tok/s23.25tok/s5,635msr_5c80gthqlh6

llama-3.3-70b-Instruct-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-16.78tok/s25.09tok/s5,420msr_sx3a4y9n-m4

stable-code-instruct-3b-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-192.5tok/s560.7tok/s226msr_y2_5y8oo97d

Yi-Coder-9B-Chat-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-103.5tok/s390.9tok/s307msr_3hvui9a1yuc

starcoder2-15b-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-64.16tok/s220.5tok/s490msr_wsxml_39dh_

granite-8b-code-instruct-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-112.3tok/s525.7tok/s221msr_bue3bee0gw7

Codestral-22B-v0.1-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-47.49tok/s205.7tok/s559msr_79dvtag5fd_

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-168.3tok/s291.5tok/s449msr_l_v1-zq_qaz

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-34.48tok/s144.1tok/s909msr_721b4bls_oq

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-70.51tok/s306.1tok/s428msr_l36cijqxq4t

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-138.6tok/s539.6tok/s243msr_uoehjq0nvc0

gpt-oss-20b-MXFP4-Q4

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-152.7tok/s239.9tok/s692msr_3ijun8ltjnb

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

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-112.2tok/s204.0tok/s539msr_fpsca03u2o_

Qwen3-32B-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-34.41tok/s95.12tok/s1,156msr_anmmc80-aoq

Qwen2.5-32B-Instruct-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-short32B
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.34bit34.60tok/s141.9tok/s923msr_njgxtgyym1e

gemma-2-9b-it-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-89.45tok/s170.7tok/s691msr_iz137eqvuzy

Qwen2.5-14B-Instruct-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-short14B
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.34bit70.85tok/s301.7tok/s434msr_v4bq1sviz4o

phi-4-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-74.37tok/s255.0tok/s443msr_sqzp-0rdez-

Llama-3.1-8B-Instruct-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-shortnot supplied
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.3-130.2tok/s400.3tok/s340msr_v2pbc0rq2l4

Qwen2.5-7B-Instruct-4bit

WorkloadModel sizeReported hardwareBackendQuantdecode tok/sprefill tok/sTTFTRun
chat-short7B
M3 Ultra (60-core GPU) + 96GB unified
mlx@0.31.34bit139.6tok/s190.0tok/s689msr_5r6rhiynenc

Community folklore on M3 Ultra

13 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%

    65.00tok/s — Qwen3-Coder-Next on M3 Ultra via vllm-mlx 6-bit

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

    “Benchmarks (Mac Studio M3 Ultra, 256GB): Qwen3-Coder-Next-6bit (80B MoE, 3B active): - Decode: 65 tok/s”

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

  • communityconfidence 60%

    18.43tok/s — DeepSeek R1 on M3 Ultra via mlx

    our signed data: M3 Ultra · DeepSeek R1

    “R1 671B Q4 - M3 Ultra 512GB with MLX🔥 Yes it works! First test, and I'm blown away! Prompt: "Create an amazing animation using p5js" * **18.43 tokens/sec** * Generates a p5js zero-shot, tested at video's end * Video in real-time, no acceleration! https://reddit.com/link/1j9vj…”

    source: Reddit · u/ifioravanti · 2025-03-12

  • communityconfidence 60%

    145.0tok/s — Llama 3.3 70b on M3 Ultra via lm-studio

    our signed data: M3 Ultra · Llama 3.3 70b

    “it so far. Prompt processing is not too bad for 70b models -- with about 7800 tokens of context, 8 bit MLX Llama 3.3 70b processes at about 145 t/s per second - and then in LM studio does not need to process for additional prompts, as it caches the context, assuming you're not ch…”

    source: Reddit · u/nomorebuttsplz · 2025-03-18

  • communityconfidence 60%

    51.47tok/s — GPT-OSS-120B on M3 Ultra via lm-studio

    our signed data: M3 Ultra · GPT-OSS-120B

    “-120B MLX I'm getting: Mac Studio M3 Ultra with 80 core GPU, 256GB RAM Application: LM Studio Reasoning effort set to High. I'm getting 51.47 tokens/second!”

    source: Reddit · u/EricTheRed123 · 2025-08-06

  • communityconfidence 60%

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

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

    “|Quant|RAM|Decode|Prefill|TTFT (cache hit)| |:-|:-|:-|:-|:-| |**4bit (mxfp4)**|\~60GB|33-38 tok/s|\~1500 tok/s|0.3s| |**8bit**|\~122GB|16-20 tok/s|\~300-550 tok/s|1-2s| 4-bit is the sweet spot for this model — decode speed is identical (memory bandwidth limited on MoE), but pref…”

    source: Reddit · u/Striking-Swim6702 · 2026-02-26

  • communityconfidence 60%

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

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

    “GB) # Qwen3.5-122B-A10B (MoE, 10B active params) |Quant|RAM|Decode|Prefill|TTFT (cache hit)| |:-|:-|:-|:-|:-| |**4bit (mxfp4)**|\~60GB|33-38 tok/s|\~1500 tok/s|0.3s| |**8bit**|\~122GB|16-20 tok/s|\~300-550 tok/s|1-2s| 4-bit is the sweet spot for this model — decode speed is id…”

    source: Reddit · u/Striking-Swim6702 · 2026-02-26

  • communityconfidence 60%

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

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

    “Qwen3-Coder-Next at 65 tok/s on M3 Ultra — with working tool calling for OpenClaw I've been running local coding agents on my Mac Studio (M3 Ultra 256GB) for the past”

    source: Reddit · u/Striking-Swim6702 · 2026-02-26

  • communityconfidence 60%

    58.70tok/s — Qwen3-Coder-Next on M3 Ultra via lm-studio

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

    “done<p>As of v0.2.0: Vision-Language Model support with the same tiered caching<p>Benchmarks on M3 Ultra 512GB with Qwen3-Coder-Next-8bit: 58.7 tok/s single request, 243 tok/s at 8x batch. Full results on the README.<p>It reuses LM Studio's model directory, so you don't need to r…”

    source: HN · u/jundot · 2026-03-04

  • communityconfidence 60%

    100.0tok/s — DeepSeek-R1 on M3 Ultra via ollama

    our signed data: M3 Ultra · DeepSeek-R1

    “Speed-wise, MLX's unified memory means zero CPU↔GPU copies. On an M3 Ultra: Qwen3.5-9B hits 108 tok/s (vs ~41 on Ollama), Qwen 3.6 35B does 100 tok/s with only 3B active params.<p>The full benchmark data is in the README. Happy to discuss the MLX performance characteristics or to…”

    source: HN · u/raullen · 2026-04-18

See all 13 claims for M3 Ultra →

Which models can an M3 Ultra run?

Fastest decode speed for each model on this hardware, from llm-speed's own runs and community-submitted runs. Each page lists every quant and runtime and labels which runs llm-speed measured.

Models measured on M3 Ultra

Common questions about M3 Ultra

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

Read the M3 Ultra FAQ →

Request a run on M3 Ultra

No measured run yet for these pairs. Vote for the one you want; the most-requested runs go first. See all requests.

0 votes

We never sell or share your email. Privacy

Needs a community run · Submit your own