Start / Poradniki / Rozwiązywanie problemów / Linux

GPU AMD niewykrywane / ROCm nieobsługiwany (Ollama i llama.cpp)

LinuxWindows

Autor: Jakub Rusinowski · Ostatnia aktualizacja: 22 czerwca 2026

Edukator AI i prowadzący warsztaty z wdrażania lokalnych modeli LLM

Komunikat błędu

Error: no compatible GPUs were discovered

Kiedy się pojawia

Masz kartę Radeon, ale Ollama liczy na CPU albo build z ROCm zgłasza brak urządzeń. Częsty wariant to rocBLAS error: Could not initialize Tensile host: No devices found. Karta jest zainstalowana, tylko stos obliczeniowy AMD nie chce się do niej przyznać.

Co się właściwie dzieje

Wnioskowanie na GPU AMD przechodzi przez ROCm, a ROCm oficjalnie wspiera węższą listę kart niż CUDA u NVIDII. Twoja karta może być nieobsługiwana, obsługiwana tylko *częściowo* albo obsługiwana, lecz raportująca wersję architektury gfx, dla której zainstalowane biblioteki ROCm nie mają skompilowanych kerneli. Na Windowsie sytuacja jest jeszcze bardziej dziurawa. To zatem problem wykrywania i zgodności, a nie pamięci.

Jak to naprawić

1. Sprawdź, czy ROCm widzi kartę

Zacznij od tego, czy stos AMD w ogóle wykrywa kartę. rocminfo wypisuje wykryte agenty, a rocm-smi pokazuje stan GPU. Jeśli żadne z nich jej nie widzi, problemem jest instalacja ROCm albo nieobsługiwana karta — zajmij się tym, zanim ruszysz dalej.

bash
rocminfo | grep gfx   # shows the GPU architecture if detected
rocm-smi

2. Nadpisz wersję gfx dla kart obsługiwanych częściowo

Wiele konsumenckich Radeonów działa bez zarzutu, ale raportuje wersję gfx, w którą ROCm oficjalnie nie celuje. Wymuszenie zgodnej wersji przez HSA_OVERRIDE_GFX_VERSION każe ROCm użyć kerneli zbudowanych dla bliskiego krewnego. Na przykład część kart RDNA3 działa z wartością 11.0.0. Ustaw ją przed uruchomieniem.

bash
# RDNA3 example — match the value to your architecture
export HSA_OVERRIDE_GFX_VERSION=11.0.0
ollama serve

3. Zainstaluj build z ROCm i właściwy sterownik

Upewnij się, że masz Ollamę z obsługą ROCm (albo build llama.cpp z HIP/ROCm) oraz pasujący sterownik AMD. Standardowa instalacja bywa wyłącznie na CPU albo zbudowana pod inną wersję ROCm niż twoja. Na Linuksie sprawdź jeszcze, czy twój użytkownik należy do grup render i video, bo bez tego nie sięgnie do urządzenia.

multiple shells — see comments
# Linux (bash) — device permissions; log out and back in afterwards
sudo usermod -aG render,video $USER

# Windows (PowerShell) — no group step exists; check you have the ROCm build
ollama --version

4. Jeśli karta nie jest obsługiwana, dobierz model do tego, co możesz uruchomić Najczęstsze rozwiązanie

Jeśli ROCm naprawdę nie obsłuży twojego GPU, na razie zostaje ci liczenie na CPU — a wtedy mniejszy model w niższej kwantyzacji jest różnicą między „da się używać” a „nie do zniesienia”. Sprawdź, które modele działają na twoim zestawie w akceptowalnym tempie, i wybierz taki, który daje radę.

Sprawdź, co zmieści się na twoim sprzęcie — sprawdź, które modele działają dobrze na twoim zestawie AMD
Otwórz kalkulator VRAM →

Dotyczy także: Windows

Powiązane

Model, który mieści się na większości zestawów:
Zobacz model i wymagania →

Najczęstsze pytania

Czy moje GPU AMD nadaje się do lokalnych LLM-ów?

Zajrzyj na listę kart obsługiwanych przez ROCm i uruchom rocminfo, żeby poznać swoją wersję gfx. Nowsze karty RDNA2 i RDNA3 zwykle działają (czasem po nadpisaniu gfx); starsze albo z niższej półki bywają nieobsługiwane, co zostawia cię z wnioskowaniem na CPU.

Co robi HSA_OVERRIDE_GFX_VERSION?

Każe ROCm traktować twoją kartę jak wskazaną architekturę, dzięki czemu użyje kerneli zbudowanych dla bliskiego krewnego. To standardowe obejście dla kart sprawnych, ale nieobjętych oficjalnie przez zainstalowaną wersję ROCm — ustaw wartość odpowiadającą generacji twojego GPU.

Czy AMD działa w tym zastosowaniu na Windowsie?

Wsparcie się poprawia, ale wciąż jest skromniejsze niż na Linuksie. Najlepsze wyniki daje zwykle ROCm na Linuksie; na Windowsie sprawdź, czy konkretne narzędzie dostarcza działający backend AMD lub Vulkan dla twojej karty.