[ubuntu-x] Jaunty upgrade report

Chris Jones chris.jones at canonical.com
Wed Apr 1 19:11:01 BST 2009

[This was originally a mail requested by mdz for upgrade feedback from
Canonical folk. Sending to ubuntu-x@ at the suggestion of Bryce]


I upgraded my main laptop (Thinkpad X300) some weeks ago and the process
was generally smooth, so there is not much value to be had in a deep
reporting of it; Update-manager did a good job of it, and many of my
bugs have been addressed already.
I did upgrade my old laptop (Thinkpad X40) on 29/03/09 and the upgrade
process was smooth there.

If you don't care about X, you can stop reading now. If you do care
about X, especially on Intel chips, I'm about to braindump at you...

On both laptops the general performance of Xorg in Jaunty (using Compiz,
so it's very likely that this specifically relates to 3D performance)
has regressed compared to Intrepid.

In the case of the X40, this is because it has an 855GM chipset, which
is well known to be problematic with the Intel driver in Jaunty (as
mentioned in the beta release notes). Disabling DRI generally helped. I
have not used this machine regularly for a year now, so I can't make any
useful subjective assessment of how fast it feels.

In the case of the X300 (which has a 965 chipset), the 3D performance is
generally sluggish in all but very simple usage. It seems to be closely
related to load - I would of course always expect high load to affect
the 3D effects, but this only needs 20-30% CPU load (and unquantified
GPU load) to manifest sluggish rendering.

My current testcase for reproducing it is:

 * Configure 4x2 workspaces [this probably isn't necessary]
 * Place a maximised terminal on workspace #1 [I use Terminator with a
couple of splits]
 * Place a maximised Thunderbird window on workspace #2
 * Place a maximised Firefox window on workspace #3
 * Flip rapidly between the workspaces [I have bindings set to take me
to specific workspaces, which doesn't appear to be necessary to induce
the poor performance, but does make it easier to induce]

What I see is that the first few workspace flips are speedy and smooth,
but as doing that starts to load the CPU/GPU, the subsequent flips
degrade massively (they may only render one or two frames of motion,
pause for a significant fraction of a second and then show the correct
workspace). This is reproducible with a Beta liveCD (after enabling
universe to install Terminator and Thunderbird).

Matt Barker has an X61 (also a 965 chipset) and his X performance is
generally quite poor, but conversely, Andrew Glen-Young's Dell M1330
(also a 965) is much harder to trip up in this fashion. He uses fewer
workspaces than I do and generally has fewer windows open.

I think this is bug #339555, but without a more simple test case it's
hard to be sure.

In trying to find a way out of this (I flip workspaces a *lot*, so I am
highly motivated to fix it, even if it's a horrible hack only I can use)
I have tried using UXA instead of EXA (which made no difference, and has
buggy rendering in the Jaunty version), and upgrading various parts of
the X driver chain:

 * Mesa: I tried a PPA build of 4.3 from tjaalton which made no
appreciable difference.
 * DRM, xserver-xorg-video-intel: I tried the xorg-edgers PPA which
contains git snapshots of both of these (and mesa, fwiw) and this made a
significant difference and left me with Intrepid levels of smoothness
with UXA, although it did produce some rendering artifacts. I am not
100% sure if this snapshot driver worked well with EXA.

I have subsequently pulled xf86-video-intel from git and identified the
revision that matches up with the 2.6.3 release currently in Jaunty. My
plan for this evening is to install the xorg-edgers snapshot of DRM and
then attempt to bisect xf86-video-intel in the hope that there is a
simple change which fixes things; With the diff between 2.6.3 and tip
being ~8k5 lines, I am not expecting a miracle one-liner, nor have I
tested the xorg-edgers PPA on Matt Barker's X61.
I am also curious if the Intrepid version of the driver will perform
well and will attempt to rebuild this in Jaunty [confidence on #ubuntu-x
for this being a good idea, is low, as I write this].

Many thanks for assistance in hunting this problem so far should go to
Bryce and tjaalton (a thoroughly decent community chap), as well as
tormod (also a community chap) for making the xorg-edgers PPA.

I would very much welcome suggestions of a simpler test-case (I think
the key may be numerous large windows, but by sticking to a test case
that's very close to me normal workflow, I may spot changes in behaviour
better), or other avenues I can explore. I *very* much want to help get
this fixed!

Chris Jones
  cmsj at canonical.com

More information about the Ubuntu-x mailing list