Bug 22062 - UXA uses 2-3 times more CPU than EXA on intel graphics
Summary: UXA uses 2-3 times more CPU than EXA on intel graphics
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: 7.4 (2008.09)
Hardware: Other Linux (All)
: medium normal
Assignee: Carl Worth
QA Contact: Xorg Project Team
Keywords: NEEDINFO
Depends on:
Reported: 2009-06-03 06:05 UTC by kronheim
Modified: 2009-07-20 18:50 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Description kronheim 2009-06-03 06:05:02 UTC
I am using intel GM965 graphics with Ubuntu 9.0.4 and the intel driver version 2.6.3 (though the same results occur with 2.7.x as far as I can see).

Steps to reproduce:

0. Specify UXA acceleration in xorg.conf
1. Open a terminal and run "top".
2. Open another terminal and do, for example
       $  zenity --progress --percentage=90 --width=600
   so as to create a little bit of graphics activity.
3. Observe that xorg is using (perhaps) 19% of one core.

Repeating the experiment with EXA shows only about 6-8% usage. Other simple things similar to progress bars use even more CPU under UXA. I noticed this first when using the volume control in pavucontrol: the bar indicating volume output levels moves back and forth and uses 50% of one core. My cpu is a Core 2 duo.
Comment 1 Eric Anholt 2009-06-30 18:32:57 UTC
When I run that on my system, the CPU is entirely idle.  zenity doesn't appear to do rendering over time.  From playing mp3s with pavucontrol open, Xorg's CPU usage jumps to 20%.  Does this match your experience with xf86-video-intel master?  It should be the same performance as EXA now since:

commit accdbd23676d812d2345f86d8e3ee62f108841ff
Author: Carl Worth <cworth@cworth.org>
Date:   Fri May 29 15:34:20 2009 -0700

    UXA: Rasterize trapezoids to system memory, not a pixmap
Comment 2 Eric Anholt 2009-07-20 18:50:24 UTC
feedback timeout, and the change should have fixed the issue.

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.