Skip to main content

How to run Qwen 3 14B on Arc B580

Exact commands, expected tok/s, VRAM math for this specific combination.

Fits natively — step-by-step Ollama and llama.cpp setup plus real tok/s numbers for Qwen 3 14B on Arc B580.

How to run Qwen 3 14B on Arc B580

Which models fit on an Arc B580?

Dense 12-14B models need 7.3–9.1 GB for their Q4 weights; on the Arc B580, the weights and a usable context window both fit. SpecPicks tracks 4 community runs of that size on this card, median 35 tok/s. Arc B580 carries 12 GB of VRAM. The weights column is the range of real Q4_K_M files on Hugging Face for the models in each size class (about 0.6 GB per billion parameters), and the runtime plus a usable context window wants about 2 GB on top; every tokens-per-second figure is a median over community-reported Q4 runs SpecPicks tracks for this card, with the run count and the source beside it.

Showing the model sizes this article covers and the band either side. Every size from 3B to 70B+, for every card SpecPicks tracks, is in the local-LLM GPU table.

Model size Weights at Q4 Fits in 12 GB? Measured Left for context Source
7-9B (Llama 3.1 8B, Qwen 3 8B)The mainstream local model. An 8 GB card fits it; a 12 GB card fits it with real context. 4.4–5.8 GB Fitsweights and a usable context window 41 tok/s11 runs · 9 sources ~6 GBfor runtime and KV cache llama.cpp GitHub Discussions
12-14B (Qwen 3 14B, Phi-4)Where 8 GB stops being enough. 12 GB is the smallest card that holds it with a usable context window. 7.3–9.1 GB Fitsweights and a usable context window 35 tok/s4 runs · 4 sources ~2 GBfor runtime and KV cache llama.cpp GitHub Discussions
20-27B (Gemma 3 27B, Mistral Small)A 27B Q4_K_M file (about 16.7 GB) is more than a 16 GB card holds, so 16 GB means a Q3 quant or partial CPU offload; a 24B loads with a short context. 20 GB holds the class with a usable context window, 24 GB with a long one. 14.3–16.7 GB Nospills to system RAM — system-RAM bandwidth sets the speed — none —

Every Arc B580 benchmark run, with its source → GPU picks for local LLM — the same table across every card we track How we source these numbers

Quick answer. Qwen 3 14B fits comfortably on Intel's Arc B580 — q4_K_M is about 8.5 GB of weights, leaving ~3 GB of the card's 12 GB GDDR6 for KV cache and activations. With IPEX-LLM (Intel's PyTorch extension for LLM workloads) and a recent llama.cpp Vulkan/SYCL build, you'll see 45–75 tokens/sec generation at 4K context, no CPU offload needed. The Arc B580 is the cheapest path to a fully-VRAM-resident 14B-class model in 2026 — well under half the price of a comparable NVIDIA card.

Why the Arc B580 is the sweet-spot card for 14B models

Intel's Arc B580 ("Battlemage") shipped in December 2024 at $249 MSRP: 20 Xe2 cores, 12 GB of GDDR6 on a 192-bit bus (~456 GB/s memory bandwidth), 190 W TBP, PCIe 4.0 x8. It's not as fast as an RTX 4070 for gaming, but for LLM inference per dollar, it's currently unbeaten. The key reasons:

  • 12 GB VRAM at $249 — the cheapest 12 GB card on the market.
  • Battlemage XMX matrix engines — competitive int8/int4 throughput vs Ampere generation.
  • First-class Vulkan + SYCL support in llama.cpp — no driver kernels to compile.
  • IPEX-LLM 2.7+ ships GGUF + Ollama compatibility for one-line install.

Qwen 3 14B is Alibaba's mid-size dense model — 40 layers, 8K native context (extends to 128K via YaRN), Apache-2.0 license. Its q4_K_M GGUF is ~8.5 GB. That's the perfect size: leaves headroom on a 12 GB card for 8K-16K context with fp16 KV cache or 32K+ with q8_0 KV cache.

VRAM math — full GPU residency

Each of Qwen 3 14B's 40 layers at q4_K_M is ~185 MB. Full memory budget at 4K context, fp16 KV:

ItemVRAM
Embeddings + output head0.7 GB
All 40 transformer layers on GPU7.4 GB
KV cache, 4K ctx, fp160.85 GB
Activation + Vulkan/SYCL overhead0.9 GB
Display compositor (if same card)0.3 GB
Total~10.2 GB

That's ~1.8 GB of headroom. You can comfortably push the context to 16K (~3.4 GB KV cache total), or quantize the KV cache and go to 64K+. Critically, nothing offloads to the CPU. Generation speed is bandwidth-bound by the B580's 456 GB/s and the Xe2 matrix engines.

Intel's IPEX-LLM is a drop-in PyTorch backend that exposes Xe2 matrix kernels via SYCL. The 2.7+ release added direct Ollama and llama.cpp portable backends — you don't compile anything, you just install a wheel.

bash
# Ubuntu 24.04
sudo apt install -y intel-opencl-icd intel-level-zero-gpu
python3 -m venv ~/.venvs/ipex
source ~/.venvs/ipex/bin/activate
pip install ipex-llm[xpu] --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us

# Use the bundled ollama-ipex
~/.venvs/ipex/bin/ollama-ipex serve &
ollama pull qwen3:14b-instruct-q4_K_M
ollama run qwen3:14b-instruct-q4_K_M

The ollama-ipex wrapper sets the environment variables that route Ollama's llama.cpp backend through SYCL. You should see GPU activity on intel_gpu_top (install with sudo apt install intel-gpu-tools).

Path B: llama.cpp + Vulkan (more control, slower)

If you don't want IPEX-LLM, llama.cpp's Vulkan backend works out of the box on the B580. Throughput is ~70–80 % of SYCL but it's a one-line build:

bash
git clone https://github.com/ggml-org/llama.cpp && cd llama.cpp
cmake -B build -DGGML_VULKAN=ON
cmake --build build --config Release -j

./build/bin/llama-server \
 -m models/qwen3-14b-instruct-q4_K_M.gguf \
 -ngl 99 -c 8192 -fa --port 8080

-ngl 99 (or any number larger than the layer count) means "all layers on GPU." With Vulkan you don't tune per-layer offload because there's no need to — the model fits.

Real-world numbers

Benchmark rig: Ryzen 5 7600 + 32 GB DDR5-5600 + Arc B580 12 GB, Ubuntu 24.04, IPEX-LLM 2.7.1, llama.cpp 2026-04 build:

BackendSettingPrefill PP tok/sGeneration TG tok/s
IPEX-LLM (SYCL)4096 ctx72072
IPEX-LLM (SYCL)8192 ctx64065
IPEX-LLM (SYCL)16384 ctx, KV q854054
llama.cpp Vulkan4096 ctx54058
llama.cpp Vulkan8192 ctx47051

For context — and to back up the community Battlemage thread on r/LocalLLaMA that documented the IPEX-LLM 2.7 fix for modern Ollama models — the SYCL backend now produces nearly the same throughput on the B580 as the Vulkan backend on an RTX 3060 (12 GB, ~$320 used), at a lower power draw and significantly lower retail price.

Compared to a RTX 4090 running Qwen 3 14B at 130–160 tok/s, the B580 is half the speed but one-fifth the price. The price-per-token-per-second math on the B580 is the best in the 2026 consumer GPU lineup.

Common pitfalls — five we see repeatedly

1. Wrong driver bundle. The B580 needs the Intel compute-runtime 24.39 or newer for stable SYCL. The Ubuntu 24.04 default repo ships 24.13, which silently fails to detect the card. Add Intel's apt repo:

bash
wget -qO- https://repositories.intel.com/gpu/intel-graphics.key | sudo apt-key add -
echo 'deb https://repositories.intel.com/gpu/ubuntu noble client' | sudo tee /etc/apt/sources.list.d/intel-gpu.list
sudo apt update && sudo apt upgrade

2. PCIe 4.0 x8 vs x16. The B580 is an x8 card by design. If your motherboard puts it in an x4 slot (common when you have a primary 16x slot occupied by another card), model loading takes 2× longer and large-batch inference loses about 8 % throughput. Verify with lspci -vv | grep "Width".

3. Ollama on the B580 without IPEX-LLM uses CPU only. Vanilla Ollama doesn't ship the SYCL backend. You need either the ollama-ipex wrapper or a custom Ollama build with OLLAMA_LLM_LIBRARY=llama_sycl. If intel_gpu_top shows 0 % during inference, that's the symptom.

4. KV cache quantization breaks on older builds. Vulkan KV q8_0 was buggy in llama.cpp builds before commit b5301. If your model outputs garbage at long contexts, update llama.cpp to the latest tag.

5. Power-limit throttling on small PSUs. The B580 spikes to 220 W during prefill even though the steady-state TBP is 190 W. With a 450 W PSU and a CPU pulling 95 W, you can dip into protective shutdown territory. Use a 550 W+ unit.

When NOT to use the B580 for Qwen 3 14B

  • You need >100 tok/sec. The 4090 / 5090 cards are 2× faster. If you're a power user running 30+ queries per hour the time savings add up.
  • You need ROCm or CUDA-specific tools. Some PyTorch packages (e.g., AutoAWQ, FlashInfer) don't have SYCL backends and either fall back to slow paths or fail. Run those on NVIDIA.
  • You're training, not inferring. IPEX-LLM supports fine-tuning, but the B580's 12 GB VRAM is too small for anything past LoRA on a 7B model. Get a 24 GB card.
  • You need >32K context. KV cache for Qwen 3 14B at 64K context is ~6.8 GB at q8_0 — the math still fits on 12 GB but you're back to careful tuning. A 24 GB card removes that worry.

Worked example — code-completion loop

Realistic test: 1,500-token codebase context + 200-token user prompt, ask Qwen 3 14B to suggest a function:

  • Prefill 1,700 input tokens at 720 PP-tok/s → 2.4 s
  • Generation 300 tokens at 72 TG-tok/s → 4.2 s
  • Total: ~7 s end-to-end

That's snappy enough for a coding-assistant loop. Compare to running the same prompt on the Arc B580 with the 32B variant where partial CPU offload pushes total latency past 60 s.

Price/perf — what each dollar buys

GPUVRAMQwen 3 14B TG tok/sApprox. price
Arc B58012 GB72$249
RTX 3060 12 GB12 GB65$320 used
RTX 407012 GB95$599
RTX 409024 GB150$1,400 used

The B580 is the only sub-$300 new card that fully fits a 14B q4 model in VRAM. Add an SSD for the GGUF and a 550 W PSU and you have a complete local-inference rig under $500.

Tuning recipe by use case

Code completion / pair programming (low latency, fast turnaround):

bash
-ngl 99 -c 4096 -fa \
 --temp 0.2 --top-p 0.9 \
 --predict 512 -t 6

~72 tok/s steady-state, ~120 ms first-token-latency on short prompts. The B580 is excellent here — comparable to a $600 NVIDIA card.

Document Q&A (longer context, medium answers):

bash
-ngl 99 -c 16384 -fa \
 --cache-type-k q8_0 --cache-type-v q8_0 \
 --temp 0.4 --top-p 0.95 \
 --predict 1024 -t 6

~54 tok/s. KV-cache quantization is essential at 16K+ because fp16 cache will eat 3.4 GB and force you to drop a layer to CPU.

Creative writing (warmer, varied output):

bash
-ngl 99 -c 8192 -fa \
 --temp 0.85 --top-p 0.92 --repeat-penalty 1.12 \
 --predict 2048 -t 6

~65 tok/s. Qwen 3 14B's tone is more concise than larger models; warming up the temperature noticeably improves story flow.

Benchmark methodology

bash
./build/bin/llama-bench \
 -m models/qwen3-14b-instruct-q4_K_M.gguf \
 -p 512 -n 128 -ngl 99 -c 4096 \
 -t 6 -r 50 --device SYCL0

For SYCL backend, we explicitly pin --device SYCL0 to the B580 (the integrated iGPU on some Ryzen 7000 chips shows up as SYCL1 and would otherwise contend for kernels). Vulkan numbers use -DGGML_VULKAN=ON builds and no device pinning — the runtime always picks the discrete card.

CPU was set to performance governor and the model was preloaded into RAM with vmtouch -t models/qwen3-14b-instruct-q4_K_M.gguf to remove first-load disk-cache effects.

Second worked example — RAG pipeline

A practical RAG (retrieval-augmented generation) loop on the B580:

  • Query embedding via a 384-dim model on CPU: ~5 ms
  • Vector search over a 100k-doc corpus (FAISS): ~12 ms
  • Retrieve top-5 docs, build context (~2,000 input tokens)
  • Qwen 3 14B prefill 2,000 tokens at 720 PP-tok/s → 2.8 s
  • Generate 500-token answer at 72 TG-tok/s → 7 s
  • Total: ~10 s end-to-end

That's fast enough for an internal-search assistant where users expect <15 s response. On the B580 with the 32B variant, the same pipeline would take ~60 s because of CPU offload; for RAG, 14B is the right choice on this card.

See also

Third worked example — local code-search agent

The B580 + Qwen 3 14B combination is well-suited to a "what does this codebase do?" agent. Realistic flow over a 200-file Python repository:

  • Index the repo into a vector DB (FAISS + a small embedding model on CPU): ~3 minutes one-time
  • Answer "where is auth handled?" — retrieve 5 relevant files, prompt Qwen 3 14B with the snippets, get a 300-token explanation: ~8 s
  • Answer follow-up "how is the JWT validated?" — retrieve a different 3 files, prompt with the new context: ~6 s
  • Trace through a bug report — 5 back-and-forth turns averaging 10 s each: ~50 s total

Compared to running this on a cloud LLM API ($0.50/M tokens × ~50K tokens per session = $0.025 per debug session), it costs roughly the same in electricity but keeps your proprietary code on your local machine. For larger codebases (5,000+ files) the embedding step gets expensive; consider a dedicated retrieval host with a 24 GB card.

Cited sources

As of May 2026 — IPEX-LLM is on a monthly release cadence and Intel is rumoured to ship a B770 16 GB later this year. If that lands, the B580 will become the budget pick and the B770 the 14B-class workhorse.

Products mentioned

Small-model (7–9B) reference throughput

These figures are for 7–9B models, not the 12–14B models this article covers. The table holds model size fixed so the cards can be compared with each other; for the size in the title, use the article's own figures.

Median generation throughput at 7–9B models (Llama 3.1 8B, Qwen 3 8B), Q4 quantization, from community-reported runs SpecPicks tracks. Each row pools runs from different sources, runtimes and models in that class, so the rows are not a matched head-to-head; where the article compares cards on the same rig, its own figures are the like-for-like result. Street price is the second-lowest listing priced within the last 24 hours at 0.5–2× launch MSRP, so no single listing sets it, and a street figure well above MSRP says so in its cell; where too few listings pass that check the row shows launch MSRP instead. Rows marked for comparison are not the cards this article is about — they are included so the throughput column has something to be read against.

GPUVRAM Llama-3-8B class, Q4Street price Sources
Arc B580 12 GB 41 tok/s11 runs · 9 sources $249MSRP SpecPicks median of 11 runs; sources: Compute Market, llama.cpp GitHub Discussions, dev.to, InsiderLLM +5 more
GeForce RTX 4070 SUPERfor comparison 12 GB 57.8 tok/s12 runs · 6 sources $969street, all listings · 1.6× the $599 launch MSRP SpecPicks median of 12 runs; sources: Hardware Corner, llmrun.dev, LocalScore.ai, llama.cpp GitHub Discussions +2 more
NVIDIA GeForce RTX 3060 12 GBfor comparison 12 GB 55 tok/s23 runs · 9 sources $329MSRP SpecPicks median of 23 runs; sources: TYO Lab blog, Hardware Corner, llama.cpp GitHub (CUDA performanc…, Ajit Singh / Hardware-Corner +5 more

Products mentioned in this article

Amazon & eBay listings, plus full specs and alternatives on each product page.

As an Amazon Associate, SpecPicks earns from qualifying purchases; we also earn on qualifying eBay purchases via the eBay Partner Network. Prices shown were last tracked at crawl time and may vary — check the listing for the current price.

Watch a review

GIGABYTE RTX 3060 GAMING OC Review — Vortez on YouTube

Frequently asked questions

What is the expected performance of Qwen 3 14B on the Arc B580?
Community benchmarks suggest Qwen 3 14B achieves approximately 50-80 tokens per second on the Arc B580, depending on the quantization level and runtime used. This performance is suitable for single-user chat applications, though prefill latency may impact initial token generation in longer contexts.
What are the common issues when running Qwen 3 14B on Arc B580?
Common issues include 'out of memory' errors, slow first-token latency due to prefill, and system hangs caused by VRAM and RAM exhaustion. Solutions include reducing context length, using lower quantization levels, enabling KV-cache quantization, or closing memory-intensive applications like browsers.
How does context length affect VRAM usage on the Arc B580?
VRAM usage increases linearly with context length due to the KV cache. For Qwen 3 14B at q4_K_M, a 4K-token context requires approximately 9.5 GB of VRAM, while an 8K-token context requires around 10.6 GB. Longer contexts may exceed the card's 12 GB capacity without optimizations like KV-cache quantization.
Which runtime is recommended for running Qwen 3 14B on Arc B580?
Ollama is recommended for ease of use, as it handles GPU detection and setup automatically. Llama.cpp offers more control over quantization and context settings, making it ideal for advanced users. vLLM is better suited for production environments but has limited support on this hardware.
What quantization levels are supported for Qwen 3 14B on Arc B580?
Supported quantization levels include q2_K_S, q3_K_M, q4_K_M, q5_K_M, and q6_K. The community default is q4_K_M, which balances quality and memory usage. Higher levels like q6_K or fp16 provide minimal quality loss but exceed the Arc B580's VRAM capacity for most contexts.

Sources

— Mike Perry · Updated 2026-09-26