howtospark
models / qwen3-6-35b-a3b

Qwen/Qwen3.6-35B-A3B
36B params~4.7B activebfloat16MoE 256×8GQA 16:2262K ctxmultimodalapache-2.0
Sparks
~83 GB
~65 GB
~47 GB
~29 GB
~21 GB
~22 GB
~21 GB
110 usable
REAP dialno pruning · 256 experts
Spec decode
Context33K / 262KKV
On the Sparks — 1× · 2-bit experts + NVFP4 dense · 33K ctx · FP16 KV~1.1M ctx fits usable
spark
89 GB free
110 usable
21* / 110 GB
19% of usable
Expert planesDense weightsKV cacheActivations + graphsOS reserve

* segment sizes marked with an asterisk are estimates pending a measured run

Estimated per-node footprint, weights + KV sharded across the Spark (tensor parallel). Overhead ~8 GB/node; KV at FP16.

layer map
40 layerslinear attention×30full attention×10
in
out

one MoE layer · 256 experts, 8 fire per token

each expert ≈ 3M params

resident: 40 MoE layers × 256 experts × 3M 32.2B

active/token: 40 × 8 × 3M 1.0B experts

+ 3.7B always-on dense (attention, embeddings, shared stack) = 4.7B active

Eval scores (compare all)

Reported

85.2MMLU-Pro
86GPQA Diamond
80.4LiveCodeBench
73.4SWE-bench Verified
67.2SWE-bench Multilingual
49.5SWE-bench Pro
51.5Terminal-Bench 2.1
68.7Claw-Eval
50Claw-Eval (Pass^3)
28.7SkillsBench
52.6QwenClawBench
29.4NL2Repo
1397QwenWebBench
67.2τ³-Bench
35.6VITA-Bench
25.9DeepPlanning
26.9Toolathlon Verified
37MCPMark
62.8MCP-Atlas
60.1WideSearch
93.3MMLU-Redux
64.7SuperGPQA
90C-Eval
21.4HLE
90.7HMMT Feb 2025
89.1HMMT Nov 2025
83.6HMMT 2026
78.9IMOAnswerBench
92.7AIME 2026
81.7MMMU
75.3MMMU-Pro
86.4MathVista (mini)
34.4ZeroBench (sub)
85.3RealWorldQA
92.8MMBench EN-DEV v1.1
58.9SimpleVQA
69.8HallusionBench
89.9OmniDocBench 1.5
78CharXiv (RQ)
81.9CC-OCR
92.7AI2D
92RefCOCO (avg)
50.8ODinW13
84.3EmbSpatialBench
64.3RefSpatialBench
86.6Video-MME (w/ subs)
82.5Video-MME (w/o subs)
83.7VideoMMMU
86.2MLVU
74.6MVBench
71.4LVBench
42.76KAT-Code-Bench
92.21PinchBench
37.53SciCode

Recipes (all recipes)

Worked deployments that run this model on DGX Spark — each shows how it fills each node's unified memory.

36*
1
fast256K ctx106.5 tok/s

Qwen3.6 35B-A3B NVFP4 (Unsloth Fast)

Serve the full 262,144-token context of Qwen3.6 35B-A3B on ONE DGX Spark at 106 tok/s single-stream, using the checkpoint's own MTP head for speculative decode at k=3 — a 57% gain over the same config with no draft. Nothing needs patching and nothing is tight: the whole working set is 36 of 114 usable GiB.

via unsloth/Qwen3.6-35B-A3B-NVFP4-Fast
57*
FP8quantization256K ctx38.27 tok/s

Qwen3.6 35B-A3B — FP8

Qwen's own FP8 build of Qwen3.6 35B-A3B serves the full 262,144-token context on one DGX Spark in about 41 GiB and, unlike the NVFP4A16 build, it gets a real FP8 kernel path — vLLM picks the TRITON FP8 MoE backend, not the MARLIN fallback. It still decodes slower: 38.3 tok/s against 42.6 for NVFP4A16 and 106.5 for Unsloth's NVFP4-Fast. The reason is bytes, not kernels — the FP8 export carries 30.1 GiB of expert planes against roughly 17.5 — and like every official Qwen3.6 export it ships no MTP head.

via Qwen/Qwen3.6-35B-A3B-FP8
38*
NVFP4quantization256K ctx42.6 tok/s

Qwen3.6 35B-A3B — NVIDIA NVFP4

NVIDIA's official NVFP4 build of Qwen3.6 35B-A3B serves the full 262,144-token context on one DGX Spark — but it decodes at 42.6 tok/s against 106.5 for Unsloth's NVFP4-Fast build of the same base model. Two structural reasons, both measured here: it is weight-only NVFP4, so the FP4 tensor-core MoE kernels refuse it and vLLM falls back to MARLIN; and the export ships without the MTP head, so it cannot speculative-decode at all.

via nvidia/Qwen3.6-35B-A3B-NVFP4
Optimize
Verdict

36B params, ~72 GB at bfloat16 — fits on one Spark as-is.

Make it fit

Get the weights (and headroom for KV) inside the 128 GB pool — the hard gate.

Lossless compression

BF16 weights entropy-code ~30% smaller bit-exact — smaller downloads and less bandwidth per token, no quality question at all.

Make it fast

Once it fits: fewer bytes per token and fewer decode steps against 273 GB/s.

Add a speculative decoder

Decode is bandwidth-bound at ~28.8 tok/s ceiling; a trained EAGLE-style draft multiplies tokens per weight-read.

Prune experts for speed

Fewer experts ⇒ smaller working set ⇒ better cache/page behavior, even when it already fits.

Tame the KV cache

At 262144 tokens the KV cache alone is ~21 GB at FP16; quantize or evict.

Make it yours

Change what the model does — adapt, edit, or steer it — independent of size.

Fine-tune it

LoRA/QLoRA adapts behavior on one Spark without touching the base weights.