Run a Local LLM on an Unsupported AMD GPU (2026)
There are two AMD support lists and they do not agree. Ollama publishes twelve supported LLVM targets. AMD's own ROCm system-requirements page publishes a list of cards that omits three of them entirely. If your Radeon falls in the gap, HSA_OVERRIDE_GFX_VERSION is the documented way to tell the runtime to treat your card as a close relative that is supported. This page gives both lists as published, the target code for your card, the exact syntax, and an honest account of how the override fails.
Bottom Line
- Two lists, and they disagree. Ollama publishes 12 supported LLVM targets. AMD’s ROCm 7.14 page publishes a product list that omits gfx1102, gfx1150 and gfx1151 entirely.
HSA_OVERRIDE_GFX_VERSIONis documented, not a hack. Ollama’s own GPU page describes thex.y.zsyntax and gives a worked example.- The value is your target with dots in it. gfx10.3.0 for gfx1030. gfx11.0.0 for gfx1100.
- The most common real case is the RX 6700 XT (gfx1031), which is on neither list. Set
10.3.0and it is treated as an RX 6800. - Per-GPU variants exist for mixed systems:
HSA_OVERRIDE_GFX_VERSION_0andHSA_OVERRIDE_GFX_VERSION_1. - Only override within a generation. RDNA2 to RDNA2. Cross-generation guesses do not work.
- This is never a reason to buy a card. It keeps hardware you already own useful. If you are shopping, buy something on both lists.
The Two Lists, As Published
What Ollama supports
From Ollama’s GPU documentation, read 6 September 2026. Twelve LLVM targets:
gfx908 · gfx90a · gfx942 · gfx950 · gfx1030 · gfx1100 · gfx1101 · gfx1102 · gfx1150 · gfx1151 · gfx1200 · gfx1201
What AMD supports
From the ROCm 7.14 system-requirements page, read the same day. AMD lists products rather than targets. Reduced to targets, the Radeon and Instinct tables cover:
gfx908 · gfx90a · gfx942 · gfx950 · gfx1030 · gfx1100 · gfx1101 · gfx1200 · gfx1201
The gap
| Target | Products (LLVM AMDGPU tables) | Ollama | AMD ROCm 7.14 |
|---|---|---|---|
gfx1030 | RX 6800, RX 6800 XT, RX 6900 XT, PRO W6800, PRO V620 | listed | PRO cards only |
gfx1031 | RX 6700 XT | not listed | not listed |
gfx1102 | RX 7600, RX 7600 XT | listed | not listed |
gfx1150 | Radeon 890M | listed | not listed |
gfx1151 | Radeon 8060S | listed | not listed |
Two rows in that table deserve to be said out loud.
The gfx1030 row is the confusing one. AMD’s page does list gfx1030 — but only through the Radeon PRO W6800 and PRO V620. The RX 6800, RX 6800 XT and RX 6900 XT are the same silicon and the same target, and they appear nowhere on AMD’s support page. An owner of a 6900 XT is running hardware their vendor supports and a product their vendor does not list.
The gfx1151 row is the one nobody mentions. That is the Radeon 8060S, the integrated GPU inside every Ryzen AI Max+ 395 machine — the 128GB mini-PCs that are currently one of the better value routes to running a large model locally. Ollama supports it. AMD’s own ROCm system-requirements page does not list it. If you bought a Strix Halo box for local AI, your accelerator is supported by the tool and unlisted by the vendor.
Find Your Target
Ask the runtime rather than guessing:
rocminfo | grep -i gfx
The output contains lines of the form Name: gfx1031. If rocminfo is not installed, the LLVM AMDGPU processor tables map every target to its retail product names, and the table above covers the cards that matter for this decision.
Set the Override
The value is the target with the digits separated. gfx1030 becomes 10.3.0.
For a single GPU:
HSA_OVERRIDE_GFX_VERSION=10.3.0 ollama serve
To make it permanent under systemd:
sudo systemctl edit ollama.service
[Service]
Environment="HSA_OVERRIDE_GFX_VERSION=10.3.0"
Then reload and restart:
sudo systemctl daemon-reload
sudo systemctl restart ollama
Mixed multi-GPU systems
If two cards need different overrides, Ollama’s documentation states that you append the numeric device number to set them individually:
HSA_OVERRIDE_GFX_VERSION_0=10.3.0 \
HSA_OVERRIDE_GFX_VERSION_1=11.0.0 \
ollama serve
To restrict which GPUs are visible at all, the same page directs you to ROCR_VISIBLE_DEVICES with a comma-separated list, and recommends using the Uuid identifier rather than a numeric index where one is available. Numeric indices are not stable across reboots or driver updates, which is a quiet source of “it worked yesterday” reports.
Which Value To Choose
| Your card | Target | Set the override to | Why |
|---|---|---|---|
| RX 6700 XT | gfx1031 | 10.3.0 | gfx1030 is the same RDNA2 generation and is supported |
| RX 6600 / 6650 XT | gfx1032 | 10.3.0 | same reasoning, one step further from the target |
| Unlisted RDNA3 part | gfx110x | 11.0.0 | gfx1100 is the supported RDNA3 anchor |
Stay inside the generation. The override does not translate anything. It suppresses a compatibility check, and the check only turns out to be unnecessary when the instruction set your card implements is a close enough match to the one the kernels were compiled for. RDNA2 to RDNA2 usually satisfies that. RDNA2 to RDNA3 does not.
How This Fails
This is the section most guides omit, and it is the one that matters.
You are disabling a safety check. When the check was right and you overrode it anyway, you will not get a clear message saying so. The three real outcomes are:
- A hang. The process stops and the GPU sits pinned at high utilisation. Nothing errors. You will need to kill the service.
- A crash inside the compute library. The traceback names a ROCm or HIP internal, not your model or your prompt, which sends people debugging the wrong layer entirely.
- Wrong output at normal speed. This is the dangerous one. Generation runs, tokens per second look fine, and the text is subtly incoherent or the tool calls are malformed. Nothing anywhere reports a fault.
So validate deliberately. Run a short prompt with a known answer, and one that requires a tool call if you use an agent, before you trust the machine with real work. Coherent output on a five-token test is not proof; run a few hundred tokens. If quality is strange, remove the override and confirm the same prompt on CPU before you blame the model. Our why is my local LLM so slow page covers the adjacent case where the GPU is not being used at all — check that first, because “not detected” and “detected but wrong” need opposite fixes.
What This Is Not
It is not a purchase justification. The honest framing is that the override keeps a card you already bought doing useful work for longer. It does not make an unlisted card a good buy. If you are choosing hardware now, pick something that appears on both lists — which AMD GPUs actually work for local LLMs covers that decision, and the R9700 against a used RTX 3090 covers the comparison most buyers are actually making.
It is not a permanent state. Support lists change in both directions. A target that needs an override today may be listed next release, and a card can also be dropped. Re-check both pages after a major ROCm version.
See Also
- Which AMD GPUs Actually Work for Local LLMs — the two-list problem, from the buying side
- AMD R9700 vs RTX 3090 for Local LLMs — the comparison to make before you buy AMD
- Best Models for the AMD Ryzen AI Max+ 395 — the gfx1151 machines in question
- AMD MI50 32GB for Local LLMs — an older Instinct card with the same class of problem
- Why Is My Local LLM So Slow? — check GPU detection before you reach for an override
Sources
- Ollama GPU documentation — the twelve supported LLVM targets, the
x.y.zsyntax with the RX 540010.3.0example, theHSA_OVERRIDE_GFX_VERSION_0/_1per-device variants, and theROCR_VISIBLE_DEVICESguidance preferringUuidover numeric indices. Read 2026-09-06. - ROCm system requirements (AMD, ROCm 7.14.0) — the supported-GPU tables with LLVM targets per product. Read 2026-09-06.
- LLVM AMDGPU usage guide — the authoritative target-to-product mapping used in the gap table. Read 2026-09-06.
This page carries no product recommendation and no affiliate link by design. It is for hardware you already own.
Need OpenClaw fixed live?
Remote rescue sessions for gateway, auth, tunnel, VPS, and model access problems.
See Rescue Session