
By now, most people know that KDE4 and later are severely hampered on NVidia hardware due to problems with the driver. This appears to be a problem with XRender feature primarily, though there are other things as well. I have in the past tried every single piece of the many pieces of advice out there – and none of them had any measurable effect for me. It all worked – it was just utterly, unusably slow.
News I saw today confirms the same problem is hitting the upcoming Gnome 2.6 and even the firefox browser.
Today, as I was reading more sites about it, I saw a possible hint that sounded worth a try – and I tried it – and it’s working perfectly – so I thought I would share it.
Switch to XGL. Unlike the AIGL favored by most distributions now, XGL does not make composition and render feature available through extensions (which is where NVidia seems to do an epic fail) – the actual X server is implemented directly in OpenGL – and then makes these features function by actually doing them in it’s existing OpenGL setup (yes I know this is an oversimplification but it covers the core reason why this seems to work).
On kubuntu hardy, getting xgl is as simple as: sudo apt-get install xserver-xgl
You need to reboot afterward as there is a bootscript that handles the switchover.
However, once I did that – KDE was a LOT faster. For a test, I enabled desktop effects – at first, nothing happened. Then I looked in the advanced settings and found it was set to use OpenGL – since my X-server is now already using OpenGL to render, this apparently does not work. So for a test, I threw it over to XRender – and suddenly they were working.
Frame rates were high – much higher than they had been under the Xorg server with XRender, the effects worked stably and without issues – there was no visual problems at all – and the desktop remained perfectly fast and responsive. In fact the only problem was the actual effects HAPPENED slow. This I am disinclined to blame on either XGL or XRender – I suspect this is simply a case of “don’t run desktop effects on a box with only 512MB of physical ram” – the card and display was handling it perfectly fine, the computer was just taking long to do this extra stuff (which I believe are done with lower priority to save resources for the more important applications).
I am pretty sure they are actually usable anyway – I will play more with them in the next day or two.
*Note: XGL is not considered stable, and being basically a fork is not a nice way of doing things. I have also heard reports of various shortcomings in it, some things that should work but just don’t. I haven’t used it long enough yet to find any – but you have been warned. It seems to make KDE4 usable – and right now, that is my highest priority, it may not be yours.
**Note: I do not suggest letting this blog be a suggestion to buy NVidia, I will never again – ATI has a FREE driver now, without problems and that works very well according to people – I can now get a card that meets my needs without a non-free driver, so I won’t be buying another NVidia and deal with nasty surprises like this again. I had no choice before – if you have one – choose free software. This entry is an attempt to help those who, like me, at a time when there was no other sufficient choice available were forced to buy an NVidia card and cannot upgrade at this time, to allow you to at least deal with the situation of the problems NVidia’s proprietary driver has with current software releases until the time you CAN upgrade.