Nie startuje albo nie widzi GPULinuxWindowsOstatnia aktualizacja 22 czerwca 2026

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

Radeon jest zainstalowany, ale nic nie chce z niego korzystać

Autor Jakub Rusinowski

Błąd

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. 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. 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. 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. 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 pasuje do Twojego sprzętusprawdź, które modele działają dobrze na twoim zestawie AMDOtwórz kalkulator VRAM →
Dotyczy także: Windows

Powiązane

Najczęściej zadawane 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.