independent research node · battlemage host cell
The lab behind the measurements.
Bare-metal Battlemage validation by Sergio Barrientos. The exact hardware, driver versions, and commands behind every published tok/s — run them yourself and compare against the raw results in the cookbook.
the actual test node · verified facts
One test cell. Every published number.
Host
AMD Ryzen 7 5700X3D
32 GB RAM · bare metal
OS
Ubuntu 26.04
Linux 6.12 · xe kernel driver · Level Zero 1.3.36
Power
150 W MoE · 180–230 W dense
Energy-counter draw, measured via xpu-smi
repro commands · run them on your own card
Discover the node. Reproduce the numbers.
b70-lab:~$ xpu-smi discovery
# Lists every Arc GPU the driver stack can see — device IDs, VRAM, PCI addresses
| Device ID | Device Name | PCI BDF | Visible VRAM | Role |
|---|---|---|---|---|
| 0 | Intel(R) Arc(TM) Pro B70 GPU | 0000:03:00.0 | 32,656 MiB GDDR6 | LLM inference (llama.cpp / vLLM) |
| 1 | Intel(R) Arc(TM) Pro B70 GPU | 0000:07:00.0 | 32,656 MiB GDDR6 | VideoGen node (ComfyUI, PyTorch XPU) |
# Driver: xe 6.12 · Level Zero loader 1.3.36 · 608 GB/s per card
b70-lab:~$ echo '{"method":"mtp","num_speculative_tokens":1}' > /tmp/spec.json
b70-lab:~$ sudo docker run -d --name b70vllm -p 8000:8000 \
--device /dev/dri --group-add $(stat -c "%g" /dev/dri/render* | head -n1) \
-v /dev/dri:/dev/dri:ro -v /path/to/model:/model:ro \
-v $PWD/patches/patch_xpu_int4_moe_v4.py:/patch_v4.py:ro \
-v $PWD/patches/patch_mtp_bf16_draft.py:/patch_mtp.py:ro \
-v /tmp/spec.json:/spec.json:ro \
-e VLLM_TARGET_DEVICE=xpu -e ZE_FLAT_DEVICE_HIERARCHY=COMPOSITE -e ZE_AFFINITY_MASK=0 \
--entrypoint bash intel/vllm:0.21.0-xpu-int4moe \
-lc 'python /patch_v4.py && python /patch_mtp.py && SPEC=$(cat /spec.json) && \
exec vllm serve /model --quantization gptq --dtype float16 \
--max-model-len 16384 --gpu-memory-utilization 0.92 --max-num-seqs 1 \
--language-model-only --speculative-config "$SPEC" \
--cudagraph-capture-sizes 1 2 4 8 16 32'
# The 126 t/s MoE path (Qwen3.6-35B-A3B, GPTQ-Int4 + MTP). Watch for:
# [B70] GDN XPU: spec decode active
# Full quick start incl. model link: README.md → "Quick start" in the cookbook repo
b70-lab:~$ ./llama-bench -m Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf \
-p 2048 -n 128 -ngl 99 -ncmoe 0 -fa 1 -ctk q8_0 -ctv q4_1 -b 8192 -ub 4096 -r 5
# llama.cpp SYCL (DPC++) build — the cells from the engine comparison table
| Model | Quant | Test (p2k/g128) | tok/s | Power |
|---|---|---|---|---|
| Qwen3.6-35B-A3B (MoE) | Q4_K_XL | tg128 decode | 69 | 150 W |
| Qwen3.6-35B-A3B (MoE) | Q4_K_XL | pp2048 prefill | 1,498 | 150 W |
| ThinkingCap-Qwen3.6-27B (dense) | Q4_K_M | tg128 decode | 23 | 230 W |
| ThinkingCap-Qwen3.6-27B (dense) | Q4_K_M | pp2048 prefill | 1,007 | 230 W |
# Source: results/engine-comparison-full-20260806.md in the cookbook repo — full p×g grids, vLLM MTP comparison, power sweeps