It's somewhat irrelevant when you consider that when you're playing a game (or running a 3D benchmarking program), the toolkit is not going to be doing much (no*one really does any large screen updates unless you're switching tabs, scrolling pages at a time, or playing solitaire anyway).
Memory consumption is far more interesting, so I did a test on my own PC. First, I installed KDE, which isn't to my taste, so I don't really use it. Then, I did clean log ins on Openbox (that known memory hog!), KDE, and Gnome, dumping the
free -m results into a file for each. Then I opened up a terminal window, and did:
Code:
[fudje@blackberry ~]$ for i in memory-*; do echo "$i:"; cat "$i"; done
memory-gnome:
total used free shared buffers cached
Mem: 1501 1292 209 0 0 851
-/+ buffers/cache: 441 1060
Swap: 4604 1 4603
memory-kde:
total used free shared buffers cached
Mem: 1501 1487 13 0 0 955
-/+ buffers/cache: 532 969
Swap: 4604 1 4603
memory-openbox:
total used free shared buffers cached
Mem: 1501 984 516 0 0 758
-/+ buffers/cache: 226 1275
Swap: 4604 1 4603
[fudje@blackberry ~]$
Now the numbers we're interested in here are the used and free amounts in the -/+ buffers/cache section. The results speak for themselves - With Openbox 226MB is used, Gnome 441MB, and KDE 532MB. Make Gnome 467MB because I don't run nautilus 100% of the time, and that takes an extra 26MB or so.
That's hardly an insignificant difference – especially on my system with its amazing 2GB minus 512MB for the on board graphics, and another 10MB or so for what I guess is kernel overhead. But it clearly can't be the cause for the slowdown on Ubuntu, because you have to install the Kubuntu variant to even
get KDE. So, what causes it?
Welll, a quick check shows that on the stock Debian kernel, known to be best suited to workstation or small server use and
not low latency gamer's desktopping, the kernel's timer frequency is 250Hz, ‘a good compromise choice allowing server performance while also showing good interactive responsiveness,’ whereas the "generic"
Ubuntu kernel is set to 100Hz, ‘a typical choice for servers, SMP and NUMA systems with lots of processors that may show reduced performance if too many timer interrupts are occurring,’ which is not really the best for gaming… especially accelerated 3D gaming which is somewhat interrupt driven. My self-rolled kernel is set to 1000Hz, the recommended frequency for low-latency desktop systems.
It's not really going to make up all the difference, but consider you often want more than 100 interrupts per second
just for the one game. If you're using Ubuntu, do yourself a favour and switch to the 'linux-preempt' kernel