Mint - szatkujący obraz w filmach i grach, GTX 960M

Mam laptopa z zintegrowaną od Intela: HD Graphics 530 i kartą NVIDIA GTX 960M. Korzystam z sterownika nvidia-driver-390, sam nie pobierałem ani nie instalowałem, był dostępny w Drivers Manager. Wersja X Server to 1.19.6

System: Mint 19, Cinnamon 3.8.6

Problem: Kiedy pracuję na zintegrowanej karcie - wszystko działa, a przynajmniej wideo na YouTube bo grać nie próbowałem. Na karcie NVIDIi obraz szatkuje, jest taki “rwany”, szczególnie przy “mocniejszych” ruchach kamery - czy to w filmach na YouTube (wyłączenie akceleracji sprzętowej w przeglądarce nie pomaga) czy też podczas grania w różne gry:
The Long Dark - obraz szatkuje przy poruszaniu myszą kamery, gdy postać tylko idzie przed siebie to obraz nie szatkuje
Darkest Dungeon - szatkują filmiki w grze, sama gra nawet nie, lekkie szatkowanie tła gdy drużyna porusza się, brak przy animacjach.
Rise Of Industry - bardzo duże szatkowanie przy przesuwaniu kamery
Rocket League - tu wyjątkowo nic nie szatkuje.

Temperatura karty jest w normie, do 65 stopni. Próbowałem takiego rozwiązania , nie pomogło, komenda nic nie zmieniła, wszelkie próby użycia pliku xorg.conf powodowały black screen przy starcie komputera.

Byłbym bardzo wdzięczny za wszelkie sugestie co do tego co można zrobić, pomijając zmianę środowiska graficznego czy systemu.

######ROZWIĄZANIE PROBLEMU#########

Działa dla źródła problemu którym jest synchronizacja PRIME między zintegrowaną a dedykowaną kartą graficzną w laptopie. (W przynajmniej moim laptopie, obraz nie idzie bezpośrednio z karty NVIDIi do ekranu, tylko poprzez zintegrowaną Intela, a szatkowanie wynika z problemów sychronizacji wyświetlania klatek pomiędzy ekranem a urządzeniem renderującym).

Kroki do wykonania:

  1. sprawdzić czy w pliku cat /sys/module/nvidia_drm/parameters/modeset znajduje się pojedyncza litera N. Jeśli tak to potencjalnie mamy bingo i wykonujemy dalsze kroki! :grinning: Jeśli nie, problem leży gdzie indziej.
  2. Dopisujemy (z sudo) na koniec pliku /etc/modprobe.d/nvidia-drm-nomodeset.conf w osobnej linijce options nvidia-drm modeset=1 . Jeśli plik nie istnieje, to (z sudo) tworzymy go i dodajemy linię.
  3. Uruchamiamy ponownie system.
  4. Dajemy polecenie sudo update-initramfs -u
  5. Sprawdzamy czy w pliku /sys/module/nvidia_drm/parameters/modeset N zmieniło się na Y. U mnie oznaczało to rozwiązanie problemu.

#############ŹRÓDŁO############

Rozwiązanie w całości od pana markackerman8-gmail.com w pytaniu na ask ubuntu .

Może moduł kernela?

Czytałem o tym bugu z Tearing/VSync w Cynamonie, ale nie pamiętam gdzie i czy to rozwiązali. Spróbuję ci poszukać coś po necie bo Cynamona nie znam kompletnie.

Czy pisząc o edycji xorg.conf miałeś na myśli porady z tego wątku?
https://forums.linuxmint.com/viewtopic.php?t=265891#p1445132

1 polubienie

Mniej więcej tak. Problem w tym że u mnie pliku xorg.conf ani 20-nvidia.conf nie ma. Mogę wygenerować plik xorg.conf przez polecenie nvidia-xconf albo przez GUI w X Server Display Configuration (swoją drogą pliki te nie są wtedy takie same, mogę wrzucić ich zawartość jeśli byłaby przydatna komuś). Tylko że obecność takiego pliku powoduje blackscreen przy reboocie. Nawet się jakoś nie bawiłem w jego zmienianie, taki świeżo wygenerowany już powoduje problem, no chyba że właśnie trzeba coś zmienić.

Plik xorg.conf nie jest domyślnie już używany bo xorg automatycznie wszystko wykrywa. Możesz sam utworzyć ten pliczek w odpowiednim miejscu i dodać jedynie te opcje które były zasugerowane w podlinkowanym temacie uwzględniając strukturę pliku czyli jeśli coś ma być w sekcji “device” to tworzysz taką sekcję, dodajesz opcje i zamykasz sekcję.

ps.
Z ciekawości możesz pokazać jaki plik generuje nvidia-xconf.

pps.
Jeśli coś nakombinujesz w pliku xorg.conf i będziesz miał czarny ekran, to po prostu przełącz się na konsolę (alt+ctrl+f2) i usuń ten plik “rm /etc/X11/xorg.conf”

1 polubienie

W sumie to nvidia-xconfig, przejęzyczenie popełniłem :grinning: Z nvidia-xconfig powstało to a z GUI to .

A to ciekawe że z takim plikiem coś ci nie działa, bo ja tam nic złego nie widzę…

Tak sobie teraz myślę, że mint przecież jest oparty o łubudubu, a ubuntu jedzie domyślnie na wayland, a nie iksach. Czy wobec tego podczas logowania możesz wybrać sesję xorg i sprawdzić czy problem jest taki sam?

Ubuntu tylko w 17.10 miało domyślnie uruchamiany Wayland ale był do wyboru z Xorg. 18.04 ma ze względu na stabilność ma domyślnie włączony Xorg a do wyboru jest również Wayland.

Problem jest w tym, że tylko Gnome(domyślne w Ubuntu) i KDE Plasma(Kubuntu) mają eksperymentalną obsługę Waylanda.

Na Cinnamona, póki co nie ma oficjalnych planów obsługi Waylanda

Wracając do problemu, to czy wykonałeś kroki z dzisiejszego newsu(dotyczy cinnamona 4 ale myślę że zadziała na 3.8)? https://www.dobreprogramy.pl/Linux-Mint-nowe-wiadomosci-o-Cinnamon-4.0-i-wydaniu-bazujacym-na-Debianie,News,89432.html

1 polubienie

Chodzi o zresetowanie środowiska graficznego z wyłączoną synchronizacją pionową? Nic to nie zmieniło u mnie. Zresztą, chodziło chyba o problem tego że synchronizacja chroni przed rwaniem obrazu, ale ogranicza ilość klatek, u mnie w sumie to klatki nie stanowią problemu tylko właśnie to rwanie.

Nie mam takiego wyboru przy logowaniu, mogę jedynie wybrać Cinnamon z renderowaniem z CPU.

Problem rozwiązany, szczegóły w zedytowanym poście otwierającym. Dziękuję wszystkim za pomoc i rady :grinning:

1 polubienie