Bug 26892 - Performance regression r600 in KMS vs UMS
Summary: Performance regression r600 in KMS vs UMS
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-04 13:58 UTC by Matthias Bläsing
Modified: 2011-03-08 10:04 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
gtkperf runs (2.14 KB, text/plain)
2010-03-04 13:58 UTC, Matthias Bläsing
no flags Details
Xorg Log for the KMS case (81.35 KB, text/plain)
2010-03-04 13:59 UTC, Matthias Bläsing
no flags Details
Xorg Log for the UMS case (128.38 KB, text/plain)
2010-03-04 13:59 UTC, Matthias Bläsing
no flags Details
gtkperf runs after patch (1.10 KB, text/plain)
2010-04-03 03:10 UTC, Matthias Bläsing
no flags Details
gtkperf run without shadowfb (1.04 KB, application/octet-stream)
2010-04-04 09:39 UTC, Matthias Bläsing
no flags Details

Description Matthias Bläsing 2010-03-04 13:58:31 UTC
Created attachment 33768 [details]
gtkperf runs

Hello,

I'm running the xorg-edgers repository and noticed a very sluggish behaviour under X11. The regression went away when running without KMS.

I did four gtkperf runs (see attachment) and the rendering time in KMS mode is significantly higher than in the UMS case.

I'll also attach the Xorg-Logs from the UMS and KMS case.

Thanks

Matthias Bläsing
Comment 1 Matthias Bläsing 2010-03-04 13:59:12 UTC
Created attachment 33769 [details]
Xorg Log for the KMS case
Comment 2 Matthias Bläsing 2010-03-04 13:59:32 UTC
Created attachment 33770 [details]
Xorg Log for the UMS case
Comment 3 Michel Dänzer 2010-03-04 15:00:09 UTC
xserver 1.7.x or newer is recommended for KMS.
Comment 4 Alex Deucher 2010-03-15 09:50:12 UTC
does xf86-video-ati from git master help?  specifically this commit:
http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=488c9fd8300505cc6c0c2f8f0f00849f27cc5d63
Comment 5 Matthias Bläsing 2010-04-03 03:10:59 UTC
Created attachment 34642 [details]
gtkperf runs after patch

Jepp - this makes UMS and KMS even from the perspective of gtkperf. I just switched my grub loader to enable KMS by default.

There are still area's where UMS feels(!) superior in my setup (that is an older X.org release). But this bug can be closed. Thanks!
Comment 6 Matthias Bläsing 2010-04-04 09:39:19 UTC
Created attachment 34662 [details]
gtkperf run without shadowfb

The obsoleted run was taken with shadow framebuffer only. My kernel was missing the *rlc.bin firmware part and it looks, as if the missing 3d acceleration made it faster.

So the bug is still there!
Comment 7 Matthias Bläsing 2010-04-04 09:46:42 UTC
This was tested with kernel 2.6.33.1, mesa and mesa-drm from xorg-edgers and the xorg-driver head version.
Comment 8 Ancoron 2010-04-20 15:09:23 UTC
I'm also suffering from the massive performance degradation switching from UMS to KMS. I just switched from KMS back to UMS using a Radeon X1550 with a single 1680x1050 head because the desktop effects are unbearably slow on that system (and the setup is fine according to all logs).

I miss the high resolution VTs and the nice plymouth boot splash, but in the end I have to get some work done, that's why I switched to Linux years ago.

And on another machine (Radeon HD4770) I too have this issue. I thought that graphics card would be fast enough to display the KDE4 desktop cube animation smooth enough but it feels like being somewhat around 15-20FPS and with UMS it was as smooth as it can get I think even under high workloads. With KMS however the CPU workload influences the graphical performance of the system much more than it does with UMS. Although this is a very subjective thing I'm sure it would be measurable.

Both machines I currently use show this issue with kernels 2.6.32+drm33 (ubuntu lucid), 2.6.33 and 2.6.34-rc4.

So this is a basic issue for KMS, regardless of the actual GPU chip. As I regularly look at the performance measurements over at phoronix I see that KMS focusses on the more complex work, rather than making the simple things faster (that's an explanation why glxgears on my HD4770 runs about 500% faster with UMS).
Comment 9 Clemens Eisserer 2010-04-22 11:02:42 UTC
I also suffer from a very slow KDE4 desktop (makes no difference wether composition is on/off) with my RV670 when using KMS.
Overall KMS seems to have quite high overhead :(
Comment 10 kaillasse91 2010-09-15 18:47:45 UTC
(In reply to comment #4)
> does xf86-video-ati from git master help?  specifically this commit:
> http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=488c9fd8300505cc6c0c2f8f0f00849f27cc5d63

Hello,
I'm ok to test but I want to know if it is still necessary as it will certainy take me time and don't want to make lose yours.
I'm using radeon last radeon driver ( xorg-edgers ppa ubuntu : 1:6.13.99+git20100907.b90cb61c-0ubuntu0sarvatt).
Thanks.

//
Since 2.6.35, mesa with kms enable works only with vblank_mode=0; do you think it need to open a bug report ? If you do I will.
Comment 11 kaillasse91 2010-09-17 11:39:19 UTC
(In reply to comment #10)
> (In reply to comment #4)
> > does xf86-video-ati from git master help?  specifically this commit:
> > http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=488c9fd8300505cc6c0c2f8f0f00849f27cc5d63
> 
> Hello,
> I'm ok to test but I want to know if it is still necessary as it will certainy
> take me time and don't want to make lose yours.
> I'm using radeon last radeon driver ( xorg-edgers ppa ubuntu :
> 1:6.13.99+git20100907.b90cb61c-0ubuntu0sarvatt).
> Thanks.
> 
> //
> Since 2.6.35, mesa with kms enable works only with vblank_mode=0; do you think
> it need to open a bug report ? If you do I will.



All solved, only add the pci=nomodeset parameter.
KMS vs UMS: no more tearing, (windows and video).

.....
card RV740
motherboard Asrock 4coredual-sata-r2.0
Comment 12 cxo 2011-01-15 09:45:07 UTC
I'm having major 2D performance issues with my HD4870.

Using a 6 year old Nvidia 7600GS and proprietary drivers:
GtkEntry - time:  0.02
GtkComboBox - time:  1.10
GtkComboBoxEntry - time:  0.55
GtkSpinButton - time:  0.10
GtkProgressBar - time:  0.08
GtkToggleButton - time:  0.12
GtkCheckButton - time:  0.07
GtkRadioButton - time:  0.10
GtkTextView - Add text - time:  0.47
GtkTextView - Scroll - time:  0.13
GtkDrawingArea - Lines - time:  0.37
GtkDrawingArea - Circles - time:  0.31
GtkDrawingArea - Text - time:  0.17
GtkDrawingArea - Pixbufs - time:  0.08
 ---
Total time:  3.70

And using my HD4870, linux, ddx, drm, mesa out of git as of today.
GtkEntry - time:  0.04
GtkComboBox - time:  1.33
GtkComboBoxEntry - time:  0.96
GtkSpinButton - time:  0.20
GtkProgressBar - time:  0.10
GtkToggleButton - time:  0.24
GtkCheckButton - time:  0.12
GtkRadioButton - time:  0.12
GtkTextView - Add text - time:  0.47
GtkTextView - Scroll - time:  0.18
GtkDrawingArea - Lines - time:  1.71
GtkDrawingArea - Circles - time:  0.99
GtkDrawingArea - Text - time:  0.54
GtkDrawingArea - Pixbufs - time:  0.12
 ---
Total time:  7.44
Comment 13 Jerome Glisse 2011-03-08 10:04:39 UTC
Original issue is resolved, closing, nvidia binary driver is faster


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.