Qwen 3.6 35B-A3B on RTX Spark: Which Surface Laptop Ultra Memory Config to Buy
Qwen 3.6 35B-A3B hits 89.2 tok/s on RTX Spark; the real choice is how much soldered memory the GPU can address.
By Mike Perry, Founder & Editor-in-Chief · Published 2026-10-23 · Updated 2026-10-23 · 19 min read
Qwen 3.6 35B-A3B runs at 89.2 tok/s on the Surface Laptop Ultra's RTX Spark. Which memory tier holds Q4, Q8 or BF16, with per-quant sizes and KV math.
Quick Answer
StorageReview measured Qwen 3.6 35B-A3B at 89.2 tok/s on the Surface Laptop Ultra's 20-core RTX Spark N1X, running Ollama at 64K context under a Codex CLI coding workload. Unsloth's Q4_K_M GGUF is 22.13 GB, so 32 GB is the smallest memory config that holds a 4-bit quant with context headroom. Q8_0 (36.90 GB) needs the 64 GB config.
Who this page is for
This page is for a buyer configuring a Surface Laptop Ultra, or another RTX Spark laptop, who has to choose a memory tier before checkout. Per StorageReview, the Surface ships with 24, 32, 48, 64 or 128 GB of LPDDR5X. The memory is soldered, so whichever tier you order is the ceiling for the life of the machine. You cannot add RAM later the way you can on a desktop.
The question has become practical. The Surface Laptop Ultra went on sale on October 16, 2026, and Tom's Hardware's review of the RTX Spark in the Surface Laptop Ultra says the platform "impresses in local AI". Qwen 3.6 35B-A3B is the model the published reviews keep using to show that, so this page sizes every memory tier against it.
If you plan to run something else, the same method applies. Take the GGUF file size of the quant you want, add the KV cache for your context length, and compare the total with the memory the GPU can actually address. That last number is not the same as the number on the spec sheet, as explained below.
Key takeaways
89.2 tok/s generation for Qwen 3.6 35B-A3B on the 20-core N1X, Ollama, 64K context, per StorageReview. The review does not state the quant beyond the default Ollama tag.
The GPU does not get all of the memory. StorageReview's 128 GB review unit shipped with a 64/64 firmware split and showed 62.5 GB usable by the GPU, with up to 96 GB allocatable.
Q4_K_M is 22.13 GB and Q8_0 is 36.90 GB in Unsloth's GGUF file listing. BF16 is two shards totalling 69.37 GB.
The KV cache is small for this model. Only 10 of its 40 layers use full attention, with 2 KV heads of dimension 256, per the model's config.json. That works out to about 20 KiB per token at FP16, or about 2.7 GB at 128K context.
Step 0: is the bottleneck memory capacity or memory bandwidth?
Two different limits decide whether a model runs well on a unified-memory laptop, and it helps to separate them before choosing a tier.
Capacity decides whether the model loads at all. Every weight in the file has to sit in GPU-addressable memory, plus the KV cache, plus the runtime's compute buffers. If the total does not fit, the runtime either refuses to load or spills to slower paths, and generation speed collapses.
Bandwidth decides how fast each token comes out once the model has loaded. To generate one token, the GPU has to read every weight that token uses. The RTX Spark laptop's memory is a 256-bit LPDDR5X-9400 bus with about 300 GB/s theoretical bandwidth, per StorageReview. Divide that by the bytes read per token and you get a hard ceiling on tok/s.
This is why a "35B" model runs faster than a "27B" one here. Qwen 3.6 35B-A3B is a mixture-of-experts model with 256 experts, of which 8 routed experts are active per token, per its config.json. About 3B parameters do work on each token. At Q4_K_M, that active share is roughly 22.13 GB × 3 ÷ 35, or about 1.9 GB read per token. 300 GB/s ÷ 1.9 GB gives a ceiling of about 158 tok/s. StorageReview's measured 89.2 tok/s is about 56% of that ceiling, which is in line with how MoE models usually land on bandwidth-bound hardware.
A dense 31B model reads all 31B parameters on every token. That is roughly ten times the bytes of a 3B-active MoE at the same quant, and the 11.98 tok/s Wccftech logged for Gemma 4 31B shows the effect. Wccftech did not state the quant, so this paragraph does not compute a ceiling for that row.
The practical rule follows from this. On RTX Spark, buy memory capacity to hold the model you want, and pick sparse MoE models if you want speed. Extra memory beyond what the model needs does not make it generate faster.
How much memory does each Qwen 3.6 35B-A3B quant need?
File sizes are from Unsloth's Qwen3.6-35B-A3B GGUF listing (Unsloth's "UD" dynamic quants, checked October 2026). The 8K and 32K columns add the FP16 KV cache computed from the model config: about 0.17 GB at 8K and 0.67 GB at 32K. They leave out runtime compute buffers, which llama.cpp prints at load time and which change with batch size. Treat the totals as a floor, not a target.
The column is labelled by GPU allocation, not by laptop memory tier, on purpose. The next section explains how those map.
Two smaller files are also worth knowing. UD-IQ4_XS is 17.73 GB and UD-IQ3_XXS is 13.21 GB in the same listing. Both are useful on configs where Q4_K_M will not quite fit.
Which Surface Laptop Ultra memory config runs which quant?
The memory tier on the order page is not what the GPU gets. On StorageReview's 128 GB review unit, firmware split the memory 64/64 and the GPU saw 62.5 GB usable, with up to 96 GB allocatable. That is 75% of the total as a ceiling and roughly half by default. StorageReview's Lenovo Pro 9n 15 review shows the same constraint on an 18-core N1X: its 12 GB GPU split was too small for gpt-oss 20B, which needs 12.8 GB, so that model was not run.
No reviewed source has confirmed the split on the 24, 32, 48 or 64 GB Surface configs. The table below assumes the 96-of-128 ceiling scales proportionally, which is an assumption. Check the allocation setting on your own unit before you download a 30 GB file.
Config
GPU ceiling if 75% scales
Right when
Not worth it when
24 GB
~18 GB
You run gpt-oss 20B, Phi-4-mini or Llama 3.1 8B, and accept UD-IQ3_XXS (13.21 GB) or UD-IQ4_XS (17.73 GB) for Qwen 3.6 35B-A3B
You want Q4_K_M or better. Raising the GPU share to fit 22 GB leaves Windows with very little
32 GB
~24 GB
You want Q4_K_M (22.13 GB) at 8K–32K context and nothing larger loaded at the same time
You also want a browser, IDE and Docker open, or plan to keep two models resident
48 GB
~36 GB
You want Q5_K_M or Q6_K (26.46–29.31 GB) with long context and room for Windows
You need Q8_0. At 36.90 GB it sits right at the assumed ceiling
64 GB
~48 GB
You want Q8_0 (36.90 GB) with a 128K context, or Q4 plus a second model
You only ever run 4-bit quants. 32 GB already does that
128 GB
62.5 GB default, up to 96 GB per StorageReview
You want BF16 (69.37 GB), or larger MoE models such as Nemotron 3.5 Bolt 74B, which Wccftech ran at 37.67 tok/s
Qwen 3.6 35B-A3B is the largest model you plan to run
For most buyers of this model the choice comes down to 32 or 64 GB. 32 GB runs the quant most people use. 64 GB runs the quant that is closest to the original weights, and leaves room for the rest of a developer's workload.
Measured tok/s on RTX Spark and GB10: every benchmark row on file
Three things stand out. First, the MoE rows (Qwen 3.6 35B-A3B, GLM-4.7-Flash, gpt-oss 20B, Gemma 4 26B-A4B) all land between about 50 and 90 tok/s, while the two dense 27B–31B rows sit at 12–26 tok/s. Second, runtime matters as much as hardware. gpt-oss 20B on GB10 ranges from 49.7 tok/s on Ollama to 82.74 tok/s on llama.cpp, so compare rows that share a runtime. Third, no published source yet has a Qwen 3.6 35B-A3B row on GB10. The nearest is Qwen3-Coder 30B-A3B at q8_0, a similar 3B-active MoE at a heavier quant.
Prefill vs generation
Two rates describe an LLM's speed, and they answer different questions.
Prefill (prompt processing) is how fast the model reads what you send it. StorageReview's RAG test on the Surface measured Phi-4-mini prefill at 6,955 tok/s with a p50 time to first token of 0.161 s. Prefill is compute-bound, not bandwidth-bound, because the GPU processes all prompt tokens in parallel. That is where Blackwell's tensor cores show up.
Generation (decode) is how fast new tokens come out, one at a time. It is the bandwidth-bound number from Step 0, and it is what you feel when you watch a chat reply scroll.
For a coding agent, prefill matters more than it looks. An agent loop re-sends a long context, including files, tool output and history, on every turn. At 6,955 tok/s, a 32K-token context would take under five seconds to read, though that rate was measured on a 3.8B model. A 3B-active MoE should prefill in a similar range, but StorageReview did not publish a prefill figure for Qwen 3.6 35B-A3B, so that is an expectation, not a measurement. For chat with short prompts, generation rate is the only number that matters.
How does context length change the memory budget?
For most models, long contexts are what break small memory configs. Qwen 3.6 35B-A3B is an exception, and the reason is its architecture.
Per the model's config.json, the model has 40 layers with full_attention_interval: 4. Only every fourth layer, 10 in total, is a full-attention layer that keeps a KV cache. The other 30 are linear-attention (Gated DeltaNet) layers that keep a fixed-size state that does not grow with context. Each full-attention layer has 2 KV heads with a head dimension of 256.
The KV math is: 10 layers × 2 KV heads × 256 dims × 2 (K and V) × 2 bytes (FP16) = 20,480 bytes per token.
Context
KV cache at FP16
KV cache at q8_0 (approx.)
Q4_K_M weights + FP16 KV
8K (8,192)
0.17 GB
~0.09 GB
22.3 GB
32K (32,768)
0.67 GB
~0.36 GB
22.8 GB
128K (131,072)
2.68 GB
~1.42 GB
24.8 GB
256K (262,144, the model maximum)
5.37 GB
~2.85 GB
27.5 GB
The q8_0 column assumes llama.cpp's q8_0 block format of about 8.5 bits per value. The 262,144-token maximum is the model's max_position_embeddings in the same config file.
On a 32 GB config with an assumed ~24 GB GPU ceiling, Q4_K_M at 8K–32K fits with little room to spare. At 128K with an FP16 cache, the 24.8 GB total crosses that ceiling before compute buffers are counted. That is the point where 32 GB stops working for Q4_K_M. You have three ways around it: quantize the KV cache to q8_0, drop to UD-Q4_K_S (20.89 GB) or UD-IQ4_XS (17.73 GB), or buy 48 GB. On 64 GB and up, context length does not decide anything for this model.
RTX Spark laptop vs DGX Spark vs Strix Halo vs RTX 5090 for this model
Machine
Memory
Memory bandwidth
Qwen 3.6 35B-A3B or nearest-MoE tok/s
Price tier
Microsoft Surface Laptop Ultra (RTX Spark N1X 20-core)
The Surface's 89.2 tok/s is above the two 128 GB mini-PC platforms, but the comparison is not like for like. The Surface row ran Ollama on the exact model at a default quant. The GB10 row ran a different 3B-active MoE at q8_0, which reads about 70% more bytes per token than a 4-bit file. The Strix Halo row ran the exact model at UD-Q4_K_XL on Vulkan. The bandwidth column is the fairer guide. All three unified-memory machines sit within about 17% of each other, between 256 and 300 GB/s.
The RTX 5090 is in a different class at roughly six times the bandwidth, but its 32 GB of VRAM is a hard wall. Q4_K_M through UD-Q6_K fit. Q8_0 at 36.90 GB does not.
Budget baseline: what the same model does on a 12 GB desktop card
If you do not need to carry the machine, a 12 GB desktop GPU can run Qwen 3.6 35B-A3B with its expert weights split between VRAM and system RAM. On an MSI Gaming GeForce RTX 3060 12GB-class card, cited runs land between about 20 and 39 tok/s depending on quant, offload settings and whether multi-token prediction pays off. InsiderLLM measured 38.9 tok/s at UD-Q4_K_M with 24 expert layers in RAM. The full breakdown, with flags, is in Qwen 3.6 35B-A3B on a 12GB GPU with llama.cpp MTP. That is less than half of the Surface's figure, on a desktop that needs 32 GB or more of system RAM to hold the offloaded experts. It is still a usable chat speed for a much smaller outlay.
Perf-per-dollar and perf-per-watt
These ratios use cited list prices and rated power, not street prices or measured wall draw. Street prices move every week, and the live price buttons on each product page carry the current figure.
Cited list prices used below: the Surface Laptop Ultra configuration StorageReview reviewed (20-core, 128 GB, 1 TB) at $5,899.99 on Microsoft's consumer store; the DGX Spark at its $3,999 launch price, since raised to $4,699 per IntuitionLabs; AMD's own Ryzen AI Halo Strix Halo box at $3,999 per TweakTown; and the RTX 5090 at its $1,999 launch price for the card alone, per TechPowerUp.
Rated power: the laptop N1X is rated 45–80 W for CPU and GPU combined, and the desktop N1X and GB10 are rated 140 W, per StorageReview. The Ryzen AI Max+ 395 has a configurable 45–120 W TDP per AMD. The RTX 5090's board power is 575 W per TechPowerUp.
Machine
tok/s used
tok/s per $1,000 of list price
tok/s per rated watt (upper bound)
Surface Laptop Ultra, 128 GB as reviewed
89.2
~15.1
~1.12 (80 W)
DGX Spark (GB10)
59.95 (nearest MoE)
~15.0 at launch, ~12.8 at the current price
~0.43 (140 W)
Strix Halo (AMD Ryzen AI Halo)
60.4
~15.1
~0.50 (120 W)
RTX 5090 (card only)
234.3 (nearest MoE)
~117 (excludes the host PC)
~0.41 (575 W)
Per dollar, the three unified-memory machines are close to even. Per watt, the laptop leads by a wide margin, because 80 W is its whole-system rating. The 89.2 tok/s figure came from a run that was not designed to measure power, so treat the watt column as a ratio of rated power, not a measured efficiency.
One caution belongs here. StorageReview reported that its Surface review unit lost power three times under an all-core OpenBLAS load at about 95 °C, and that a second unit failed the same way. The reviewers attribute it to power delivery or firmware protection rather than heat. LLM inference is a lighter CPU load than LU solves, but anyone planning multi-hour agent runs should watch for a firmware update.
Common pitfalls
Sizing to the spec-sheet tier. A 32 GB laptop does not give the GPU 32 GB. Size against the GPU allocation, and check the setting on your unit.
Comparing rows across runtimes. gpt-oss 20B on GB10 spans 49.7 to 82.74 tok/s across Ollama and llama.cpp in the table above. A runtime difference can look like a hardware difference.
Assuming Q8_0 fits 32 GB. The file alone is 36.90 GB.
Buying 128 GB for this one model. Qwen 3.6 35B-A3B at Q8_0 runs on 64 GB. 128 GB pays off only for BF16 or for larger models such as gpt-oss 120B and Nemotron 3.5 Bolt 74B.
Expecting dense models to scale like MoE. More memory lets a dense 31B load, but the 11.98 tok/s figure on the same chip will not change.
When NOT to buy a Surface Laptop Ultra for this
Skip it if the machine will never leave your desk. A 128 GB GB10 or Strix Halo mini PC covers every Qwen 3.6 quant up to BF16 with desktop cooling. An RTX 5090 desktop runs the 4-bit to 6-bit quants at roughly 2.6× the Surface's generation rate, using the nearest-MoE figure. Also skip it if your workflow depends on Linux-only CUDA tooling. The Surface runs Windows 11 on Arm, and the published laptop results came from native Arm64 builds of Ollama, llama.cpp and LM Studio.
Verdict matrix
Get the 32 GB config if you will run Qwen 3.6 35B-A3B at Q4_K_M or IQ4_XS with up to 32K context, and the laptop is mostly a single-model machine.
Get 64 GB if you want Q8_0 (36.90 GB), 128K contexts, or a second model loaded beside it. This is the safe choice for developers.
Get 128 GB if you want BF16 (69.37 GB) or models above about 60 GB, and you are willing to raise the GPU allocation toward the 96 GB StorageReview reported.
Get a DGX Spark-class box instead if you do not need portability. GB10 boxes such as the ASUS Ascent GX10 ship with 128 GB as standard, and Microsoft's Surface RTX Spark Dev Box (128 GB, from $5,999.99, shipping November 2026 per NewsBytes) is the same platform in a desktop chassis.
Get an RTX 5090 desktop instead if generation speed matters more than portability or capacity, and every model you run fits in 32 GB.
Recommended pick
For Qwen 3.6 35B-A3B, order the 64 GB Surface Laptop Ultra. Its deciding spec is GPU headroom. Q8_0 at 36.90 GB fits with a 128K context and room left for Windows and your tools, which 32 GB cannot offer, and 128 GB adds capacity this model does not use. If the budget stops at 32 GB, that config still runs Q4_K_M, the quant behind most published Qwen 3.6 results.
The Surface Laptop Ultra is not in the SpecPicks catalog yet. The nearest purchasable pair is a GB10 box against a Strix Halo box. Compare the ASUS Ascent GX10 and BOSGAME M5 side by side, with live prices from the retailer. Prices may vary.
Citations and sources
All sources accessed October 22–23, 2026.
StorageReview, Microsoft Surface Laptop Ultra for Business review (RTX Spark N1X): https://www.storagereview.com/review/microsoft-surface-laptop-ultra-for-business-review-rtx-spark-n1x
Wccftech, ASUS ProArt P16 RTX Spark laptop review: https://wccftech.com/review/asus-proart-p16-rtx-spark-laptop-review-nvidias-first-full-pc-platform/
Tom's Hardware, RTX Spark in the Surface Laptop Ultra: https://www.tomshardware.com/laptops/we-test-the-rtx-spark-superchip-in-microsofts-surface-laptop-ultra-nvidias-windows-on-arm-platform-impresses-in-local-ai-but-gaming-isnt-its-strong-suit
TweakTown, AMD Ryzen AI Halo launches at $3,999: https://www.tweaktown.com/news/112183/amds-ryzen-ai-halo-ai-mini-pc-launches-in-the-us-with-128gb-memory-and-a-dollars3999-price-tag/index.html
InsiderLLM, best way to run Qwen 3.6 35B MoE locally: https://insiderllm.com/guides/best-way-run-qwen-3-6-35b-moe-locally/
NewsBytes, Microsoft opens preorders for the Surface RTX Spark Dev Box: https://www.newsbytesapp.com/news/science/microsoft-opens-preorders-for-6000-surface-rtx-spark-dev-box/tldr
This piece is editorial synthesis based on publicly available information. No independent first-party benchmarking is reported.
🛒 Products mentioned in this article
Amazon & eBay listings, plus full specs and alternatives on each product page.
As an Amazon Associate, SpecPicks earns from qualifying purchases; we also earn on qualifying eBay purchases via the eBay Partner Network. Prices shown were last tracked at crawl time and may vary — check the listing for the current price.
📹 Watch a review
I'm still mad… but buy it anyway - RTX 3060 Review — Linus Tech Tips on YouTube
Frequently asked questions
Is the 24 GB Surface Laptop Ultra enough for Qwen 3.6 35B-A3B?
Only at aggressive quants, and with little context headroom. The model's Q4_K_M GGUF alone sits in the low-20 GB range per its Hugging Face file listing, and Windows plus the integrated GPU take a share of the unified memory too. A 24 GB buyer is realistically limited to Q3-class quants or smaller models such as gpt-oss 20B. 32 GB is the practical floor for Q4.
Why does a 35B model run faster than a 27B model on RTX Spark?
Qwen 3.6 35B-A3B is a mixture-of-experts model that activates roughly 3B parameters per token, so each generated token reads far less memory than a dense 27B or 31B model does. On a bandwidth-bound unified-memory machine that shows up directly: StorageReview measured 89.2 tok/s for 35B-A3B, while Wccftech measured dense Gemma 4 31B at 11.98 tok/s on the same N1X platform.
Does Qwen 3.6 35B-A3B run better on the Surface Laptop Ultra or a DGX Spark box?
They share NVIDIA's Grace-Blackwell design, but the GB10 boxes such as the ASUS Ascent GX10 ship with 128 GB as standard and are desktop-cooled, so they keep sustained clocks during long agent runs. The laptop's advantage is portability and Windows. Compare the per-run tables on /benchmarks/nvidia-rtx-spark-n1x-20-core and /benchmarks/nvidia-gb10-dgx-spark before you choose, since the runtimes differ between sources.
Which runtime should I use on an RTX Spark laptop: Ollama, LM Studio or llama.cpp?
Published N1X results span all three. StorageReview used Ollama and llama.cpp and Wccftech used LM Studio, and their gpt-oss 20B figures range from 58 to roughly 69 tok/s depending on the tool. Ollama is the simplest to set up on Windows on Arm. LM Studio exposes quant and context settings in a GUI. llama.cpp gives the most control over KV-cache quantization for long contexts.
Should I wait for the Surface RTX Spark Dev Box instead of buying the laptop?
If you never need to carry the machine, the Dev Box (from $5,999, shipping November 2026 per Microsoft's announcement) targets sustained desktop workloads. GB10 boxes such as the ASUS Ascent GX10 already ship with 128 GB. Buy the laptop when portability matters. For a desk-only build, a 128 GB GB10 or Strix Halo mini PC covers the same Qwen 3.6 quants without laptop thermal limits.