Benchmarked every spec-decode method on Qwen3.6-27B across vLLM and SGLang (single RTX PRO 6000 Max-Q)

preview.redd.it/wluwwp6s4heh1.png Spent the last few days measuring speculative decoding on Qwen3.6-27B (dense, NVFP4) on one RTX PRO 6000 Max-Q, comparing vLLM and SGLang across MTP, DFlash, EAGLE3 and ngram. Same pinned client for every engine and 3 restart-samples per point, so the numbers should be comparable. Spec-Bench, greedy, batch 1, averaged over the 6 categories. Speedup vs each engine's own no-spec baseline: DFlash: best by a wide margin. ~3.3x on SGLang, ~2.5x on vLLM (and up to 4.6x on math_reasoning alone). MTP / NEXTN: ~2.2 to 2.8x, and it keeps climbing as you raise the draft depth. EAGLE3: ~1.9x, peaks at K=3 then goes flat. Exactly the opposite of NEXTN, which surprised me. ngram: barely worth the trouble, ~1.1 to 1.3x. Two things that ate a whole evening: EAGLE3 flat out won't load on vLLM for this model (the hf_hub head_dim validator rejects the head). SGLang only, and even there it needs a patched build. DFlash on SGLang crashed at first token until I noticed the DFlash sampler does a raw matmul on the lm_head, which the nvidia NVFP4 checkpoint quantizes, so the shapes blow up. A ~15 line patch to dequant the head once fixes it. Also had to cap max-running-requests or the mamba/GDN cache OOMs the pool.