Ubuntu – Ubuntu 14.04.5/16.04 and newer on AMD graphics

amd-graphicsdriversradeon

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?

Best Answer

  • 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.