Eliminate Screen Tearing in Linux

Screen Tearing is caused by GPU sending to many frames for monitor to display, thus causing breaking image effect.

As you can see in picture, it looks like it is sliced and out of place, not synced with the rest of the picture. Tearing is not present in all Linux distros and it depends a lot on what Graphic Card you have. For example, we tested Ubuntu Budgie with laptops that have integrated Intel and AMD cards and there was no screen tearing present. Budgie desktop is managed by mutter which eliminates it, however this isn’t always the case. For example, I bought new RX 550 to replace my old AMD 7750HD graphic card. While the 7750 was recognized by the Mutter easily, once I added RX 550 to my machine, the screen tearing was there.

Here’s how I fixed tearing:

Open you terminal. Type sudo nautilus ( Nautilus is default file manager in Ubuntu Budgie, but if you are using other desktop environment (XFCE,LXDE etc) the default file manager may be different)

Navigate to: /usr/share/X11/xorg.conf.d/ (if xorg.conf.d folder doesn’t exist, create it)

After that make new file or edit file with name 20-radeon.conf. In it, add these options:
Section "Device"
Identifier "Radeon"
Driver "radeon"
Option "TearFree" "on"
EndSection

You can add additional options to the config file for better performance.

If you are using NVIDIA then check out this awesome guide written by Gaming On Linux staff member Liam : https://www.gamingonlinux.com/articles/how-to-an-update-on-fixing-screen-tearing-on-linux-with-an-nvidia-gpu.8892

For Intel GPU’s, the steps are same as with AMD cards Go to: /usr/share/X11/xorg.conf.d. Edit or create file called 20-intel.conf. In it add these options:
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "TearFree" "true"
EndSection

After you’ve added the options above, according to your GPU mode, use the following to restart X.org and get the settings in effect.

sudo service lightdm restart

(If it is not default, replace lightdm with name of display manager you use)

For more options and further optimization tips check out Arch Wiki, which in itself is treasure trove of useful information.

https://wiki.archlinux.org/index.php/Intel_graphics

https://wiki.archlinux.org/index.php/ATI

You can also use this YouTube video to check if everything is working correctly

Nikola Stojic
Law student, entrepreneur, writing about startups and tech, StartupBlink Ambassador

4 Comments

  1. Ubuntu 16.04
    Radeon card
    I created a file named 20-radeon.conf, but I didn’t delete 10-radeon.conf, which was already there. I don’t know exactly what else I did wrong, but the new conf file apparently created a conflict with 10-radeon.conf, which resulted in a total mess-up of the Ubuntu system. So not only was there no improvement on the video image, but, as soon as I restarted my pc, I lost access to my Ubuntu partition altogether. I had to manoeuvre through the boot terminal, which took me about four hours to learn, to manually delete 20-radeon.conf, and finally regain access to my Ubuntu partition.

    1. Hi Av,
      Thanks for the comment. This can usually happen if there is the file that already contains the same thing, or there is something missing from the config file. If added and it can’t be read it will result in some kind of error. Aside from that it depends on which radeon card you tested config. Also 16.04 still contained the 10-radeon which isn’t the case for later releases and the release itself wasn’t that much friendly for radeon cards.

      1. Hello again.
        So do you suggest I modify 10-radeon.conf, adding only the missing line
        (Option “TearFree” “on”)?
        Do I risk making the conf file unreadable if I add that line?

        Any other suggestions?

Leave a Comment

Your email address will not be published. Required fields are marked *

Eliminate Screen Tearing in Linux

by Nikola Stojic time to read: 2 min
4