Hello,
I replaced my Debian installation with OpenSUSE Leap 42.1 with Gnome 3.16 last week, and I have horizontal tearing pretty much everywhere. It is most noticable in videos. I tried playing videos off my PleX server with the web app, as well as through VLC and the build in ‘videos’ application. It’s most serious when playing videos, but I also see tearing when moving windows around or switching web pages. This was not an issue in my Debian/Gnome install, so it seems to me that it should be fixable. First some information about my setup:
Mobo: Asus z87 plus
CPU: Intel 4670k @ 4.4Ghz
GPU NVidia GTX 770
RAM: 16Gb G.Skill sniper 2400Mhz
3x LG 1080p IPS monitors
Things I have tried:
- Enabling triple buffering in the xorg configuration
- setting “PerfLevelSrc” to 0x2233 as a “RegistryDword” in xorg config
- enable “sync to vblank” and “Allow Flipping” in nvidia-settings
- set each monitor to 1920x1080 at 60.00hz in nvidia-settings
- set powermizer preferred mode to “Maximum Performance” in nvidia-settings
- Saved the above settings as an X config file, and placed it at “/etc/X11/xorg.conf.d/20-nvidia.conf”
- Installed CompizConfig, set refresh rate to 120, disabled “detect refresh rate”, enabled “sync to vblank”
- Set environment variable “__GL_SYNC_TO_VBLANK” to 1 in /home/user/.profile
- set Nvidia env variables to sync one particular display in /home/user/.profile
- added “nvidia-settings --load-config-only” to /home/user/.profile
- set “__GL_YIELD” to “USLEEP” in /home/user/.profile
- set “CLUTTER_PAINT” to “disable-clipped-redraws:disable-culling” in /home/user/.profile
- Added “{ ForceCompositionPipeline = On }” to 20-nvidia.conf in the “CurrentMetaMode” setting
- Switched back to nouveau driver (this only made it worse)
Another interesting note: after login, Xorg saturates a CPU core for a few minutes, during which time the effect is even worse.
I’ve read that gnome 3.18 is supposed to fix a vsync issue, possibly the same one I’m having, but I can’t figure out any way to get 3.18 on Leap 42.1.
If any additional information would be useful, I’ll see if I can find it. Thanks in advance if anyone has any ideas.
For reference, the contents of my 20-nvidia.conf file (This is the only relevant file in /etc/X11/xorg.conf.d that is not completely commented out):
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 352.79 (buildmeister@swio-display-x64-rhel04-15) Wed Jan 13 17:01:17 PST 2016
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 352.79 (buildmeister@swio-display-x64-rhel04-15) Wed Jan 13 17:02:24 PST 2016
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "InputDevice"
# generated from data in "/etc/sysconfig/mouse"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "yes"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "keyboard"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "LG Electronics LG IPS FULLHD"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 75.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 770"
Option "TripleBuffer" "True"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "DFP-0"
Option "metamodes" "DVI-D-0: 1920x1080_60 +5760+0, DVI-I-1: 1920x1080_60 +3840+0, DP-0: 1920x1080_60 +1920+0, HDMI-0: 1920x1080_60 +0+0 {ForceFullCompositionPipeline = On}"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
And also my /home/user/.profile:
# Sample .profile for SuSE Linux
# rewritten by Christian Steinruecken <cstein@suse.de>
#
# This file is read each time a login shell is started.
# All other interactive shells will only read .bashrc; this is particularly
# important for language settings, see below.
test -z "$PROFILEREAD" && . /etc/profile || true
# Most applications support several languages for their output.
# To make use of this feature, simply uncomment one of the lines below or
# add your own one (see /usr/share/locale/locale.alias for more codes)
# This overwrites the system default set in /etc/sysconfig/language
# in the variable RC_LANG.
#
#export LANG=de_DE.UTF-8 # uncomment this line for German output
#export LANG=fr_FR.UTF-8 # uncomment this line for French output
#export LANG=es_ES.UTF-8 # uncomment this line for Spanish output
# Some people don't like fortune. If you uncomment the following lines,
# you will have a fortune each time you log in ;-)
#if -x /usr/bin/fortune ] ; then
# echo
# /usr/bin/fortune
# echo
#fi
#nvidia-settings --load-config-only
export __GL_SYNC_TO_VBLANK=1
export __GL_SYNC_DISPLAY_DEVICE=DFP-3
export __VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE=DFP-3
export __GL_YIELD="USLEEP"
#export CLUTTER_PAINT=disable-clipped-redraws:disable-culling