Repository navigation
[XPU] Route block-quantized FP8 weights to the W8A8 kernel - #50787
Conversation
76af36f to
d55ac43
Compare
|
This pull request has merge conflicts that must be resolved before it can be |
|
Hi @chaojun-zhang please aware this pr: #49664 |
Thanks @zufangzhu , I added logic that if w8a8 is not enabled and the policy is block_quant, then I set it to true . |
d55ac43 to
0b4db0b
Compare
|
This pull request has merge conflicts that must be resolved before it can be |
0b4db0b to
f6ae33f
Compare
Signed-off-by: Chaojun Zhang <chaojun.zhang@intel.com>
f6ae33f to
eb35a94
Compare
|
/ci run |
|
✅ Triggered Buildkite CI #83523 for commit |
…ect#50787) Signed-off-by: Chaojun Zhang <chaojun.zhang@intel.com>
Purpose
This PR fixes an issue following #43645 and routes block-quantized weights to the W8A8 kernel unconditionally (no opt-in flag
--linear-backend xpurequired), while keeping the existing opt-in behavior for per-tensor/per-channel weights.Test Plan
vllm serve RedHatAI/Qwen3-32B-FP8-block --port 8072 \ --trust-remote-code --gpu-memory-util=0.9 \ --max-num-batched-tokens=8192 --max-model-len=6000 \ --no-enable-prefix-caching --block-size 64 -tp=2Test Result
Without this PR: server fails to start, worker crashes during
load_model:Traceback
Root cause: block-quantized weights were still routed to
CompressedTensorsW8A16Fp8by default (no--linear-backend xpuflag), whose kernel selection (XPUW8A16FP8LinearKernel.can_implement) explicitly rejects theBLOCKstrategy.With this PR: block-quant weights are routed to
CompressedTensorsW8A8Fp8/XPUFp8BlockScaledMMKernelinstead, which does support theBLOCKstrategy, and the model loads successfully.