Ubuntu – Screen tearing in Ubuntu with Nvidia/Intel graphics

nvidiascreentearing

I really hope someone here can help, because I'm very close to giving up and moving back to Windows. I have an MSI GT70 Dominator with an i7-4710MQ 2.5 GHz, Intel HD 4000 (I'm pretty sure) integrated graphics card, and a GeForce GTX 970M/PCle/SSE2 dedicated graphics card. I started with a stock install of Ubuntu 14.04.3, and there is terrible screen tearing in every program I've tried, from Chrome to Minecraft to L4D2. I'm using the proprietary Nvidia drivers (version 346.82 from nvidia-346) because I've heard they get the best performance. By screen tearing, I mean that it's as though vsync is off- when something is moving, you can see horizontal lines where the frames are off.

I've tried going to Nvidia X Server Settings to turn on "Sync to VBlank", but the problem persists.

I tried installing Bumblebee as well, but when using the optirun command to open a browser and going to a Youtube video, the screen tearing is still there.

I've also tried going to usr/share/lightdm/lightdm.conf.d and editing the 5-xserver-command.conf to have the -bs option.

After some advice from reddit, I upgraded to 15.04, but that didn't work.

I tried setting my Nvidia power settings to high, no luck.

I've tried Compton and Compiz, neither did squat.

In nvidia-settings, the X Server Display Configuration, there is no screen displayed in "Layout", X Screen 0 is the only thing selectable in "Model", and whenever I try to Save to X Configuration File, it says "Failed to generate X config file!"

I've tried this link, nada.

I've rebooted after every attempted fix. I really want to use Ubuntu, but if this screen tearing persists, I might just have to go back to Windows, it's horribly distracting. Please, please, please help me. Any help anyone can give will be greatly appreciated, thanks!

Best Answer

Create /etc/X11/xorg.conf.d/20-intel.conf containing

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "TearFree"    "true"
EndSection

That should fix everything.

Source is https://wiki.archlinux.org/index.php/Intel_graphics#Tear-free_video

Note: This only works if you're using bumblebee.


Note from comments: Since 10.10 the config file directory is now /usr/share/X11/xorg.conf.d

Starting from Ubuntu 16.04 LTS * you can use the following script to switch between NVIDIA and INTEL's graphics cards and besides it corrects the video/screen tearing on INTELs environment: https://github.com/bauca/graphics-switcher

Related Question