| Termin | Definicja |
|---|---|
| Brak wsparcia GPU w WSL 2 | Brak wsparcia GPU w WSL 2 wskazuje na nieaktualny sterownik karty graficznej hosta Windows — akceleracja GPU w kontenerach Linuksa wymaga dedykowanej wersji sterownika z obsługą WSL. Brak wsparcia GPU w WSL 2 — co oznacza ten problemBrak wsparcia GPU w WSL 2 oznacza, że środowisko Linux uruchomione wewnątrz systemu Windows nie może wykorzystać procesora graficznego do obliczeń, akceleracji aplikacji ani obsługi zadań korzystających z CUDA, DirectML lub innych mechanizmów udostępnianych przez sterownik. Sama obecność karty graficznej w komputerze nie wystarcza. Potrzebne jest prawidłowe połączenie kilku warstw: systemu Windows, komponentów WSL 2, dystrybucji Linuksa, sterownika GPU oraz aplikacji wywołującej obliczenia. Problem może objawiać się komunikatem o braku urządzenia graficznego, pustym wynikiem polecenia sprawdzającego kartę, błędem inicjalizacji biblioteki CUDA albo przełączeniem programu na obliczenia wykonywane wyłącznie przez procesor. W niektórych przypadkach dystrybucja uruchamia się prawidłowo, lecz narzędzia takie jak Wsparcie GPU w WSL 2 jest realizowane przez warstwę wirtualizacyjną, która przekazuje dostęp do wybranych funkcji karty z systemu gospodarza do środowiska Linux. Z tego powodu sterownik instalowany wewnątrz dystrybucji nie zastępuje sterownika działającego w Windows. Istotne jest również rozróżnienie WSL 1 i WSL 2, ponieważ mechanizm dostępu do sprzętu oraz sposób współpracy z jądrem systemu są inne. Jak działa akceleracja graficzna w środowisku WSL 2WSL 2 korzysta z rzeczywistego jądra Linuksa uruchamianego w lekkiej maszynie wirtualnej, ale dostęp do urządzeń nadal zależy od konfiguracji systemu Windows. Sterownik karty graficznej hosta musi zawierać obsługę przeznaczoną dla WSL, a używana dystrybucja powinna być uruchomiona jako środowisko WSL 2. Dopiero wtedy aplikacja linuksowa może otrzymać dostęp do odpowiednich bibliotek oraz interfejsów obliczeniowych. W praktyce należy odróżnić trzy poziomy działania:
Jeżeli pierwszy poziom nie działa, środowisko Linux nie otrzyma sprawnego dostępu do GPU. Jeżeli Windows widzi kartę, ale WSL 2 jej nie udostępnia, przyczyną może być stary sterownik, zatrzymane komponenty systemowe, nieaktualne jądro WSL albo niewłaściwa wersja dystrybucji. Gdy urządzenie jest widoczne, lecz program nadal zgłasza błąd, trzeba sprawdzić biblioteki użytkowe, zmienne środowiskowe, wymagania aplikacji i sposób instalacji pakietów. Nie każda aplikacja korzystająca z grafiki wymaga identycznego zestawu komponentów. Program do obliczeń uczenia maszynowego może oczekiwać obsługi CUDA, narzędzie do renderowania może korzystać z innego interfejsu, a aplikacja wykorzystująca akcelerację graficzną przez warstwę pośrednią może potrzebować jeszcze innej konfiguracji. Dlatego samo zainstalowanie biblioteki w dystrybucji nie gwarantuje działania GPU. Konieczne jest ustalenie, czy błąd występuje na poziomie urządzenia, sterownika, biblioteki czy aplikacji. Typowe przyczyny i objawy braku GPU w WSL 2Najczęściej spotykaną przyczyną jest sterownik Windows, który nie obsługuje funkcji wymaganych przez WSL 2 albo został częściowo zaktualizowany. Zdarza się również, że po zmianie sterownika pozostały stare komponenty, a środowisko WSL korzysta z nieaktualnego jądra. W takiej sytuacji system Windows może poprawnie wyświetlać obraz i obsługiwać zwykłe aplikacje graficzne, lecz przekazywanie obliczeń do dystrybucji Linux nadal będzie niesprawne. Do typowych symptomów należą:
Źródłem problemu może być także uruchomienie dystrybucji w trybie WSL 1, wyłączona lub uszkodzona funkcja wirtualizacji, niezgodność wersji biblioteki z aplikacją albo konflikt pozostały po wcześniejszym sterowniku. Warto sprawdzić wersję WSL, stan dystrybucji, wersję sterownika w Windows oraz logi aplikacji. Pomocne jest także porównanie zachowania kilku prostych narzędzi, ponieważ pozwala określić, czy problem dotyczy całego środowiska, czy tylko jednego programu. Ostrożność jest potrzebna przy usuwaniu sterowników i ręcznym kopiowaniu bibliotek do katalogów systemowych. Takie działania mogą utrudnić późniejszą diagnostykę, a nieprawidłowe wersje plików mogą powodować nowe błędy. Bezpieczniej jest najpierw ustalić model karty, wersję systemu Windows, wersję WSL 2 oraz dokładny komunikat, a dopiero później dobierać sposób naprawy. Kiedy warto zgłosić brak wsparcia GPU do serwisuZgłoszenie do serwisu jest uzasadnione, gdy karta działa w zwykłych aplikacjach Windows, ale pozostaje niewidoczna w WSL 2, gdy problem powraca po aktualizacji sterownika albo gdy nie wiadomo, czy przyczyną jest konfiguracja systemu, konflikt oprogramowania czy usterka sprzętowa. Warto przekazać informację o modelu karty, wydaniu Windows, używanej dystrybucji, trybie WSL oraz nazwie programu, który zgłasza błąd. Przydatny jest również pełny tekst komunikatu i wskazanie, czy akceleracja działała wcześniej. W Warszawskim Pogotowiu Komputerowym 24/7 można rozpocząć od usługi, w ramach której wykonywana jest darmowa diagnoza LAPTOPA, a następnie sprawdzane są zależności między sterownikiem Windows, komponentami WSL 2, dystrybucją Linux i aplikacją wykorzystującą GPU. Taka weryfikacja pozwala oddzielić problem konfiguracyjny od objawów wskazujących na nieprawidłowe działanie karty lub systemu. Przed przekazaniem sprzętu warto wykonać kopię ważnych danych z dystrybucji WSL, zapisać listę zainstalowanych narzędzi i zanotować ostatnie zmiany, takie jak aktualizacja Windows, wymiana karty, instalacja nowej aplikacji albo przywracanie sterownika. Nie należy samodzielnie usuwać wszystkich komponentów systemowych bez punktu przywracania lub innej możliwości odtworzenia konfiguracji. Prawidłowo przeprowadzona diagnoza powinna obejmować nie tylko instalację sterownika, lecz także sprawdzenie, czy WSL 2 faktycznie widzi urządzenie i czy konkretna aplikacja korzysta z niego zgodnie ze swoimi wymaganiami. |