I have 14.04.5/16.04 or newer and an AMD GPU. I'm not getting the performance I want, and some programs say they need things like OpenCL.

I've heard about fglrx, but if I try to install it on my machine, it breaks and I have no GUI.

Is there anything I can do to get my AMD card working to its full potential?

  • amdgpu is also open-source. amdgpu-pro is the new proprietary driver but only supports newer chipsets. – user589808 Oct 22 '16 at 19:14
  • @CelticWarrior amdgpu is open-source but from AMD or not? – Hrvoje T Oct 22 '16 at 19:18
  • You are right @Hrvoje T and amdgpu pro has more features, e. G. Vulkan and gcn 1.1 support – Leder Apr 2 '17 at 11:51
up vote 69 down vote accepted

PRE-NOTES

This answer also applies to the latest HWE upgrade for 14.04 (AKA 14.04.5). That upgrade brings Xorg and the kernel to the versions on 16.04. Read below for more details on why this is important.

BACKGROUND

Let's start off with a general description.

With the release of Ubuntu 16.04, came the lack of proprietary drivers for AMD. "Why?" you might ask. Well, it's because of a few things.

Firstly, it's just not compatible. You won't find fglrx in 16.04 repositories, nor will you find a version for 16.04 online. If you download the latest version from AMD's website and install it, you'll run into Low Graphics Mode, blank screens, and other nasty stuff you don't want to happen.

You might be hoping that AMD will step in to update the driver, but then you must not know AMD's reputation for ditching support for even slightly older cards on Linux. Since AMD doesn't want to update the driver, Canonical could make one for Ubuntu, except it won't. Since 16.04 is an LTS release, Canonical would have to maintain an AMD driver for at least 5 years, which would be hard to do.

There's always the possibility that AMD will release another widely compatible graphics driver or that people might just move away from AMD on Linux. It doesn't make sense to spend a lot of effort on a driver for a few Linux OSes (doing it for all would be harder), which would still have to be supported if a new driver came out from AMD.

More on this here: http://www.omgubuntu.co.uk/2016/03/ubuntu-drops-amd-catalyst-fglrx-driver-16-04


PERFORMANCE

Now, just because you don't have a proprietary driver doesn't necessarily mean you'll have a terrible time. After all, Intel does it just fine.

If you just use your computer for web browsing, email, answering/asking questions here, a few YouTube videos, and not much else, then the lack of proprietary drivers probably won't bother you. You may notice some stutter in video, and you may not. Honestly, there's no way to tell beforehand.

If you game, use rendering applications, 3D modeling programs, or any other graphically advanced or intense software, you're in a much more complicated situation.

Personally, I've mostly seen reports here and on reviews and articles elsewhere that say AMD with open source drivers is terrible: programs don't work, since they need OpenGL/CL versions that the default drivers can't provide; games are laggy and stuttery; videos cut out, and take the audio with them; etc. However, I've also seen a few people say they can game just fine, videos are perfect, and there's no trouble.

This contradiction may be due to the two different open source drivers available: radeon and AMDGPU. AMDGPU provides better performance I believe, but it's only available for newer cards. Older cards (which to AMD could mean 6 months if you're unlucky) are stuck with radeon, and a search of Google and Ask Ubuntu will show you there's no way to switch which one you're using. At least, there's no way that's been released.

Just like with many things, you can't know what will happen unless you try, so if you're willing to risk an upgrade, go ahead.


OPTIONS

So maybe you took the plunge, hoping you'd have the card that would get AMDGPU, but weren't so lucky. Maybe you installed or upgraded without knowing the situation with AMD. Maybe you got AMDGPU and it just isn't enough. Whatever the reason you're on 16.04 with AMD graphics, there are a few options for you.


1. The first, and most obvious, is to just to downgrade to 14.04.

  • It's still supported until 2019, so you have 2-3 more years to use it. Who knows? By that time, AMD may have decided to completely change its business model and actually provide good support.
  • You get to use fglrx and get the performance you want/need.
  • Please Note: 14.04.5 brought with it Xorg 1.18, which is what causes the problem in 16.04 to begin with. Luckily, it is completely possible to downgrade Xorg to 1.16 (on 14.04), so you can still use fglrx. Read here.

Maybe 14.04 is too old for you, though. Maybe it doesn't have compatibility for that new application you use so much. Maybe you don't want to go through the trouble of backing up data and reinstalling. Well, there is another option.


2. Try out Oibaf's drivers.

  • They work for AMD, NVIDIA and Intel, so you can even try them out if you dislike NVIDIA's proprietary drivers or are hoping for more performance from your Intel card.
  • They support newer OpenGL and OpenCL versions, so stuff that depends on those will work.
  • They claim to be optimized, so you could see an real boost in performance.

Oibaf's driver seems like a great replacement to fglrx, and it probably is. However, if you have a really recent AMD card, you may want to try out AMD's own offering.


3. AMDGPU-PRO

  • It's proprietary and maintained by AMD, so it should provide the same performance as fglrx did.
  • It actually works on 14.04 too, so you can try it if you're still on that.
  • UPDATE: 16.60 was released, which adds support for quite a few older (3-4 years old) cards. Link updated.

Unfortunately, AMDGPU-PRO is not a true replacement for fglrx. While it does provide support for 16.04, it's only compatible 20 models. That's not very much.

If you don't care about performance, or you already have what you need, then don't bother with all the proprietary stuff, downgrading or weird installations.


4. Just stick with the open source drivers.

  • No hassle to install, since they're already running.
  • They provide you everything you need if you don't do anything special.

Just be aware that these won't generally work for games, especially high end ones.


5. Downgrade Xorg

  • This will not work on 16.04.

It may work, it may break your system until you reinstall the correct version. However, if it does work, then you have fglrx back.

Read the answer here.

Options are far from limited on 16.04, but some of them may not be the best. I recommend trying Oibaf's driver before doing anything else, and only downgrading if you really can't stand the performance and can't use AMDGPU-PRO.

  • 1
    Would the latest HWE kernel upgrade for 14.04 cause fglrx to not work? – edwinksl Sep 10 '16 at 3:27
  • I think so because that is what apparently happened to me on elementary loki (which is based on Ubuntu 14.04). I couldn't tell for sure though, so better double check – deesnook Sep 13 '16 at 21:25
  • 1
    Great answer! Awesome. But anyone tried Oibaf's drivers ? How are they ? – mac Sep 17 '16 at 18:00
  • 2
    @mac I just installed the Oibaf's drivers and they seem to be working OK. I ran the glxgears on my older HP laptop with a AMD Mobility Radeon HD 4530 and it was running at 60fps. So, as I can see it the drivers are working the way they are supposed to. – Terrance Oct 1 '16 at 14:40
  • 2
    @Woeitg As far as I can see, I did just the installation of the Oibaf drivers but I never did the mpv install. I just installed VLC Player, and it is playing my movies across a network connection without any hiccups or stutters. – Terrance Dec 12 '16 at 5:09

Depending on your exact graphics hardware, Ubuntu 16.04 and later will use either the open-source AMDGPU driver or the open-source Radeon driver, both of which are included in the default Ubuntu 16.04+ installation. The amdgpu driver, pre-installed in 16.04+, is used for AMD's newest graphics cards. The radeon driver, also pre-installed in 16.04+, is used for older AMD graphics cards that the amdgpu driver doesn't support.

In order to show all the drivers that are available to be installed from the default Ubuntu repositories and are compatible with your hardware, open the terminal and type:

ubuntu-drivers devices  

Wait at least one minute for the command to scan your computer and generate the list of drivers. The output of this command will be a list of the package names and short descriptions of the available drivers. In addition to showing a list of the available open source drivers, the above command will often also identify recommended proprietary driver(s) for your system if there are any available.

ubuntu-drivers devices will not show graphics drivers that are not available from the official Ubuntu repositories, such as the AMDGPU-Pro graphics driver for Linux which is available from the official AMD website. If you have installed a proprietary graphics driver from somewhere else than the default Ubuntu repositories, ubuntu-drivers devices will confusingly sometimes show it as the recommended driver even if it is not working properly.

  • And what is 'newer' and 'older' for AMD? – Hrvoje T Oct 22 '16 at 19:52
  • If the AMD graphics card has less than 1GB RAM, it's probably an 'older' model. – karel Oct 23 '16 at 16:10
  • Note that this command doesn't appear to be available on 14.04.5 – Elder Geek Jan 11 '17 at 19:51
  • 1
    I tested the ubuntu-drivers devices on Ubuntu 16.04 and on my Ubuntu 17.04 daily build VM and it is working correctly. When I tested my 14.04 VM on the same machine I discovered an interesting fact. 17.04 is using the intel-microcode driver and 14.04 is not on the same physical machine. – karel Jan 12 '17 at 0:25

In my case, I had problems with the performance and the controls (I have a notebook and I couldn't change the brightness). My computer also wouldn't boot if I didn't use nomodeset.

I tried installing a couple different drivers but none fixed my problems, some brought even more booting issues (other than nomodeset).

What solved almost all of my problems was updating the kernel from 4.10 to 4.14 (latest as of 01/02/18). I think that updating the kernel should be the defacto next step after all the trivial things have been tried.

protected by Community Feb 22 at 15:41

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.