Bugzilla – Bug 146792
slow libSDL screen updates w/ composite
Last modified: 2006-10-26 20:35:14 UTC
All SDL based 2D-applications (which are most 2D-games and emulators) show an absolutely pathetic performance, caused by slow screen updates. The problem can already be seen by the initial drawing of the window. The problem can be reproduced with the attached test program I wrote, which just makes screen updates for 10 seconds without drawing anything. I tested the program on two of my Linux installations: Debian unstable and SuSE 10.1 b1. Both use x86-64 , X.org 6.9.0 , SDL 1.2.9 , default radeon driver on ATI RV350 (Radeon 9600) AGP. On Debian I'm running a vanilla 2.6.14.2 kernel. On my Debian installation I get 230 fps (which is to be expected), on SuSE 10.1 only 2 fps! 2 fps is therefore the upper limit which any 2D-game or emulator can reach! Compiling SDL 1.2.9 myself from source didn't change anything. Running the application with aa-lib or DGA output resulted in normal speed, so it's definitly related to X11. I've installed the updated fontconfig-packages, which didn't change anything. Build instructions for testprogram: g++ -I/usr/X11R6/include -I/usr/include/SDL -D_REENTRANT -c testfps.cpp g++ -o testfps testfps.o -lm -lSDL -lpthread
Created attachment 65766 [details] program to test SDL screen update speed
Does replacing "radeon" with "radeonold" in /etc/X11/xorg.conf and restarting the Xserver afterwards help? We see many regressions in X.Org 6.9.0 radeon driver. radeonold is the old driver of SUSE 10.0. Not a fix, but at least we know then, that it's driver related.
As this involves the RADEON driver it may qualify for duplicate on #117163.
I've changed to the radeonold driver, but the problem is still present.
Hmm ...
After reading #117163 I tried a lower screen resolution (1024*768 instead of 1600*1200), but it didn't help...
I can reproduce this on my ATI Radeon X850 XT (5fps). After removing the 'Option "Composite" "On"' line in /etc/X11/xorg.conf, I get 420 fps!
Can you verify this?
Removing 'Option "Composite" "On"' brought the speed up to 82 fps on my system, which is good enough for my purposes, but still just 1/3 of the framerate on my Debian installation. After comparing the xorg.conf of both systems I added 'Load "dri"' in die Modules section and now get the same 230 fps as on Debian.
Ok. Just curious. What does adding Composite again in combination with 'Load "dri"' give you? Still 2fps?
Yes, still 2 fps
Ok. Thanks.
This might already have been fixed by a XAA patch in Beta4. Please test.
I installed these packages: xorg-x11 6.9.0-10 xorg-x11-driver-video 6.9.0-13 xorg-x11-libs 6.9.0-10 xorg-x11-server 6.9.0-10 Are these the beta4 Versions? With these packages the problem is still present.
Search in the changelog of xorg-x11-server for this entry ------------------------------------------------------------------- Thu Feb 2 19:43:12 CET 2006 - sndirsch@suse.de - p_xorg-compositefastpath-4320.diff: * improves Fastpath from XAAComposite (Bug #117163) But it doesn't matter since we decided to no longer enable Composite by default anyway. Therefore I'm closing this one now as FIXED.
This issue isn't fixed, it just doesn't surface any more. I'll look into this when I've got some time.
Can you test this issue once more with Xorg 7.1? It has a couple of improvements that might change the behavior here. Note that we typically don't have Composite enabled by default any more.
Just for the record. We never had it enabled by default.
I just tested it with 10.2 Alpha5 and default X.org config: 82 fps without Composite (not bad, but not really good either) 64 fps with Composite Apart from X11 the Alpha5 includes an update to libSDL (now 1.2.11), which may have changed some things. Regarding the non-Composite speed: my current Debian unstable with X.org 7.1 and libSDL 1.2.11 is significantly slower than before, too. So it doesn't seem to be a SuSE specific problem. And since both speeds are still acceptable, we can close this bug.