Support us on Patreon to keep GamingOnLinux alive. This ensures we have no timed articles and no paywalls. Just good, fresh content! Alternatively, you can donate through PayPal, Flattr, Liberapay or Buy us a Coffee. You can also buy games using our partner links for GOG and Humble Store.

How To: An update on fixing screen-tearing on Linux with an NVIDIA GPU

By - | Views: 96,871
My original guide on how to help fix screen-tearing on Linux with an NVIDIA GPU is a bit dated, so here’s an even easier way.

Notes
You will likely need the 375.26 driver or newer for this to show up in "nvidia-settings".

These options may cause a loss in performance. For me personally, the loss is next to nothing.

It probably won't work with Optimus right now, but this may be fixed in future.

What to do
Previously you needed to edit config files, and it was a little messy. Thankfully, NVIDIA added options in nvidia-settings to essentially do it all for you. The options were added in a more recent NVIDIA driver version, so be sure you're up to date.

Load "nvidia-settings" and you will need to go to this screen and then hit “Advanced” at the bottom (my screenshot doesn't have the button, as this is what you see after you hit it):
image
Tick the boxes for “Force Composition Pipeline” and “Force Full Composition Pipeline” and then hit "Apply".

You can then enjoy a tear-free experience on Linux with an NVIDIA GPU. It really is that damn easy now.

Note: You will likely need to run nvidia-settings with “sudo” for the below to work.
If you want this applied all the time on startup (without needing to do anything), you can hit “Save to X Configuration File”. I have mine located at “/etc/X11/xorg.conf.d/xorg.conf” on Antergos, but your location may be different. I also recommend backing any existing xorg.conf file up if one exists.

This step isn't needed, but it's a fun and useful extra!
I also have mine set to a script and then to a keyboard shortcut, for those times when a game reverts the desktop to a low resolution after exiting, or when a game turns off a second monitor, this will turn it back on.

For that I manually set the resolution like so:
nvidia-settings --assign CurrentMetaMode="DVI-I-1:1920x1080_60 +0+0 { ForceFullCompositionPipeline = On }, HDMI-0:1920x1080_60 +1920+0 { ForceFullCompositionPipeline = On }"
Edit that for your details, like your resolution and monitor connections (you can see them by running "xrandr --query" in terminal), and then save it as an easy to remember filename. You can then set it as a custom shortcut, I use “CTRL+ALT+F4” as it’s not used for anything else.

This has been tested and works for me perfectly across Ubuntu Unity, Ubuntu MATE and Antergos KDE. Article taken from GamingOnLinux.com.
Tags: HOWTO, NVIDIA
10 Likes, Who?
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG, Humble Store and Paradox Interactive. See more here.
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
The comments on this article are closed.
63 comments
Page: «2/7»
  Go to:

CJOR 11 Jan, 2017
Quoting: GuestSorry for dumb question but if I have two monitors, I should set the Force Composition Pipeline /Force full composition pipeline - for both of them, right?
If you want avoid tearing in both, yes.
Mountain Man 11 Jan, 2017
Ah, I was hoping it was a real fix that didn't rely on hacky work-arounds.


Last edited by Mountain Man on 11 January 2017 at 5:37 pm UTC
tuubi 11 Jan, 2017
Quoting: Mountain ManAh, I was hoping it was a real fix that didn't rely on hacky work-arounds.
That fix is called Wayland.
Liam Dawe 11 Jan, 2017
Quoting: CJOROpening things graphically as superuser can bring problems
Never had an issue with it before and i've been using it for years.
Twomby 11 Jan, 2017
Wasn't able to upgrade to latest version. Got a bunch of issues with the installer under Mint 18.1. Reverted back to 367.57 for the time being, but will definitely try again when I have more time on my hands. Thanks for this article and for the support provided by commenters!
Alm888 11 Jan, 2017
Quoting: TwombyWasn't able to upgrade to latest version.

Maybe you should try official drivers from www.nvidia.com.

I know, this method has some drawbacks (like the need to manually reinstall the drivers from the console after every kernel update) but using this method you will get the top-quality latest drivers directly from the manufacturer (and thus will blip on their radar as a Linux user), not some potentially buggy distro-packaged drivers. I know, Fedora, for example, has outrageously bad nvidia drivers (partially that's because they support only "nouveau" and the quality of "rpmfusion" third-party repository is not that good).
tuubi 11 Jan, 2017
Quoting: Alm888
Quoting: TwombyWasn't able to upgrade to latest version.

Maybe you should try official drivers from www.nvidia.com.
Isn't that exactly what he did?

If your distro packages the latest proprietary drivers, there's rarely any reason to use the Nvidia installer instead. For Mint I recommend Ubuntu's semi-official Proprietary GPU drivers PPA.


Last edited by tuubi on 11 January 2017 at 6:24 pm UTC
jasondaigo 11 Jan, 2017
i'll do the ultimate test. dying light. that game was so shitty full of tearing. report later :-)
stan 11 Jan, 2017
For those who don’t know already, you can also use Compton to disable tearing, which may work with more than just the nvidia drivers:
compton --vsync opengl-swc --backend glx
Compton is a compositor so you’ll want to disable your window manager’s compositor first, if it has one. Alternatively, some WMs have an integrated vsync option (but in the case of Xfwm 4.12, it doesn’t work).
renegat0x0 11 Jan, 2017
I am wondering if the title/description is OK. If it is a fix for all nvidia cards, or if for some cards only. I found the solution several days ago and I must say that it not only fixes tearing but overall performance in Linux gaming. The stutter in Saints row the third was unbearable. For the past few months I have been using openbox with compton, but it is better to fix that in xorg. However if I plug/unplug monitors it may be cumbersome to rewrite xorg, or to be force to update the setting each and every time.

Still better than windows.

Yesterday I was backupping external drive storage, which took a while. Unfortunately for me windows decided to install updates and my process was blocked half-through. Thank you Microsoft.
While you're here, please consider supporting GamingOnLinux on:

Patreon, Liberapay or PayPal Donation.

We have no adverts, no paywalls, no timed exclusive articles. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!