Vulkan Backend Outperforms ROCm on AMD Radeon 8060S for Llama.cpp
Patch your llama.cpp build to enable the Vulkan backend (-DGGML_VULKAN=ON) and run with -dev Vulkan0 for faster token generation on RDNA3.5 GPUs.
Patch your llama.cpp build to enable the Vulkan backend and run with -dev Vulkan0 for faster inference on RDNA3.5 GPUs.
Summary
A benchmark was run on an AMD Radeon 8060S Strix Halo using 64GB unified VRAM, Arch Linux, ROCm 7.2.2, and the Mesa RADV Vulkan driver. The Qwen3.6-35B-A3B model (MoE, Q6_K quantized, ~30 GB) was compiled with both ROCm and Vulkan backends via the flags -DGGML_HIP=ON -DGGML_VULKAN=ON. Token generation rates were 841 tokens/sec (42.3 %) with ROCm0 and 867 tokens/sec (51.2 %) with Vulkan0, giving Vulkan a ~21 % speed advantage and a lower standard deviation (0.5 % vs 1.8 %). Prompt processing times were roughly equal between the two backends. The binary was built to include both backends, and running with -dev Vulkan0 produced the best results for this workload. ROCm appears to fall back to slower code paths for certain operations on RDNA3.5 GPUs, which explains the performance gap. The results suggest that developers targeting similar hardware should prefer the Vulkan backend for Llama.cpp inference.
Key changes
- Vulkan backend outperforms ROCm by ~21% tokens/sec on AMD 8060S
- Vulkan shows lower variance (0.5% vs 1.8% std dev)
- ROCm falls back to slower code paths on RDNA3.5
- Build flags: -DGGML_HIP=ON -DGGML_VULKAN=ON
- Model Qwen3.6-35B-A3B MoE quantized Q6_K ~30 GB
- Hardware: 64GB unified VRAM
- Arch Linux with ROCm 7.2.2
- Mesa RADV Vulkan driver