Howto: Fix Performance of ATI Drivers with Compiz on Ubuntu 9.10 Karmic Koala
Everyone know's that ATI drivers always seem to have something wrong with them, be it tearing in video or just general slow performance.
I happen to be victim to both of these currently, the way I got around video tearing was by changing my video output as I outlined in my previous tutorial, Howto:Fix ATI Video Playback. As for the performance issues I've finally found the answer! It turns out that it's got something to do with backfill we don't need to know what it is or what it does, all you need to know is getting rid of it fixes performance issues such as slow maximizing windows and also should fix video tearing!
Caution: I'd like to warn you in advance that doing anything with xserver could make your system unstable and crash you desktop interface. So do this at your own risk!
Howto: Fix Ubuntu 9.04 ATI Driver Issues
When I upgraded to Ubuntu 9.04 I was pretty annoyed that I couldn't use my favorite application Gnome-Do with Docky (a OSX like dock) or even Avant Windows Manager, because the ATI propitiatory drivers were just so bad. Windows would hang when being maximized, everything was slow, video playback was terrible, all-in-all the drivers suck! Unfortunately the open source ATI drivers didn't really help much either (they did work fine though, just had no effects) so I had to do without my application for a while. The reason AMD/ATI's drivers are so bad is because they don't support the newer version of xserver being used in Ubuntu 9.04. You'd think they would make sure they supported any changed or upgrades made to the most popular Linux distro, yet here we are...with crappy drivers. Nonetheless, I've found a way to use the existing ATI drivers with Ubuntu 9.04 and have it all run pretty well.
What we'll basically be doing is downgrading our current version of xserver (which is version 1.6 in Ubuntu 9.04) to version 1.5, which is supported by the ATI drivers. Here how to do it...
Step 1
We need to backup our "sources.lst" just in case , type the command below into your terminal:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
Note: Please be careful when doing anything with administrative privileges.
Step 2
Now we need to edit that "sources.lst" file to use Ubuntu 8.10 Interpid repositories. This is done by opening up the file in gedit and using the replace tool. In your terminal type:
sudo gedit /etc/apt/sources.list
Highlight the word "jaunty" and click "Replace" on the toolbar. Replace it with the word "intrepid" and click "Replace All".
Make sure you save the changes before you exit the windows.
Step 3
We need to update our repositories, please make sure you have completely uninstalled the ATI drivers at this stage. In your terminal type:
sudo apt-get update
Step 4
It's time to remove xserver, in your terminal type:
sudo apt-get autoremove xserver-xorg gnome-session
This will make a few minutes, when it's done we'll reinstall xserver (but it'll be version 1.5 not 1.6) and the ATI drivers.
Step 5
In your terminal type:
sudo apt-get install xserver-xorg fglrx-amdcccle fglrx-kernel-source xorg-driver-fglrx libdrm2=2.3.1-0build1 gnome-session
This will take some time to download and install everything so go make a sandwhich!
Step 6
Open up your "Synaptic Package Manager" and lock all the xserver-xorg*, fglrx*, xorg-driver-fglrx, libdrm2, and gnome-session packages at their current version. Do this by selecting the currently installed package eg. "xserver-xorg-core" going to "Package" and selecting "Lock Version".
Tip: In your Synaptic Package Manager press "Search" in the toolbar and enter the packages you're looking for, eg. "xserver-xorg". Sort the packages by pressing "Installed Version" twice and you'll be able to see all the currently install packages from the top starting with that searched name all in a row. Now you can select the one at the top and press Shift + Down Arrow Key and mass-select and lock them all at the same time. This is a big time saver. Repeat for all other packages.
Step 7
Now that you've locked all the xserver and ATI packages, run
sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list
and then restart your PC.
Step 8
After restarting, Go into your "Synaptic Package Manager" and search for "gnome-session". It should be one of the locked packages. Unlock it via the "Package" menu in the toolbar and then run your update manager and it should get you to install an update for the package. That should fix the shutdown/restart problem that may occur for some people using the menu in the top right.
Step 9
Now go to "System" → "Adminitration" → "Hardware Drivers" and enable the ATI drivers.
You'll have to restart again for the drivers to take effect.
Congratulations you now have Ubuntu 9.04 and ATI drivers working in harmony...well...working :p
Note: If you run into problems with video playback check out: Howto: Fix ATI Video Playback
If you have any problems, questions, suggestions please leave a comment.
Edit: I was reminder to add the update that will fix any issues with shutdown and restart from the menu in the top right, see Step 8.
Edit: I was informed there was a typo in Step 4 that has now been fixed. I ensure you I have tested this myself and it works, I just unfortunately missed that typo and I apologize.
I rewrote and added to a guide I found here.
