I am using an MSI GL62M 7REX laptop which has a GeForce GTX 1050 Ti Mobile graphics card. When I was using Ubuntu 19.10, I was able to deal with screen tearing in the following way:
- Similarly to this answer, I opened the terminal and typed
sudo gedit /etc/default/grub
which opened gedit with the following contents:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
I edited
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
toGRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1"
and saved the file.Typing
nvidia-smi
gave back the following details:
Thu May 14 12:39:03 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 435.21 Driver Version: 435.21 CUDA Version: 10.1 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 105... Off | 00000000:01:00.0 Off | N/A |
| N/A 51C P0 N/A / N/A | 247MiB / 4042MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1180 G /usr/lib/xorg/Xorg 45MiB |
| 0 1717 G /usr/lib/xorg/Xorg 105MiB |
| 0 1972 G /usr/bin/gnome-shell 89MiB |
+-----------------------------------------------------------------------------+
Now I knew that the main version of my Nvidia driver was
435
which I needed for the next step.According to this instruction (post #5), I created a
.conf
file in/etc/modprobe.d/
which contained the following line:options nvidia_435_drm modeset=1
.After that, I ran
sudo update-initramfs -u
and rebooted my machine.sudo cat /sys/module/nvidia_drm/parameters/modeset
then returnedY
and the problem was fixed.
After my upgrade to Ubuntu 20.04, these options are still the same. The kernel parameter is still intact and the .conf
file in /etc/modprobe.d/
still exists. Furthermore, the number of the Nvidia driver is still correct but screen tearing reoccurs.
Trying to edit the Nvidia X Server Settings does not help because the look like this:
This was the reason why I tried the other solution described here which worked for me.
What can I do to fix this problem using Ubuntu 20.04?
I was able to solve the problem by selecting the most recent driver
440
(the following picture is from this source; that is why there is a different GeForce GTX model displayed):Then, I edited the
.conf
file by replacingoptions nvidia_435_drm modeset=1
withoptions nvidia_440_drm modeset=1
and restarted the computer.