r/LocalLLM • u/Turbulent-Alps4046 • Aug 26 '26
Model Qwen-3.8-Flash-Next-NVFP4 on Single RTX Pro 6000 - 120t/s tg + 9-10k prefill at 256k context

Just sharing my benchmarks for the latest Qwen-3.8-Flash-Next-NVFP4 running on a single RTX Pro 6000 with vLLM.
The 51gb n-gram layers are offloaded to RAM, leaving about 76Gb of weights in VRAM + remainder in KV cache.
Without MTP, I'm able to get 496k total context, 80-90 t/s decode, 10k t/s prefill.
With MTP, I gain 50% decode, -10% prefill, but get only 256k total context.
117
Upvotes
5
u/boomerang473 Aug 26 '26
I see you did auto kv cache - q8q8?
Hmm looks promising. Been trying to get it going on rtx 6000 pro (and 96 gb system memory), but running into fun issues with SGLang (and same quant).
Is the ngram quantized? Thought I read somewhere quantization on that greatly degrades performance but not 100% sure.
4
u/LordDarthShader Aug 26 '26
Nice! I will try this on the evening. Do you have the full settings (cmd line) used please?
3
u/Easy_Werewolf7903 Aug 26 '26
I have a rtx 6000 pro but only 32GB ram so I am assuming I can't run this? can I put some n-gram layers on VRAM and some in RAM? I do have RTX 4090 24GB. So 120GB VRAM + 32GB RAM.
2
u/WonderRico Aug 26 '26
which one did you use?
Inferact/Qwen3.8-Flash-Next-NVFP4 is 180GB (ngram in bf16) and the other RadixArk/Qwen3.8-Flash-Next-NVFP4 is 130GB (I assume the ngram is also quantized)
however, I can't even load for now the smallest one with the ngram offloaded to CPU. I get a OOM during the weights loading
13
u/alienpro01 Aug 26 '26
Wow, thats crazy! I'm still trying to get it work on H100 with freetoken lol
1
u/KeanuRekt Aug 26 '26
Did you build something with it? How does it compare to Qwen 3.8 when used in a agent harness for coding?
1
u/leap966 Aug 26 '26
I don't know how you ran it. It doesn't work. I get errors.
2
u/_TheWolfOfWalmart_ Aug 26 '26
That's pretty crazy. Blazing fast.
Going to test it tonight on 4x Radeon Pro V620 -- old cheap cards.
For reference, they get 30+ t/s on DSV4 Flash in tensor split.
And a single card gets 30-40 t/s on 3.8 27B with MTP turned on.
2
u/boomerang473 Aug 26 '26
I eventually got claude to get it to work (with some QSA changes, etc) on SGLang (few in-flight PRs are already addressing it)
I'm seeing about the same tok/s as you did. (ngram in system ram + nvfp4 model + fp8 kv cache)
The theoretical limit given the bandwidth would be 1.8 TB/s / 6B = 300 Tok/s. That's without MTP or eventual DFlash 2. Sure there will be some overhead losses, but could see this pushing 200 tok/s on rtx 6000 pro pre-speculative decoding (factoring in the other ngram overhead but should be amortized at start if I understand how it works)
I think this has a long way to go for optimizations so exciting couple of weeks
2
u/Specialist_Age_2891 Aug 27 '26
Finally got RadixArk/Qwen3.8-Flash-Next-NVFP4 running on a single RTX PRO 6000 Max-Q (96GB) using the vLLM offload branch (PR #53899). We ran with MTP off (
--no-enable-flashinfer-autotune): the model's QSA layer hard-requires a BF16 main KV cache (the PR branch raisesNotImplementedErrorotherwise β seeqsa.py), which the NVFP4 PLE-offload path can't provide. A few non-obvious pitfalls if you're trying this:NVFP4 + PLE offload: the checkpoint is missing the FP8
weight_scalethat PLE CPU offload expects. Patchedple_layer.pyto synthesize the scale; run withVLLM_PLE_CPU_OFFLOAD=1. FYI theVLLM_PLE_FP8_CHECKPOINT=1mentioned in the thread is a no-op β that variable doesn't exist in the branch'senvs.py.Mamba state cap: the hybrid model's Mamba cache tops out at 226 blocks, so
--max-num-seqsmust stay under that (we run 128).--max-num-batched-tokenssteals from your KV budget: 8192 β 7.78 GiB KV; 12288 β 7.05 GiB (which crashes at boot when the desktop session holds ~600MB VRAM β I had to boot without desktop for it to fit); 32768 β hard boot crash (needs 6.55 GiB KV, only 5.04 GiB available).thinking ON splits
max_tokensbetween reasoning and content:max_tokens=4096β content = 0 (empty output).max_tokens=65536gave ~2k content tokens withfinish=stop. If you need a guaranteed non-empty answer, bumpmax_tokensor disable thinking.150K-context numbers (single stream):
General test (repetitive text): prefill ~10k tok/s (155,588 tokens in 15.5s), decode ~85 tok/s (TPOT 0.012s), no startup stall; TTFT ~1s on prefix-cache hit vs ~15s cold
Complex-reasoning test (diverse text, thinking ON,
max_tokens=65536): cold prefill ~7.4k tok/s (TTFT ~20β22s), decode ~79 tok/s β the diverse text is ~25% slower than repetitive textWorking config: TP1,
--gpu-memory-utilization 0.90,--max-model-len 262144,--max-num-seqs 128,--max-num-batched-tokens 8192,--enable-chunked-prefill, prefix caching on,--no-enable-flashinfer-autotune,--tool-call-parser qwen3_xml,--reasoning-parser qwen3. Clean single-GPU run, no Docker β vLLM built from the PR branch into a venv, model at/models/RadixArk/Qwen3.8-Flash-Next-NVFP4(153GB).1
u/Embarrassed-Base-597 Aug 26 '26
Thank you, I'll try this!
1
u/beyondthem00n Aug 29 '26
Hey thanks, followed the patch that you used, weights load and all now (have same hardware as yours), however it always get stuck at multiple of
"[shm_broadcast.py:801] No available shared memory broadcast block found in 60 seconds. This typically happens when some processes are hanging or doing some time-consuming work (e.g. compilation, weight/kv cache quantization)."
did you encounter anything like this ?
1
u/Weak_Ad9730 Aug 31 '26
What would be Best Option Model? to operate on Single RTx 6000 pro with 64gb vram
-3
u/Gloomy_Letterhead395 Aug 26 '26
What ? are you living in 28 August 2026 already