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):
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:
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.
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):
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.
Some you may have missed, popular articles from the last month:
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.
0 Likes
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
Last edited by Mountain Man on 11 January 2017 at 5:37 pm UTC
0 Likes
Quoting: Mountain ManAh, I was hoping it was a real fix that didn't rely on hacky work-arounds.That fix is called Wayland.
2 Likes, Who?
Quoting: CJOROpening things graphically as superuser can bring problemsNever had an issue with it before and i've been using it for years.
0 Likes
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!
0 Likes
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).
2 Likes, Who?
Quoting: Alm888Isn't that exactly what he did?Quoting: TwombyWasn't able to upgrade to latest version.
Maybe you should try official drivers from www.nvidia.com.
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
0 Likes
i'll do the ultimate test. dying light. that game was so shitty full of tearing. report later :-)
0 Likes
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.
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.
0 Likes
Not working on my optimus laptop, I have the same problem @Twomby has, even with the latest drivers (375.26)
I think that I'll need to wait until xorg server 1.19 comes out to stop seeing the damn annoying screen tearing
I think that I'll need to wait until xorg server 1.19 comes out to stop seeing the damn annoying screen tearing
0 Likes
See more from me