Symptom card

the server must report the B12X backend, not the DEEPGEMM fallback

vLLM's auto MoE backend skips the FlashInfer MXFP4 kernel shipped for DeepSeek-V4-Flash on GB10 and takes the DEEPGEMM fallback; pass --moe-backend flashinfer_b12x and confirm the B12X backend in the server log.

Platform:
DGX Spark (GB10)
Runtime:
vLLM
Published:
9/2/2026

What you see

vLLM comes up on the two-node DGX Spark pair, loads DeepSeek-V4-Flash-0731 and serves requests. No error, no warning. The image contains a FlashInfer MoE kernel built for this model family’s native MXFP4 experts on this GPU generation, and the default backend selection leaves it unused. The only visible trace is the backend name in the server log: the DEEPGEMM fallback rather than B12X. The decode gap shows up only once you run the same launch with the kernel forced.

From the report:

The runtime's auto backend selection does not pick it.
The check that the flag actually took effect is one log line: the server must report the B12X backend, not the DEEPGEMM fallback.

Where we saw it

The lab’s DGX Spark pair, GB10, two nodes over RoCE with tensor parallelism. Runtime: the vLLM image used by the published recipe; its digest and the model revision are pinned in the repository’s run manifest, and the report page prints neither. Model: DeepSeek-V4-Flash-0731; the benchmarked checkpoint is a community-quantized FP8 derivative pinned by revision. The official aligned checkpoint is listed in the repository but was not benchmarked. Single pass per configuration. Report published 2026-08-03; the run date is not stated on the page.

Cause

The runtime’s auto MoE backend selection does not pick the FlashInfer B12X kernel on this model-and-silicon pairing, so the server takes the DEEPGEMM path instead. The kernel is present in the image and is the faster one for exactly this combination; auto leaves it unused. The report does not say why. Nothing in the launch signals the miss, so every out-of-the-box deployment of this pairing runs the slower path, and nobody notices unless someone reads the log.

Fix

Force the backend on the vLLM command line:

--moe-backend flashinfer_b12x

Then read the server log. The line naming the MoE backend must say B12X, not DEEPGEMM. Without that check the flag can silently do nothing. The measured gain on client-side decode at the single-stream control is in the report; it is a single pass, and the report gives mean and median separately because the series holds one outlier.

This overrides the default; it does not change what auto picks. The source documents the override only.

Still open upstream?

Not tracked by us. The report names no upstream issue.

Evidence

Sources

This card documents one failure observed on the lab’s own hardware; any numbers live on the linked source page, not here.

← All symptom cards