nVidia flickering and tearing on opensuse 12.3

Hello

I recently upgraded a 12.2 installation (working well) to 12.3 (64bit). Since then I have issues with the proprietary nVidia driver 310.32.

All Desktop effects are slow - it’s subjective, but definitely has video tearing, flickering etc. A most bizarre effect is that regions coloured in certain shades (different alpha values) of yellow flicker as though being continuously redrawn - slowly. This happens in firefox and google chrome. I suspect it has not much to do with the programmes, other than that they use a specific version of GTK or other widget library perhaps. It’s just they are the only ones with those shades of yellow rectangles. Watching a DVD - directly off disc - shows up video tearing in VLC and Kaffeine. Switching KDE’s Desktop Effects off still leaves the flickering yellow colour issue. So I suspect it’s not the effects themselves that are the problem, but something else lower level.

The hardware in question is a Lenovo W530 with an integrated intel HD4000 and a discrete K2000M nVidia card, 16GB ram, 240GB SSD, i7 3820QM etc. I suspect the hardware is more than capable of decent graphics output. I usually notice the symptoms when in DUAL (or single external) monitor mode using a display port output and the discrete nVidia card with it’s proprietary driver. Output from glxinfo seems to indicate that the driver and corresponding openGL libs are all loaded correctly.

I have tried various things without any measure of success. I upgraded to a stable 3.8.5 kernel, no change. I have completely uninstalled all nVidia related packages., followed by a zypper dup to get the system as close as possible to a clean install. I then reinstalled the nVidia driver from the opensuse nVidia repo. I rebooted at the various stages to ensure proper unloading of modules etc.

All to no avail.

How do I proceed to diagnose where the performance bottlenecks, and/or misconfigured components are?

Any help will be greatly appreciated.

Thanks
Malte

I looked up your video card and it says you can use the latest driver, now up to 310.44. I also see that you need to add yourself in YaST to the user group called** video** to get all features to work. Have a look at the new driver here: https://forums.opensuse.org/blogs/jdmcdaniel3/installing-nvidia-video-driver-hard-way-29/

Thank You,

@jdmcdaniel3

Thanks for that. I had the 310.32 driver running fine under 12.2 with it’s version of KDE. That’s the current driver in the opensuse repo. It might be a combination of that driver and newer KDE / kernel in 12.3 perhaps. Yesterday I played a DVD using the integrated Intel HD 4000 chip without any tearing. So I definitely think it’s related to NVIDIA / KDE / kernel combo.

I will upgrade to the 310.44 driver as you suggested and see if that helps.

Thanks
Malte

Update

I have installed the new 310.44
driver from the repo, it was released a few days ago. This has not improved the situation.

So, back to the original question of: How to diagnose what’s been misconfigured?

Any ideas are most welcome.

Thanks
Malte

Please post the output of:

glxinfo | grep render

You might have to install the package “Mesa-demo-x” for this to work.

Did you follow this suggestion:

Note you need to log out/in of GNU/Linux (not just your desktop) to apply a user group change. The easiest way is often to simply reboot afterward.

I have checked and all relevant users are members of the video group.

the glxinfo:grep render output is as follows:

direct rendering: Yes
OpenGL renderer string: Quadro K2000M/PCIe/SSE2
GL_NV_conditional_render, GL_NV_copy_depth_to_color, GL_NV_copy_image,
GL_NV_parameter_buffer_object2, GL_NV_path_rendering,
GL_NVX_conditional_render, GL_NVX_gpu_memory_info,
GL_OES_depth_texture, GL_OES_element_index_uint, GL_OES_fbo_render_mipmap,

There has been some progress. The flickering yellow shades were caused by certain gamma/contrast settings in the NVIDIA driver and the monitor. Changing the contrast on the monitor by one or two increments stopped the flickering of certain colours. Then after more experimenting I discovered that adjusting the gamma on the driver also stopped the flickering. I chose the gamma adjustment finally because the increments and corresponding changes in colour are almost imperceptible as opposed to the monitor’s contrast adjustment. It’s a 6-bit IPS panel (Dell U2312HM) and after reading up a bit I found out that 6 bit panels use dithering to achieve (TrueColor, 16.7 million shades) - which might explain flickering in some dithered colours, i.e. a hardware problem. Anyway that has been resolved.

As for the video tearing and generally dismal OpenGL/Desktop effects performance I am still in the dark…

Malte

I found a suggestion to create a file in the folder /etc/X11/xorg.conf.d called 20-nouveau.conf with the following text inside and saved there:

Section "Device"
    Identifier "nvidia card"
    Driver "nouveau"
    Option "GLXVBlank" "true"
EndSection

Restart and see if it makes any difference for video tearing.

Thank You,

But that would force X to use the “nouveau” driver.
For which to work he would have to uninstall the “nvidia” driver…

@maltev:
What are your Desktop Effects “Advanced” settings?
Maybe switching between “OpenGL”/“XRender” or “Raster”/“Native” would make a difference?
Also try switching the VSync option on/off.

Your glxinfo output does look correct…

Or maybe you find something that helps you here:
Desktop Effects Performance - KDE UserBase Wiki

@wolfi323

Thanks for the feedback. I agree the nouveau driver is not the way to go. I did read through the link you pasted and I tried a thing or two. It also lead me to the “missing” PowerMizer settings - which you kindly helped me resolve (https://forums.opensuse.org/english/get-technical-help-here/hardware/485814-nvidia-settings-powermizer-options-gone.html).

Regarding:
Maybe switching between “OpenGL”/“XRender” or “Raster”/“Native” would make a difference?
Also try switching the VSync option on/off.

I have tried all permutations of those settings and still have the same issues.

After some more reading It seems however that it’s a known problem to do with KWin and has been or will be resolved in KDE 4.11. Pity.

I have also upgraded to Tumbleweed’s Kernel 3.8.6-2 - clutching at straws…no luck there either.

Just to confirm: I am under the impression that restarting the X Server (I use Ctrl-Alt Backspace Backspace) is sufficient to apply driver settings changes? Or does one need to reboot? Some nvidia-settings changes appear to be effective just by “Apply”-ing them. Depends on the settings I suppose.

Thanks
Malte

Sounds like you also have read this thread: http://forum.kde.org/viewtopic.php?f=17&t=108797 :wink:
Did you try to run the suggested mplayer line in comment #6 there?

mplayer -vo gl video.avi

(mplayer is available from packman)

Just to confirm: I am under the impression that restarting the X Server (I use Ctrl-Alt Backspace Backspace) is sufficient to apply driver settings changes? Or does one need to reboot? Some nvidia-settings changes appear to be effective just by “Apply”-ing them. Depends on the settings I suppose.

Yes, restarting the X server should be sufficient in all cases… (or switching to runlevel 3 and back to 5)

I’ve been having tearing issues in OpenSuSE 12.3 as well, stock gnome deps (well, updates from 12.3 repo ofc) with cinnamon and nemo. Restricted formats stuff installed of course, 319.12 beta blob from nvidia and a Gigabyte Geforce 660.

I’ve tried using gl for the rendering and for some things, this does fix the tearing, but for others it continues. Currently watching an .ogm and there is tearing. Not quite sure what to do or if this is a bug to report, etc.

Well, this was about KDE originally, where it’s caused by compositing.
No idea about cinnamon, though. Does that even use compositing?

You mention that you’re using the beta driver. Maybe that’s causing the issue (wouldn’t be the first time, that’s why it’s called beta :wink: ).
I’d suggest you to try to use the stable one instead and see if the tearing is still there then.

I found this thread in the ubuntu forums about video tearing on cinnamon:
Screen Tearing/Mode Lines

Since it’s marked as solved, maybe you can find something there which helps you…:wink:

Thanks for the help, although after googling and poking about for some time I’ve come across a post that did end up helping.

For cinnamon/gnome 3 users that are experiencing tearing but their drivers/vsync options are in check, please throw this into the command line:

  1. sudo vi /etc/environment
  2. Paste in the following:

CLUTTER_PAINT=disable-clipped-redraws:disable-culling
CLUTTER_VBLANK=True

  1. :wq

And that’s it. I know that Cinnamon uses a forked window manager but I believe it still takes args from /etc/environment :slight_smile: Also, I set my opengl settings to “high performance” and use gl @ smplayer for video out :slight_smile:

Thanks CommonOddity.

This trick got rid of the pesky tearing while scrolling in firefox.