
SGLang-Diffusion Serves Qwen-Image-2.1 on Day Zero: 2.75s Generations on One B200
- OrcaNEWOrca: OrcaCyber Zero 1.02026-09-17$3.00 / $5.00 per 1M tokens
- orcaNEWOrca: OrcaVerify Text 1.02026-09-16$2.00 / $0.00 per 1M tokens
- deepseekNEWDeepSeek: DeepSeek V4.1 Flash2026-09-1040Intelligence
- openaiOpenAI: GPT-6 Astra2026-09-0453Intelligence77Coding
- googleGoogle: Gemini 3.8 Flash2026-09-0241Intelligence76Coding
- qwenQwen: Qwen3.8 Max (0902)2026-09-0245Intelligence76Coding
- anthropicAnthropic: Claude Fable 5.12026-09-0153Intelligence82Coding
- AlibabaQwen: Qwen3.8 Flash2026-08-26$0.15 / $0.47 per 1M tokens
- z-aiZ.ai: GLM 5.3 Flash2026-08-2642Intelligence72Coding
- DeepSeekDeepSeek: DeepSeek V4 Flash Vision (Exp)2026-08-21$0.22 / $0.66 per 1M tokens
- z-aiZ.ai: GLM 5.32026-08-1845Intelligence75Coding
- obsidianQwen3.8 27B2026-08-1534Intelligence68Coding
- deepseekDeepSeek: DeepSeek V4 Pro 08132026-08-1236Intelligence69Coding
- grokSpaceXAI: Grok 4.62026-08-1244Intelligence77Coding
- metaMeta: Muse Spark 1.22026-08-0540Intelligence72Coding
- qwenQwen: Qwen3.8 Max2026-08-0345Intelligence76Coding
- deepseekDeepSeek: DeepSeek V4 Flash 07312026-07-3134Intelligence69Coding
- minimaxMiniMax: MiniMax-H32026-07-31minimax/minimax-h3
- qwenQwen: Qwen3.7 Flash2026-07-27$0.03 / $0.13 per 1M tokens
- orcaOrcaDub: OrcaDub 1.02026-07-27orca/dub
Qwen-Image-2.1 went public on 20 September 2026, and the SGLang-Diffusion team had a serving path waiting for it. The day-zero support covers the three jobs the model does — text-to-image generation, multi-image editing, and transparent RGBA output — and it comes with something rarer than a merged pull request: measured latency on named hardware, published with the configuration that produced it. On a single NVIDIA B200, 1024×1024 at 40 steps, the SGLang numbers land at 2.748 seconds for a generation and 3.358 seconds for an edit. The supporting pull request, sgl-project/sglang#39983, was opened on 17 September — three days before the weights were downloadable — which is why the numbers exist at all rather than being promised for later.
What "day zero" means here, and why the timing is the interesting part
Framework support is usually announced in the same breath as a model release and delivered weeks afterwards. The SGLang case runs the other way. The implementation was written against a checkpoint that was not yet public, which forces the authors to handle the real architecture instead of a specification sheet: the diffusion transformer, the 64-channel RGBA VAE, Qwen3-VL conditioning, multi-reference-image input, and RGBA in and out.
That is the reason to trust a latency table more than a capability list. A model that was never served has no measured numbers, and a number that arrives with its hardware, resolution, step count, and precision attached can be checked by anyone with the same card. The SGLang figures are labelled as a specific configuration, not as a general claim about the model.
The rest of the tooling landed in the same window. ComfyUI shipped native support, Diffusers merged QwenImage21Pipeline, vLLM-Omni added step-wise execution and FP8 quantization, and LightX2V added acceleration with AMD Radeon support through ROCm. The frameworks are the part of a release that decides whether anyone outside a lab can use it.

The numbers, and what they do not say
The SGLang work publishes per-request latency, not throughput. That distinction matters if you are sizing a service rather than running a demo: a single 2.7-second generation tells you the round trip, not how many concurrent users one card absorbs. The published configurations, all at 1024×1024 and 40 steps:
• B200, resident weights, FlashAttention — 2.748 s generation, 3.358 s editing, after a Q/K-norm fix and a LayerNorm change that each shaved a few percent.
• RTX PRO 6000 Blackwell, 96 GB, resident — 8.23 s generation, 9.85 s editing at a 40.1 GiB peak footprint; 10.28 s and 10.66 s with the diffusion transformer offloaded, dropping the peak to 26.1 GiB.
• DGX Spark, 1× GB10, eager, full VAE decode — 35.36 s generation, 42.23 s editing, 35.49 s and 42.21 s for the transparent variants. Those include PNG serialization. Breakable CUDA graphs produced identical pixels with no measurable speed benefit (35.96 s against 35.64 s), and batching and multi-Spark setups were not benchmarked at all.
• RTX 4090, 24 GB, layerwise offload, denoise only — 26.69 s at base BF16 with SDPA, 10.31 s with Cache-DiT (2.59×), 5.59 s with Cache-DiT plus the INT8 kernel set (4.77×), 4.74 s adding Sage attention (5.63×).
Two honest caveats ride on those rows. First, they are single-request latencies, and the 4090 row measures denoising only — the text encoder and VAE are outside the timer. Second, the SGLang authors frame the wider verification as functional, not evaluative: BF16 output is not bit-exact across different placements, and quantization or tensor parallelism changes the numbers. Faster and different is not the same as faster and better.

Why the transparent-output path is the one to watch
RGBA is where this model differs from the image endpoints most teams already call, and it is also where serving gets awkward. Qwen-Image-2.1 denoises in a latent space that has an alpha channel as a first-class component, through a 64-channel RGBA VAE with 16× spatial compression. Transparency is not a post-process you bolt on with a segmentation model; it is what the sampler emits.
Serving that well is harder than serving RGB. The output is larger, the VAE has more channels to decode, and the request carries an extra mode bit that the scheduler has to route. SGLang's verification covers exactly that surface — transparent PNG output, alpha retained across the full 0–255 range, and an RGBA PSNR of 60.69 dB in a single sample, with the FP8 configurations passing transparent generation as well. That is a correctness check rather than a quality benchmark, and the authors say so. It establishes that the alpha channel is real and survives quantization; it says nothing about whether the edges are clean on hair, fur, or glass.
The practical value of a serving stack with a tested transparency path is that it turns a three-tool pipeline into one call. Generation with alpha, editing inside an image that already has alpha, and pulling a subject out of an ordinary RGB photograph into a transparent layer all go through the same endpoint.
Where this fits if you are not running the GPU yourself
The awkward part of the Qwen-Image-2.1 release is that there is no hosted endpoint to call. The weights are a roughly 33 GB download, the generation component is a 7B diffusion transformer paired with a Qwen3-VL 8B text encoder, and the whole thing ships under the Qwen Research License Agreement dated 20 September 2026 — non-commercial use only, with commercial deployment requiring a separate licence from the vendor. So the SGLang recipe is not an alternative to an API. It is the API, and you are the operator.
That changes what a routing layer is for. OrcaRouter fronts 200+ models behind one OpenAI-compatible endpoint at provider list price with zero markup, automatic failover across providers, a routing DSL for composing fallbacks, and model fusion for panel-style calls — but it routes no Qwen-Image model of any version, and Qwen-Image-2.1 will never be a route you can call there. The realistic architecture is a split one: run Qwen-Image-2.1 on your own hardware through SGLang for the transparent and multi-reference work, and send everything else to hosted image models on one key. Our catalogue carries the OpenAI GPT-Image line, Google's Imagen 4 tiers and Gemini image previews, and xAI's Grok Imagine image endpoint, all at list price passed through, so a vendor price change on any of them is live on our side the same day.
What a deployment actually looks like
The SGLang documentation ships a cookbook for this model with per-GPU commands, and the recommended server invocation is a single line — sglang serve --model-path Qwen/Qwen-Image-2.1 --performance-mode speed. Text-to-image requests support opt-in dynamic batching; image-edit requests are handled as a separate path, and one request can return multiple outputs.
The configurations that have actually been verified are narrower than the compatibility matrix implies. H200, B200, RTX PRO 6000 96 GB, RTX 5090 and RTX 4090 are covered for 1024×1024 generation and editing at 40 steps, including their transparent variants, plus multi-GPU tensor parallelism, Ulysses and Ring attention, layerwise offload, parallel tiled VAE decode, Cache-DiT, CUDA graphs, and online and serialized FP8 quantization. Multi-GPU and NVFP4 recipes on the RTX PRO 6000 remain unverified, and multi-host RDMA and multi-rank disaggregated roles are uncovered. If your plan involves four cards and a fabric, you are ahead of the published evidence.

Two things to watch next. The first is whether anyone publishes throughput rather than latency — concurrency numbers are what turn a 2.7-second figure into a capacity plan. The second is the licence: there is no published price or term sheet for commercial use of Qwen-Image-2.1, and until there is, the non-commercial restriction is the whole story for anything that ships to a customer.
