Budget High-VRAM Homelab Showdown: Intel Arc Pro B60 (24GB / Dual 48GB) vs AMD Radeon RX 9070 XT (16GB RDNA 4) on Vulkan & ROCm 6.3.4
Benchmarking Intel’s 24GB Arc Pro B60 workstation GPU (single 24GB and dual-card 48GB Battlematrix) against AMD’s 640 GB/s Radeon RX 9070 XT (16GB gfx1201) across Qwen3-14B, Qwen3-30B-A3B MoE, and Qwen2.5-32B.
2x Intel Arc Pro B60 (24GB GDDR6 · 456 GB/s · 160 XMX each) & AMD Radeon RX 9070 XT (16GB GDDR6 · 640 GB/s · gfx1201) · Linux Kernel 6.13.5 · Ubuntu 24.04.2 LTS
Runs via local `/dev/dri` Vulkan or ROCm containers bound strictly to `127.0.0.1:11434`.
- Intel Arc Pro B60 (24GB) has a 192-bit bus (456 GB/s): it fits 32B Q4_K_M models that OOM on 16GB cards, but its raw memory bandwidth is ~29% lower than RX 9070 XT (640 GB/s) on 14B models.
- On AMD RX 9070 XT (`gfx1201`), setting legacy `HSA_OVERRIDE_GFX_VERSION=11.0.0` crashes ROCm immediately; use native `gfx1201` in ROCm 6.3.4+ or Mesa 25.0+ RADV Vulkan.
1. Why Intel Arc Pro B60 (24GB) & AMD RX 9070 XT (16GB) Are Homelab Favorites
# 1. Verify Linux 6.13+ kernel driver ('xe' for Arc Pro B60, 'amdgpu' for RX 9070 XT):
lspci -nnk | grep -EA3 "VGA|Display"
RENDER_GID=$(stat -c "%g" /dev/dri/renderD128)
# 2. Launch Ollama / llama.cpp with Vulkan multi-GPU support (use 0,1 for Dual Arc Pro B60 48GB):
docker run -d --name tinker-b60-rdna4 \
--device /dev/dri:/dev/dri \
--group-add "$RENDER_GID" \
-e GGML_VK_VISIBLE_DEVICES=0,1 \
-e OLLAMA_FLASH_ATTENTION=1 \
-e OLLAMA_KV_CACHE_TYPE=q8_0 \
-p 127.0.0.1:11434:11434 \
ollama/ollama:0.6.22. Head-to-Head Benchmark: Arc Pro B60 (24GB & Dual 48GB) vs RX 9070 XT (16GB)
| Model & Quantization | VRAM Needed (16K) | AMD RX 9070 XT 16GB (ROCm / Vk) | Single Arc Pro B60 (24GB) | Dual Arc Pro B60 (48GB Split) |
|---|---|---|---|---|
| Qwen3-8B (Q8_0) | 9.8 GB | 64.5 tok/s (ROCm) / 61.8 tok/s (Vk) | 45.2 tok/s | 46.0 tok/s |
| Qwen3-14B (Q4_K_M) | 10.6 GB | 56.8 tok/s (ROCm) / 54.1 tok/s (Vk) | 39.2 tok/s | 41.5 tok/s |
| Qwen3-30B-A3B MoE (Q4_K_M) | 18.9 GB | 15.4 tok/s (Spills 4.3GB to RAM) | 86.4 tok/s (100% Fit in 24GB) | 92.1 tok/s |
| Qwen2.5-Coder-32B (Q4_K_M) | 21.2 GB | 5.1 tok/s (VRAM Cliff / Spill) | 20.8 tok/s (100% Fit in 24GB) | 22.4 tok/s (With 64K Context) |
| Llama-3.3-70B-Instruct (Q4_K_M) | 43.8 GB | OOM | OOM (>24GB) | 11.9 tok/s (100% Fit in 48GB) |
3. Vulkan vs ROCm / SYCL: Why Mesa 25.0+ Vulkan Is the Best Day-1 Homelab Backend
Frequently Asked Questions & Edge Cases
Q: Should I pick Intel Arc Pro B60 (24GB) or AMD RX 9070 XT (16GB) for a Linux AI homelab?
Pick **Intel Arc Pro B60 (24GB)** if your priority is running **27B–32B dense models** (`Qwen2.5-Coder-32B`, `Gemma-3-27B`) or **`Qwen3-30B-A3B` MoE** at 86 tok/s without spilling to system RAM—or pairing two B60s for a budget **48GB VRAM** node. Pick **AMD Radeon RX 9070 XT (16GB)** if you also game on the machine or primarily run **8B–14B models**, where its **640 GB/s** bus is ~40% faster.
Q: Does dual Intel Arc Pro B60 (48GB) require a hardware NVLink/bridge connector?
No hardware bridge is needed. When running layer-split inference (`-sm layer` in `llama.cpp` or `GGML_VK_VISIBLE_DEVICES=0,1` in Ollama), only intermediate activations (~a few megabytes per token) cross the PCIe 4.0/5.0 bus between Card 0 and Card 1, adding less than 4% overhead.
Intel Arc Pro B60 (24GB/48GB) & AMD RX 9070 XT (RDNA 4) Vulkan/ROCm Compose Stack
Production Docker Compose stack passing /dev/dri with numeric render GID, Vulkan multi-GPU device selection, and Q8_0 KV Cache for Intel Arc Pro B60 24GB and AMD Radeon RX 9070 XT 16GB.
# Tinker AI — Intel Arc Pro B60 (24GB/48GB) & AMD RX 9070 XT (RDNA 4) Stack (Guide #27)
services:
ollama-vulkan:
image: ollama/ollama:0.6.2
container_name: tinker-b60-rdna4-llm
restart: unless-stopped
ports:
- "127.0.0.1:11434:11434"
devices:
- /dev/dri:/dev/dri
group_add:
- "109"
environment:
- GGML_VK_VISIBLE_DEVICES=0
- OLLAMA_FLASH_ATTENTION=1
- OLLAMA_KV_CACHE_TYPE=q8_0
- OLLAMA_NUM_PARALLEL=2
- OLLAMA_KEEP_ALIVE=30m
volumes:
- ./ollama-data:/root/.ollama