vllm: alt-stack community recipe for Qwen3.8-27B-FP8 on 2x Arc Pro B70 (vLLM 0.27.2rc1, #53059-lineage scheduler gate, 0.1.14.dev544 kernels) — DRAFT, pending week-long soak - #693
Conversation
…LLM 0.27.2rc1, ptr683, pending soak) Adds a community alt-recipe directory describing an alternative runtime assembly for Qwen3.8-27B block-FP8 on 2x Arc Pro B70: - vLLM 0.27.2rc1.dev77+gac7509e2b.xpu / torch 2.13.0+xpu fork point - vllm-xpu-kernels 0.1.14.dev544 (upstream intel#544, intel#552) rebuilt package - per-request prefill/decode classification in _is_uniform_decode (regenerated gpu_model_runner_53059.diff + RED/GREEN test) - Mamba pointer-metadata high-bit fix regenerating intel#677/intel#683 content against this fork point, with the upstream regression test Includes a matched A/A pre/post comparison (8,063 prompt tokens -> 589 output tokens, identical outputs, verified cold-cache and single-request isolation per request) showing no measurable performance change from the pointer patch, plus a production-identical launch recipe. STATUS: DRAFT — pending a week-long live-traffic soak test; soak has NOT completed. Not evidence of stability until un-drafted. Signed-off-by: Dominick Pescetto <dominick253@gmail.com>
|
I will definiitely test this! I am just delving into the insane memory utilization of vLLM, isn't i fair to assume that 64GB SYSTEM RAM should be enough, i mean the model is going into VRAM right :) But regardless, I will test this for sure man <3 Started building the docker image of this pr branch |
I understand your frustration. Still in the early days compared to Nvidia stack. But the performance is there most definitely and the price per GB is un matched. I would say maybe make sure to set the offload flag to 0 instead of leaving it out? Not sure. Personally I've uses all my Astra useage and heavily lean on the GitHub repo Intel b70 optimization lab. Please point your AI to that repo and find a good recipe there. They do great work for the recipes themselves. This repo is more for the inference stack itself. Trust me once you get it setup right it'll be worth the hassle. |
I alreay got a good feel for the potential, but on the sergiioB stuff which absolutely flies on a single stream but on crashes on a double stream even in TP=2. So for me personally it's just a matter of having to buy more CPU RAM vs. something that should be solved in software :) It's hard to tell at times, but i dont regret these two B70's at all, they are good!! I will investigate the offload flag for sure, it sounds like a potential game changer! |
|
Thanks for the detailed writeup and for including What we tested: whether Setup:
Result: still corrupted. Repeated raw For comparison, on the unmodified 0.26.0-b2 image, Takeaway (happy to be corrected): on 0.26.0-b2's own kernel stack, the |
Alt-stack community recipe: Qwen3.8-27B-FP8 on 2x Arc Pro B70 (vLLM 0.27.2rc1 fork)
DRAFT / EXPERIMENTAL — supersets intel/llm-scaler-vllm:0.26.0-b2 as a community-provided alternative runtime assembly. Pending a week-long live-traffic soak test; soak has NOT completed. Not evidence of stability until this PR is un-drafted with soak results.
This PR does not replace Intel's packaged images and does not re-submit the #677/#683 pointer fix (already merged on main). It contributes, under
vllm/community/alt-recipes/qwen38-27b-fp8-r272/:A documented runtime built from vLLM 0.27.2rc1.dev77+gac7509e2b.xpu / torch 2.13.0+xpu — a newer fork point than 0.26.0-b2 (0.26.1.dev0 / torch 2.12.0) — with
mamba_utilsunsigned->signed pointer reinterpretation) regenerated as a standalone verified diff against this fork point, plus its upstream regression test;_is_uniform_decode(shape-alias prefill batches no longer dispatch to the uniform-decode path — upstream vllm-project#53059 lineage, vllm-project#53051), asgpu_model_runner_53059.diff+ RED/GREEN test;A production-identical launch script (
launcher.sh), captured live and reduced (no LAN IPs, no paths outside the recipe, no secrets), full env list anddocker runflags included.A matched A/A direct speed comparison (pointer-patch vs no-pointer-patch) at fixed prompt bytes (8063→589 tokens), seed, sampling, reasoning effort, verified
cached_tokens=0, one-request-verified concurrency, and identical output hashes across both arms:Why the fork matters: the 0.26.x fork lacks the #53059-lineage scheduler fix. We recorded deterministic first-token corruption from the 0.26.0-b2 image with this checkpoint on 2026-09-08 across MTP on/off, f16/bf16 SSM cache, and explicit/auto FP8 combinations. This PR does not re-run that evaluation; it is documented so maintainers can reproduce independently if desired.
Explicit qualification table with PASS/NOT-Run entries. Explicitly NOT COLLECTED: MTP acceptance-rate study, vision qualification, matched counting/capitals probes. Explicitly pending: 168-hour live-traffic soak with an automated corruption-watcher client; the soak hasn't started accumulating under this exact image tag yet (paused deliberately for the isolated A/A run, contributing to nothing yet).
Why a draft
The 168h soak client (a separate stdlib streaming recorder, not a giant benchmark) has not completed against this exact image. Everything here is reproducible now, but nothing should be interpreted as "this image is production-stable" until the soak exits clean. Drafting keeps upstream reviewers Pastoroo to review methodology without reading it as a readiness claim.
Test plan
!!!!!-detector + degenerate-output hashes) on theptr683image; expect 0 incidents across the 168h window when run continuously, plus daily health and known-answer (17*23=391) probes.launcher.sh+ patches in this directory.Signed-off-by: Dominick Pescetto dominick253@gmail.com (dominick253)