● CALIBRATED 2026-10-04 · REC 000
Local AI Frontier

DISPATCH

Battlemage one year in: Arc B580/B60 as a local-AI card

By Edgar · 2026-07-25 · 11 min

Battlemage one year in: Arc B580/B60 as a local-AI card

Two years ago, recommending an Intel Arc card for AI work required an asterisk the size of the card itself. The hardware was fine; the software stack was not. A year into the Battlemage generation — the Arc B580 at ~$300 and the Arc Pro B60 at ~$400 — the asterisk is much smaller, and for one specific kind of buyer it’s gone entirely. This is the retrospective we owe you after a year of running these cards in the lab.

What changed: three things, in order of importance

1. The VRAM-per-dollar story is now Arc’s actual selling point

This is the headline. The B580 ships 12GB for ~$300, and the B60 ships 24GB for ~$400. No NVIDIA or AMD card matches that VRAM-per-dollar at these tiers. For local AI — where VRAM is the binding constraint on what model you can run — that ratio matters more than raw tok/s. A card that holds a 30B model for $300–$400 changes the entry-tier math in a way a faster 8GB card doesn’t.

This is why our $300 floor recipe centers on the B580. It’s not the fastest card in its price class. It’s the card that fits the model in its price class, and that’s the question that actually matters.

2. The backend story stabilized — and OpenVINO pulled ahead on the B60

A year ago, the Battlemage software story was chaotic. SYCL builds were flaky, Vulkan worked but wasn’t optimized, and picking the wrong backend meant either broken output or disappointing speed. That’s largely resolved.

  • Vulkan via Mesa ANV is the stable, mature path in llama.cpp on Battlemage. Our entire multi-vendor benchmark fleet runs Vulkan on the Arc cards; it’s the cross-platform default we trust.
  • OpenVINO Model Server (OVMS) turned out to be the surprise. Intel’s curated serving container uses the Level Zero runtime that SYCL builds on, and on the B60 specifically it’s ~1.76× faster than Vulkan for serving throughput. We measured this and wrote it up: OpenVINO beats Vulkan on the Arc B60. For single-stream llama.cpp you still want Vulkan; for serving on a B60, OVMS is the answer.

The SYCL mess that produced “broken output” reports in early 2026 is mostly behind us, but the lesson stuck: on Battlemage, pick your backend deliberately, and the right answer depends on whether you’re doing single-stream inference (Vulkan) or serving (OVMS). See the tools writeup for where this fits in the broader runtime picture.

3. The driver and ecosystem caught up

A year of Mesa ANV improvements, Intel’s Vulkan driver maturation on Windows, and llama.cpp-side Battlemage kernel work has closed most of the gap that made early-Adopter Arc painful. The “it doesn’t work” reports from launch are mostly resolved; the remaining edges are documented (dual-GPU systems need GGGL_VK_VISIBLE_DEVICES set correctly so the runtime picks the Arc and not an integrated AMD GPU, for instance — covered in our 30B recipe).

The honest speed picture

Battlemage performance evolution: software updates and OpenVINO elevated throughput from 30 to 68 tok/s.
Battlemage performance evolution: software updates and OpenVINO elevated throughput from 30 to 68 tok/s.

This is where we have to be careful, because Battlemage is not the fastest architecture at its price points — and pretending otherwise would be exactly the kind of hype we don’t do.

From our 2×2 comparison (Llama-3.1-8B and LFM2.5-8B, byte-identical weights, identical flags):

Arc B60 (Vulkan) RX 7900 XT (ROCm) RX / Arc
Llama-3.1-8B (dense) 27.01 tok/s 105.22 tok/s 3.90×
LFM2.5-8B (MoE) 68.79 tok/s 269.01 tok/s 3.91×

The RX 7900 XT is roughly 3.9× faster than the Arc B60 on generation, consistently across both architectures. That gap is real. The RX card costs ~75% more, has higher memory bandwidth, and ROCm is a more mature stack than Mesa Vulkan on Battlemage. We’re not going to pretend the B60 wins a speed race it doesn’t win.

But speed isn’t why you buy Battlemage. You buy it because:

  • The 24GB B60 at ~$400 is the cheapest way to fit a 24GB-class workload, full stop.
  • The 12GB B580 at ~$300 is the cheapest way to get a 12GB card that runs local AI cleanly.
  • For serving on the B60 specifically, OVMS closes a big chunk of the gap to the RX 7900 XT — though we haven’t published a head-to-head OVMS-vs-ROCm serving sweep yet (queued).

If your question is “what’s the fastest card I can buy for ~$700,” the answer is the RX 7900 XT, and our data says so. If your question is “what’s the cheapest card that holds a 24GB workload,” the answer is the Arc B60, and the data says that too. Different questions, different cards.

Who should buy an Arc card in mid-2026

After a year on the bench, the honest recommendation:

  • Buy the B580 if: you’re budget-constrained at ~$300, you want a daily-driver coding/general assistant, and you’re OK with “usable, not fast.” This is the $300 floor.
  • Buy the B60 if: you specifically need 24GB of VRAM and $400 is your ceiling, or you intend to serve on Battlemage (where OVMS makes the B60 genuinely competitive).
  • Don’t buy Arc if: maximum single-stream speed is your priority and you have $700+. The RX 7900 XT is the better card for that question.
  • Don’t buy Arc if: you want zero fiddling. Arc works, but you’ll think about backends more than you would on a green team card. NVIDIA’s CUDA ecosystem is still the lowest-friction path, full stop.

What we got wrong, and what we’re watching

In early coverage we overstated the SYCL problems (an ad-hoc broken build led us to a “don’t use SYCL” recommendation that was too broad). The correction: the underlying Level Zero runtime works fine, and OVMS — which uses it — is the fastest serving path on the B60. We logged the correction and kept the original measurements; the numbers were right, the framing was off. Same lesson as the bm-007/008 2×2: isolate your variables before you draw conclusions.

What we’re watching for the next year:

  • OVMS-vs-ROCm serving head-to-head — we have Vulkan-vs-ROCm and OVMS-vs-Vulkan; the missing piece is OVMS-vs-ROCm at equal serving load.
  • Battlemage successor rumors — whenever Intel ships the next Arc generation, the VRAM-per-dollar story will either extend or get disrupted. We’ll test it.
  • Long-context behavior on B60 — our benchmarks are short-context (~2K). How the B60 holds up at 32K–64K context, where VRAM pressure intensifies, is an open question.

What has changed since publication (September 2026)

  • Mesa is now the material variable. A community report found that changing only the Intel Vulkan driver from Mesa 26.0.8 to 26.1.7 on one Arc B580 raised decode throughput from roughly 30 to roughly 67 tok/s. That is not our lab result and it is one machine, but it is large enough that our July Mesa-era Vulkan numbers should not be used as a current-driver ceiling. Method, models, and limits.
  • For llama.cpp, Vulkan remains the working Battlemage default over raw SYCL. Our historical SYCL attempt was not production-safe; the external Battlemage tracker likewise recommends an optimized runtime rather than raw llama.cpp SYCL. Treat this as a software-stack call, not a permanent silicon verdict. Tracker.
  • OVMS has moved on. OpenVINO Model Server’s current release is 2026.3.0; our 2026.2.1 B60 result remains a dated measurement, not evidence that the newer release is faster on this card. OVMS releases.

The state of the stack, in one table

The one-year verdict on Intel Battlemage: reliable $300 entry floor and workstation value.
The one-year verdict on Intel Battlemage: reliable $300 entry floor and workstation value.
Backend Best for Status as of September 2026 Evidence
llama.cpp Vulkan Local single-stream inference and the default path to re-test after Mesa updates Usable and newly driver-sensitive; our published B60 numbers predate the Mesa 26.1.7 community report bm-001: 30B coder on B60
llama.cpp SYCL Experimental work only Not our recommended default: the documented B60 attempt produced invalid output, while the current ecosystem recommendation is to use a purpose-built runtime instead bm-013: B60 cross-machine record
OpenVINO Model Server (OVMS) Serving on the Arc B60 Demonstrably functional on our B60 in OVMS 2026.2.1; the directional 1.76x comparison is useful, but it is not a same-model, same-protocol production certification bm-012: OVMS vs Vulkan

FAQ

Should I buy a B580 for local AI now?

Buy it only if 12GB is enough for your chosen models and you are willing to validate the current Vulkan driver yourself. We have not measured a B580 in this lab, and the large Mesa 26.1.7 report is external and single-machine evidence, not a site benchmark. What we have and have not measured and the driver report.

B580 12GB vs B60 24GB: which one?

Choose the B580 for the lower-cost 12GB tier; choose the B60 when 24GB capacity is the requirement. Our B60 ran a 30B coder at Q4_K_M with 18.1GB recorded VRAM use, so that workload is evidence for the 24GB card, not a claim that it fits cleanly on a B580. bm-001.

Is OpenVINO production-ready?

It is production-plausible on this B60, not production-certified by this site: OVMS initialized cleanly and served the tested model, but our comparison changes model variant, quantization, and protocol. Validate your model, load, and failure handling before treating it as a deployment decision. bm-012 limitations.

What still sucks?

Raw llama.cpp SYCL remains a poor default on the documented B60 attempt, and our published results do not answer sustained multi-user serving or long-context behavior. The Mesa result is promising but unreplicated here; the stack still rewards careful backend and driver selection. bm-013 failure record and Mesa report.

The takeaway

A year in, Battlemage is no longer a punchline. It’s a deliberately positioned product: not the fastest card at any tier, but the one that puts the most VRAM in reach at the lowest price, with a backend stack that finally works. If you’re buying for speed, look elsewhere. If you’re buying for what fits, the B580 and B60 are the most interesting cards in their price classes — and they’re the reason the $300 floor exists at all.

The numbers behind every claim above are in our open benchmarks: bm-007, bm-008, and bm-012 (OpenVINO on B60). For the part-list tier above the B580, Builds has tested recipes.

RELATED POSTS