Strona główna
» LINUX
»
Naprawa rozrywania ekranu na kartach graficznych Intel w systemie Pardus Linux: przewodnik skoncentrowany na wynikach
Naprawa rozrywania ekranu na kartach graficznych Intel w systemie Pardus Linux: przewodnik skoncentrowany na wynikach
Jak powinna wyglądać dobra naprawa
Przydatna poprawka rozrywania ekranu to nie tylko zmiana konfiguracji, która poprawia wygląd jednego filmu. Rezultat powinien być powtarzalny: poziome podziały powinny znikać podczas przeciągania okna, przewijania strony i odtwarzania wideo w trybie pełnoekranowym; pulpit powinien pozostać responsywny; prawidłowa częstotliwość odświeżania powinna pozostać wybrana po zalogowaniu; a zmiana nie powinna powodować czarnych ekranów, zacięć ani większych niż oczekiwano opóźnień.
W obecnych wersjach Pardusa należy zacząć od zidentyfikowania sesji wyświetlania i aktualnie używanego sterownika Xorg. Pardus 25 jest dostarczany z Xfce 4.20.2 jako lekkim pulpitem i GNOME 48.4 jako drugim głównym pulpitem, podczas gdy Pardus 25.1 zawiera aktualizacje konserwacyjne Debiana 13.4 i jądro Linuksa 6.12.74. Ma to znaczenie, ponieważ konfiguracja Intela specyficzna dla X11 nie powinna być bezmyślnie stosowana w sesji Wayland. Zapoznaj się z informacjami o wydaniu Pardusa 25 i Pardusa 25.1 .
Praktyczna kolejność jest następująca: zidentyfikuj sesję i sterownik, zaktualizuj stos graficzny, potwierdź ustawienia kompozytora i monitora, a następnie użyj TearFreeopcji Intel Xorg tylko wtedy, gdy starszy intelDDX jest rzeczywiście aktywny. Debian obecnie zaleca wbudowany modesettingsterownik Xorg dla sprzętu Intel od około 2007 roku zamiast instalacji xserver-xorg-video-inteldomyślnej. Dokumentacja Debian GraphicsCard stanowi przydatny kontekst dla tego rozróżnienia.
Jeśli pierwsze polecenie zwróci x11, zostaną zastosowane kontrole specyficzne dla Xorg opisane w tym przewodniku. Jeśli zwróci wayland, nie twórz pliku urządzenia Xorg tylko po to, aby rozwiązać problem z rozrywaniem obrazu; zamiast tego zaktualizuj system i rozwiąż problemy z kompozytorem/sesją. Drugie polecenie powinno wyświetlić kontroler ekranu Intel i zazwyczaj sterownik jądra, tak jak i915w wielu systemach z procesorem Intel.
Przed zmianą sprawdź typ sesji, sterownik jądra Intel, nazwę wyjścia, bieżącą rozdzielczość i częstotliwość odświeżania.
Kontrola jakości: zapisz nazwę wyjścia, taką jak eDP-1, oraz tryb oznaczony gwiazdką xrandr. Użyjesz tych wartości, aby sprawdzić, czy późniejsze zmiany nie spowodowały nieoczekiwanych zmian w wyświetlaniu.
2. Zaktualizuj Pardus przed dodaniem nadpisań sterowników
Rozrywanie grafiki może pochodzić z menedżera okien, Mesa, Xorg lub sterownika ekranu jądra. Przed dodaniem trwałego nadpisania, zainstaluj aktualizacje już dostępne dla Twojej wersji Pardusa:
sudo apt update
sudo apt full-upgrade
Zrestartuj system, jeśli aktualizacja instaluje nowe jądro, stos Mesa lub komponenty serwera X. Jest to szczególnie ważne w przypadku Pardusa 25, ponieważ bieżące wydania punktowe nadal otrzymują aktualizacje jądra i bazy Debiana.
Najpierw zastosuj aktualne aktualizacje pakietów Pardus. Nazwy gałęzi repozytorium i dokładne dane wyjściowe pakietów różnią się w zależności od zainstalowanej wersji Pardus.
Kontrola jakości: przetestuj ten sam film przewijany lub pełnoekranowy, który wcześniej ujawnił rozdarcie. Jeśli problem zniknął po aktualizacji i ponownym uruchomieniu, przerwij tutaj, zamiast stosować kolejne obejście problemu w warstwie graficznej.
3. W systemie Pardus Xfce sprawdź, czy kompozycja wyświetlacza jest włączona
W przypadku pulpitu Xfce otwórz Ustawienia > Ustawienia Menedżera Okien > Kompozytor i sprawdź, czy kompozycja wyświetlania jest włączona. Kompozytor odpowiada za składanie zawartości okna w ostateczny obraz pulpitu; jego wyłączenie może sprawić, że rozrywanie obrazu będzie bardziej widoczne podczas przesuwania okna lub odtwarzania wideo.
To pierwsza zmiana o niskim ryzyku, ponieważ nie wymusza użycia innego sterownika Xorg DDX. Przetestuj przed zmianą innych szczegółów kompozytora. Nie zakładaj, że każde pole wyboru wyświetlane przez konkretną kompilację Xfce będzie identyczne we wszystkich wersjach Pardusa.
Włącz komponowanie obrazu Xfce i przetestuj ruch ponownie przed wprowadzeniem konfiguracji specyficznej dla sterownika.
Kontrola jakości: przeciągnij duże okno poziomo po szczegółowym tle i przewiń długą stronę internetową. Poprawa powinna być widoczna w więcej niż jednej aplikacji. Jeśli tylko jeden odtwarzacz multimedialny przerywa, sprawdź ustawienia wyjścia wideo lub synchronizacji tej aplikacji, zamiast zmieniać cały pulpit.
4. Sprawdź, czy monitor używa odpowiedniej częstotliwości odświeżania
W X11 xrandrraportuje dostępne tryby i oznacza bieżący tryb gwiazdką. W podręczniku opisano --output, --mode, i , --rateaby wybrać wyjście, rozdzielczość i najbliższą dostępną częstotliwość odświeżania. Zobacz podręcznik Debian xrandr .
xrandr --current
Jeśli Twój wyświetlacz obsługuje żądany tryb, ale wybrano inną częstotliwość, przetestuj tymczasowo poprawną wartość. Zastąp przykładowe dane wyjściowe i częstotliwość wartościami faktycznie wyświetlanymi na Twoim komputerze:
xrandr --output eDP-1 --mode 1920x1080 --rate 60
Używaj wyłącznie trybów i częstotliwości odświeżania raportowanych przez xrandr dla podłączonego wyświetlacza; nazwy wyjść różnią się w zależności od sprzętu.
Kontrola jakości: potwierdź xrandr --currentteraz zamierzony tryb i częstotliwość odświeżania. Jeśli rozrywanie obrazu zmienia się po podłączeniu monitora zewnętrznego, przetestuj każde wyjście osobno, ponieważ układy wielomonitorowe z odświeżaniem mieszanym mogą ujawniać problemy z synchronizacją w kompozycji, które nie występują na jednym ekranie.
5. Sprawdź, który sterownik Xorg jest faktycznie aktywny
Następny krok określa, czy klasyczna TearFreeopcja Intela jest odpowiednia. Na X11 sprawdź aktualny dziennik Xorg:
Jeśli Twoja dystrybucja przechowuje dziennik Xorg w dzienniku, użyj:
journalctl -b | grep -Ei 'Xorg|modesetting|intel'
Jeśli aktywnym sterownikiem jest modesetting, nie instaluj starszego sterownika Intel DDX wyłącznie po to, aby go przełączyć TearFree. Debian wyraźnie odradza stosowanie starszego sterownika Intel Xorg na nowszym sprzęcie i zaleca zamiast niego wbudowany sterownik ustawiania trybu. Jeśli w logu jest już Using driver 'intel', opcja Intel-driver poniżej jest poprawnym testem docelowym.
Przed zastosowaniem opcji TearFree specyficznej dla sterownika sprawdź, czy Xorg już używa starszej wersji Intel DDX.
6. Jeśli starszy sterownik Intel Xorg jest aktywny, przetestuj TearFree
intel(4)Dokumentacja podręcznika Debiana Option "TearFree" "boolean". Wyjaśnia, że TearFree renderuje przez bufor wsteczny i aktualizuje obraz synchronicznie z odświeżaniem pionowym. Kompromisem jest dodatkowa pamięć bufora ramki, dodatkowe kopiowanie, zmniejszona przepustowość w niektórych przypadkach i niewielkie opóźnienie wyjściowe. Zobacz podręcznik Debian intel(4) .
Dopiero gdy dziennik Xorg potwierdzi, że intelsterownik jest aktywny, utwórz mały plik konfiguracyjny, taki jak /etc/X11/xorg.conf.d/20-intel.conf:
Wyloguj się i zaloguj ponownie lub uruchom ponownie komputer, aby Xorg ponownie załadował konfigurację.
Użyj tego fragmentu kodu Xorg tylko wtedy, gdy aktywnym sterownikiem Xorg jest Intel. Nie jest to ogólne rozwiązanie problemu Wayland ani problemu z ustawianiem trybu.
Kontrola jakości: pulpit powinien uruchomić się normalnie, zamierzona rozdzielczość powinna pozostać wybrana, a rozrywanie obrazu nie powinno występować w tym samym powtarzalnym teście, który został przeprowadzony wcześniej. Jeśli dane wejściowe wydają się zauważalnie mniej bezpośrednie lub przepustowość renderowania spada w obciążeniu, rozważ ten kompromis w kontekście poprawy jakości obrazu.
7. Sprawdź wynik zamiast zakładać, że opcja została załadowana
Po powrocie do pulpitu sprawdź dziennik Xorg pod kątem tej opcji, a następnie ponownie uruchom oryginalne testy wizualne:
grep -i tearfree /var/log/Xorg.0.log
Wpis w dzienniku wskazujący na włączenie funkcji TearFree jest dowodem na to, że Xorg zaakceptował to ustawienie; sam w sobie nie jest dowodem na to, że każda aplikacja będzie wolna od efektu tearfree. Przetestuj szybkie przewijanie, przeciąganie okien i co najmniej jeden film w trybie pełnoekranowym z widocznym ruchem poziomym.
Sprawdź zarówno ładowanie konfiguracji, jak i widoczny wynik; sam czysty dziennik Xorg nie jest dowodem na to, że problem widoczny dla użytkownika został rozwiązany.
Kryteria zaliczenia: brak uporczywego poziomego pęknięcia w kilku testach z dużą ilością ruchu, brak nowego czarnego ekranu lub migotania, brak niepożądanych zmian częstotliwości odświeżania i brak niedopuszczalnego zacinania się. Jeśli rozrywanie obrazu utrzymuje się tylko w jednej aplikacji, zmień podejście i sprawdź ścieżkę renderowania tej aplikacji.
8. Szybko wycofaj zmiany, jeśli nadpisanie Xorg pogorszy sytuację
Jeśli Xorg nie uruchomi się poprawnie, wydajność spadnie lub opcja nie będzie miała żadnego znaczącego wpływu, usuń dodany plik i wróć do poprzedniego zachowania sterownika:
sudo rm /etc/X11/xorg.conf.d/20-intel.conf
Następnie wyloguj się i zaloguj ponownie lub uruchom ponownie komputer. Nie usuwaj niepowiązanych plików w /etc/X11/xorg.conf.d/.
Funkcja Rollback powinna usunąć tylko utworzony plik niestandardowy. Jeśli aktywnym stosem jest ModeSetting lub Wayland, wróć do rozwiązywania problemów z kompozytorem i stosem graficznym.
Kiedy zmienić podejście
Należy zrezygnować z metody Intel DDX TearFree, jeżeli spełniony jest którykolwiek z następujących warunków:
Jesteś w Wayland. Fragmenty kodu urządzenia Xorg nie kontrolują ścieżki prezentacji kompozytora Wayland.
Xorg korzysta z wbudowanego sterownika ustawiania trybu. Aktualny podręcznik ustawiania trybu w Debianie dokumentuje sterownik oparty na KMS i jego obsługiwane opcje, ale nie wymienia starszej TearFreeopcji Intel DDX. Zobacz podręcznik ustawiania trybu w Debianie(4) .
Problem występuje tylko na jednym wyświetlaczu zewnętrznym. Sprawdź ponownie częstotliwość odświeżania, działanie kabla/zasilacza i czy rozrywanie obrazu następuje po określonym wyjściu.
Problem pojawił się natychmiast po aktualizacji systemu. Sprawdź aktualne pakiety jądra, Mesa i Xorg i sprawdź, czy nie nastąpiła regresja, zanim dodasz trwałe lokalne nadpisania.
Problem występuje tylko w jednym odtwarzaczu, przeglądarce lub grze. Synchronizacja wideo na poziomie aplikacji lub ustawienia renderowania są lepszym rozwiązaniem niż globalna zmiana w Xorg.
Ograniczenia poprawki
Żadne pojedyncze ustawienie graficzne Intela nie gwarantuje efektu tearfree w każdej wersji Pardusa, środowisku graficznym, generacji GPU, topologii wyświetlacza i aplikacji. Starsza opcja Intel DDX TearFree jest realna i udokumentowana, ale celowo jest rozwiązaniem warunkowym: dotyczy systemów X11, na których faktycznie działa ten sterownik, a sam sterownik nie jest już preferowanym domyślnym ustawieniem dla nowszego sprzętu Intel w systemach opartych na Debianie.
Najbardziej wiarygodnym rezultatem jest utrzymanie interwencji proporcjonalnej do przyczyny. Jeśli synchronizacja kompozytora i prawidłowa częstotliwość odświeżania rozwiązują problem, należy na tym poprzestać. Jeśli starszy sterownik Intela jest już aktywny, TearFree jest rozsądnym testem. Jeśli korzystasz z trybu ustawiania trybu lub Wayland, pozostań przy nowoczesnym stosie i zdiagnozuj zachowanie kompozytora, odświeżania, jądra, Mesa i aplikacji, zamiast na siłę instalować starszy sterownik w systemie.
Szybka lista kontrolna weryfikacji
echo $XDG_SESSION_TYPEPrzed zastosowaniem kroków dotyczących wyłącznie Xorg należy dokonać potwierdzenia .
Zarejestruj osobno sterownik jądra Intel i aktywny sterownik Xorg.
Zaktualizuj Pardus i zrestartuj urządzenie, gdy zmienią się komponenty stosu graficznego.
Pozostaw kompozycję Xfce włączoną, chyba że testy wykażą, że to ona jest źródłem problemu.
Sprawdź aktualny tryb i częstotliwość odświeżania monitora xrandrna X11.
Stosować Option "TearFree" "true"wyłącznie w przypadku, gdy Xorg używa intelsterownika.
Oceń sukces za pomocą kilku testów obejmujących dużo ruchu, a nie jednego zrzutu ekranu lub jednego wpisu w dzienniku.
Jeśli nie wpłynie to wyraźnie na poprawę rezultatu, usuń niestandardowy plik Xorg.