Quake Wars Performance Across Distros
I've been distro shopping lately so I've been able to benchmark ETQW across four different distributions, and they do have an impact on performance.
Core 2 Duo 2140 @ 2.66 Ghz
Nvidia Geforce 8800gs with the 173 series drivers.
3gb DDR 800
Not an ultra high end system, but enough to run the game for competition. Splash Damage recommends a 1000hz preemptible kernel, but I went with the stock kernels on all distributions and tested the difference in preemptible kernels on two.
Game was set exactly the same across distros as I moved my /home folder with me. Settings were 1280x1024 at low quality with all special effects turned off (my preference for competition). The timedemo used was during a heavy firefight indoors and outdoors.
The distributions: Ubuntu 8.04, Debian Sid, Arch Linux, and OpenSUSE 11.0. All distributions were run with 2.6.25 kernels.
Results with stock kernels:
Debian Sid: 74.2 FPS
Arch Linux: 71.4 FPS
Ubuntu 8.04: 65.8 FPS
OpenSUSE 11.0: 60.5 FPS
OpenSUSE takes a beating, but I think it's because of the services it automatically starts (Beagle, Pulseaudio). Also, none of the distributions were run with any desktop effects (compiz etc) and were run in entirely 2d mode. All distros used the full GNOME desktop.
Now, the interesting thing is that Splash Damage recommends high kernel hz and preemption, but Debian wins with a completely unpreemptible stock kernel at 100hz. I have, however, noticed a lot of jerkiness on Debian with the stock kernel, so having the preemption might help with that. I did have a chance to benchmark across kernels on Arch Linux and Debian.
Debian Stock: 74.2 FPS
Debian Custom Low Latency Desktop with 1000 Hz: 69.5 FPS
Debian Custom with Realtime Patches: 53.5 FPS
Notice the performance hit using the RT patches, you pay the price for that realtime responsiveness if you game on the same box, not that anyone would run RT on a gaming system, but since I do pro audio it's interesting.
Now for Arch Linux:
Arch Stock with Voluntary Preemption and 300hz: 71.4 FPS
Arch Custom with Full Preemption and 1000hz: 67.2 FPS
Again, increasing the hz decreases the FPS, but might make the game more responsive in terms of gameplay. Also, both the Debian and Arch stock kernels were compiled for i686 while the customs were compiled for Core 2 Duo, indicating that this difference might have an effect too.
So the conclusion I draw is that the distro you use can have as much as a 20% difference in performance. The greatest impact seems to come from background services, as Ubuntu and OpenSUSE took the biggest hit in performance, while the piecemeal distributions did a bit better (I tend to not install services I don't need). Also, choice in kernels may impact your gaming, while no preemption benchmarked the game the fastest, I noticed an increase in smoothness when played on a kernel with preemption and at least 300hz (in the case of Arch Linux, I couldn't tell the difference between 1000 and 300).
Also, it's important to say that the Windows client with the same hardware consistently benchmarked at 102 FPS in Windows XP, indicating a need for further optimization on the Linux side. I have heard that recompiling a special SDL for ETQW might help, but if you're really serious about performance or have a mid to lower spec system and want to play the game at a higher resolution installing XP might be the best bet.
Last edited by nonfatmatt; 10-08-2008 at 01:59 AM.