KDE 4.2 (trunk) Now Rocking On My Thinkpad T61!!!
Friday October 3, 2008
My work laptop and main computing device is a Thinkpad T61 with an nVidia Corporation Quadro NVS 140M (rev a1) card. It’s been a frustrating last year in trying to run a KDE4 desktop as my main work and development environment because of the problems with the proprietary nVidia drivers that show up in KDE4. However, this little post is definitely more of a Huzzah!!! than a disgruntled grousing session. Lord knows we’ve had plenty of those. =:)
Thanks to the folks at nVidia who are diligently working on improving the problems in their drivers!!
Anyway, I’ve followed everything I could find on Lemma’s techbase pages and in the nVidia forums, but nothing has worked. Until now!
I’m running the latest beta from nVidia (177.78). I also discovered that for me, contrary to what everyone else seems to be saying, if I use InitialPixmapPlacement=2, performance is MUCH worse than if I use InitialPixmapPlacement=1. Using the benchmarking tools from the techbase page, I found that on the Penrose Tiling test, using Opera, the Canvas test would take up to 30 seconds for me if I did “nvidia-settings -a InitialPixmapPlacement=2 -a GlyphCache=1” before running it. However, if I did “nvidia-settings -a InitialPixmapPlacement=1 -a GlyphCache=1” instead, then the Canvas test only took around 2.5 seconds. WOW! So I added “nvidia-settings -a InitialPixmapPlacement=1 -a GlyphCache=1” to my X startup script and was very pleased to discover that KDE 4.2 now is VERY usable on my little laptop!!! Again, HUZZAH!!!
For completeness, then, here is the Screen section from my xorg.conf:
Section “Screen”
Identifier “Screen0”
Device “Device0”
Monitor “Monitor0”
DefaultDepth 24
Option “RenderAccel” “True”
#Option “RandRRotation” “True”
Option “UseEdidFreqs” “False”
#Option “UseInt10Module” “True”
Option “TwinView” “1”
#Option “TwinViewOrientation” “Clone”
Option “TwinViewXineramaInfoOrder” “DFP-0”
#Option “UseCompositeWrapper” “True”
Option “AddARGBGLXVisuals” “True”
Option “DisableGLXRootClipping” “True”
Option “DamageEvents” “True”
Option “TripleBuffer” “True”
Option “UseEvents” “True”
#Option “DynamicTwinView” “True”
Option “FlatPanelProperties” “DFP: Scaling = Centered; CRT: Scaling = Centered, Dithering = Enabled”
Option “OnDemandVBlankInterrupts” “True”
Option “PixmapCacheSize” “2000000”
Option “AllowSHMPixmaps” “False”
Option “BackingStore” “True”
#Option “NvAGP” “3”
#Option “ConnectedMonitor” “DFP”
Option “metamodes” “CRT: 1680×1050 +0+0, DFP: 1680×1050 +0+0”SubSection “Display”
Depth 24
EndSubSection
EndSection
To be honest, I am not 100% sure which of the recently-changed variables in my setup have resulted in this improving so drastically–whether the new nVidia driver beta (177.78), the xorg.conf changes, or the InitialPixmapPlacement=1 change–but the end result is that I’m now able to use KDE 4.2 (trunk) quite happily and I’m thoroughly stoked about it.
Hope this helps some other poor soul out there. Oh–also, does it sound far-fetched that IPP=1 would work better for me than IPP=2??
[…] Dragor: […]
Same laptop, driver. I did not have real problems on it, except the usual ones, many of those being fixed in trunk. But indeed the 177.78 driver is much better then the previous ones, I have one main problem with that: starting X (kdm) takes a lot. Do you see the same? Also does suspend to disk work for you with that xorg.conf?
Hiya Andras! =:) Yeah, I noticed that X takes a REAL long time to start. I’m pretty sure it’s because of all the extra stuff they’re doing because it’s a beta driver. And sadly, I can’t get suspend to disk or suspend to ram to work reliably for me. I’ve given up on it, to be honest. =:/
your gpu in your laptop is equivalent to the geforce 8400m, and as far as I’m aware, it tends to share sysmem (through turbocache) hence why ipp=1 is faster than ipp=2 (1 pixmaps are created in sysmem, 2 pixmaps are created in vidmem).
BTW if you use ipp=1 then the glyphcache does not work (cached pixmaps have to stay in vidmem)
I have to say though that I’m surprised it works well without a glyphcache. For me (8600m) kde crawls if it is disabled. Do you have font subpixel hinting enabled? ‘cos that is the only way I can see it being fast (based on my experiences but I haven’t tried different settings recently)?
Wow, I hadn’t tried that benchmark for a while it used to take tens of seconds, now it is faster than the SVG test at ~1.0 seconds. 🙂
Window resizing still isn’t smooth though.
Hiya @txf! Wow, thanks for the information!! This is awesome! To answer your question, in KDE4 system settings > Appearance > Fonts, I have “Use anti-aliasing” Enabled, with sub-pixel rendering turned on (RGB) and “Hinting style” set to Slight. Are you saying that I’d get better performance if I didn’t have subpixel hinting enabled?
You get better performance without subpixel hinting, but it also becomes quite a bit more unpleasant to read :/
The nvidia pple said they had some problems dealing with Qt4 font aa, but now I’d say it is mostly fixed.
I’d say that if you’re happy with the way it looks and performs then leave it the way it is. If you want full hinting then you’ll probably start paying a price in not having the glyph cache.
However I absolutely cannot have ipp=1 as plasma and heavy text pages in konq become impossible to use. So, I guess what I’m saying is to play around with it, as I dunno how useful my advice is…
[…] KDE 4.2 (trunk) Now Rocking On My Thinkpad T61!!! […]
Thank you. I took your post as a “kick in the rear” to finally install some newer drivers than the ubuntu-build-in ones.
I actually could work pretty well beforehand (8600 GTS, obviously not “on-board” 😉 ) but now it’s so much better…
*oftoadmirethenewgraphicsgoodnes*
[…] crap. KDE 4.2 frickin’ flies! And contrary to my previous post, now if I set IPP=2, everything’s blazing fast and I’m actually able to resize konsole […]
Where is that x startup script? because those settings help too here
@Wolf Beat: The only thing of relevance is the nvidia-settings line I’ve listed here. I put it in my ~/.xsession and have kdm start my “Default” session instead of “KDE”, etc.