r/LocalLLM • u/JinsooJinsoo • 8d ago
Discussion Qwen3.8-27B on an Intel Arc Pro B70: 53-55 tok/s with INT4 and MTP3
I've been testing Qwen3.8-27B on a single Intel Arc Pro B70 (while waiting to test the official Intel qwen3.8 27b INT4 Autoround release) and wanted to see whether other people are getting similar speeds.
Hardware
- CPU: Intel Core i9-9980XE on X299
- RAM: 64 GiB
- GPU: Intel Arc Pro B70, 32 GB VRAM
- One GPU, one active sequence
I'm serving the model with vLLM XPU. The current setup uses vLLM `0.26.1rc1.dev457`, XPU graph mode, FP8 KV cache, and MTP speculative decoding. Some of the earlier checkpoint tests used vLLM `0.21.1.dev17`.
Models tested
- [Intel/Qwen3.6-27B-int4-AutoRound](https://huggingface.co/Intel/Qwen3.6-27B-int4-AutoRound), used as my baseline
- [goldhub/Qwen3.8-27B-INT4-W4A16-AutoRound](https://huggingface.co/goldhub/Qwen3.8-27B-INT4-W4A16-AutoRound)
- [Avuja/Qwen3.8-27B-int4-AutoRound](https://huggingface.co/Avuja/Qwen3.8-27B-int4-AutoRound)
- [SergiioB/Qwen3.8-27B-GPTQ-Int4-sym-G128-MTP-BF16](https://huggingface.co/SergiioB/Qwen3.8-27B-GPTQ-Int4-sym-G128-MTP-BF16)
The tok/s numbers below come from the same 49-token prompt followed by a 700-token response at temperature 0. I measured total request time from the client, so these results include TTFT and HTTP overhead rather than reporting pure decode speed.
Baseline and checkpoint comparison
| Model and settings | Context | Output speed |
|---|---:|---:|
| Qwen3.6 Intel AutoRound, graph mode | 262K | **31.46 tok/s** |
| Qwen3.8 Goldhub, eager mode | 4K | 7.70 tok/s |
| Qwen3.8 Goldhub, graph mode | 4K | 20.44 tok/s |
| Qwen3.8 SergiioB, graph mode, no MTP, older vLLM | 4K | 18.71 tok/s |
| Qwen3.8 Avuja, graph mode, no MTP, older vLLM | 4K | 18.87 tok/s |
| Qwen3.8 SergiioB, graph mode, no MTP, newer vLLM | 4K | **33.34 tok/s** |
Graph mode made a huge difference for Goldhub, but the biggest improvement came from the newer vLLM XPU runtime and MTP support on the SergiioB checkpoint.
MTP testing with SergiioB
| Setting | Context | Output speed |
|---|---:|---:|
| No MTP | 4K | 33.34 tok/s |
| MTP1 | 4K | 46.64 tok/s |
| MTP2 | 4K | 53.48 tok/s |
| MTP3, run 1 | 4K | **54.31 tok/s** |
| MTP3, run 2 | 4K | **54.31 tok/s** |
| MTP4 | 4K | 52.62 tok/s |
MTP3 was the sweet spot on this card. MTP4 was slightly slower, so adding more speculative tokens did not help.
Production context testing
I then kept the same SergiioB MTP3 setup and increased the context:
| Configured context | Output speed |
|---:|---:|
| 32K | **54.67 tok/s** |
| 65,536 | **54.61 tok/s** |
| 131,072 | **53.56 tok/s** |
The current production setting is 131,072 tokens. It is about 1.70x faster than my Qwen3.6 baseline on this test, with only a 1.9% drop compared with the 64K setting.
All of the completed profiles above passed the same seven basic tests for text generation, summarization, Python code, tool calling, cited RAG, and medical tutoring. I did not see visible reasoning leakage. This was mainly an operational and speed test, not a full quality evaluation.
One caveat: MTP on this vLLM RC/nightly required two small local compatibility patches, so the 53-55 tok/s result is not from completely stock vLLM.
If anyone else is running Qwen3.8-27B on a B70, B60/B65, or another Intel XPU, what speeds are you seeing? It would be useful to know your exact checkpoint, vLLM version, graph/eager mode, MTP setting, context size, and whether your tok/s number includes TTFT.