Elementary OS – AMD drivers

In this article we’ll have a look at AMD graphic drivers – making the best out of GPU is a must. And unfortunately on Linux (and moreover on Elementary OS), that can get quite hard

This is a follow-up article on Elementary OS Freya – Apps & tweaks.

I will be focusing on AMD drivers for newer cards (built on GCN architecture), in my case AMD R9 270X. If you have some older AMD graphic card like the ones from HD-series, you will be doing really great on default open source drivers without any major performance (or other) issues. No need for you to install proprietary Catalyst drivers. This article is however aimed at the newer cards (R* series).

Poor default open source drivers..

As you probably know by now, default open source drivers aren’t really on top of their performance, given the power of your installed graphic card. For daily “normal” usage, they are sufficient. But when you’re trying to squeeze out some more serious 3D work or hardware acceleration, you’ll run into problems.

Poor AMD Catalyst..

“Let’s install those proprietary drivers, even though meh and be covered, right?” comes to mind. Sure, I tried that, but from some reason, on Elementary OS Freya that wasn’t possible via the Additional Drivers option. Some googling later, I found out a way how to install those proprietary Catalyst drivers. That was OK for a while, even though some annoying bugs appeared (like having all-black screenshots..) and the drivers would mess up after every kernel update. That wasn’t a viable option either.

Oibaf PPA and kernel 4.0 FTW

Being quite desperate by this time, I found out that the kernel might be the issue. Elementary OS is Ubuntu-based, but it’s based on its latest LTS version (that being 14.04). At the time of writing this article, it’s using 3.16 kernel (on fully updated system). And the following version 3.17 kernel has been reported to work nicely with newer AMD GCN drivers!

Upgrading to kernel 4.0

Warning: Do this at your own risk, I can’t stress this enough! It might seriously break something in your system.

I’ll provide just a basics here (full guide from a source website can be found below).

  1. In Terminal, copy-paste this command for 64-bit systems:
cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0-vivid/linux-headers-4.0.0-040000-generic_4.0.0-040000.201504121935_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0-vivid/linux-headers-4.0.0-040000_4.0.0-040000.201504121935_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0-vivid/linux-image-4.0.0-040000-generic_4.0.0-040000.201504121935_amd64.deb && sudo dpkg -i *.deb

For 32-bit:

cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0-vivid/linux-headers-4.0.0-040000-generic_4.0.0-040000.201504121935_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0-vivid/linux-headers-4.0.0-040000_4.0.0-040000.201504121935_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0-vivid/linux-image-4.0.0-040000-generic_4.0.0-040000.201504121935_i386.deb && sudo dpkg -i *.deb
  1. Update your Grub:
sudo update-grub
  1. Restart your system and check if you have the new kernel installed:
uname -r

If you want the full guide, read Install Linux Kernel 4.0 on MintGuide.org.

Using the Updated and Optimized Open Graphics Drivers (Oibaf PPA)

This PPA contains updated versions of default open source drivers, compiled almost daily directly from git development. Phoronix did a open source graphics driver comparison at the end of 2014, where the result are quite significant in some cases. Now, half a year after, the results are even bigger. For installing these updated open source AMD drivers, add the Oibaf’s PPA to your system:

sudo add-apt-repository ppa:oibaf/graphics-drivers

Then simply update, upgrade (and remove your unused) packages:

sudo apt-get update && sudo apt-get upgrade && sudo apt-get autoremove

..and there you have it. Restart your system and this time, you’re booting into much more graphics-capable system. So game/work on and enjoy the latest open source AMD drivers!