1

I'm using windows currently but because of programming, aesthetics, financial and other reasons I have decided to move to Ubuntu.

Problem is my device is a laptop with Intel CPU and AMD R7 M360 GPU and I have read online (like here) that AMD graphics are a mess in Ubuntu 16.04.

I'm not very familiar with how Ubuntu work or what some of these technical words used in the link above, Until now I have just simply wrote C++ codes in Ubuntu or any Linux environment.

Should I avoid moving to Ubuntu or is there a solution to this driver issue?

Thanks.

Alireza
  • 161
  • You can install Ubuntu as a virtual machine using VirtualBox, for example, and do some tests before moving (or not) to live. – M. Dm. Oct 02 '17 at 14:46
  • @M.Dm. Thanks. I'm already using it for about a year as a VM but only for compiling C++ codes. Now I want to migrate completely. – Alireza Oct 02 '17 at 14:50
  • 2
    It is the proprietary driver fglrx that was ditched by AMD in favor of the open source radeon. This open driver is included with the installation DVD and it usually supports ATI graphics quite well. Before installing Ubuntu I recommend however you try it out as a live system (which will use radeon) to see how you GPU performs there. – Takkat Oct 02 '17 at 14:56
  • 1
    @M.Dm. a VM would be the last resort only if a GPU is not supported at all, which is not the case with the R7 M360 – Takkat Oct 02 '17 at 14:59
  • @Takkat On live mode it says it is using Intel HD graphics instead of AMD GPU. Does it mean it is not supported? – Alireza Oct 02 '17 at 15:55
  • @Takkat The new AMD driver is amdgpu not radeon. The radeon driver may be necessary for some older cards, but amdgpu is what's used for newer GPUs. – dobey Oct 02 '17 at 16:40
  • 1
    @Alireza That means your system is a hybrid graphics laptop, and the Intel driver is being used by Ubuntu. You probably will need to change BIOS options to force it over to the AMD chip instead. – dobey Oct 02 '17 at 16:41
  • @dobey Where can I find guide to do that? And do I need to install this amdgpu before doing so? – Alireza Oct 02 '17 at 16:48
  • 1
    No. AMDGPU is open source and included by default. – dobey Oct 02 '17 at 17:18

1 Answers1

4

First of all, the article linked to is fairly old in Linux terms and AMD regards.

Ubuntu works very well with AMD hardware, but your use should determine which Ubuntu version you need.

Ubuntu 16.04 LTS (Long Term Support) is primarily for you if you are going to use professional software such as CAD, OpenCL and similar software. AMD provides their own closes-source proprietary graphics driver on their website http://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx

However, if you don't know what any of this is, you might as well go with 17.04, since it has a newer kernel and therefore better hardware support - again, however, AMD's own closed source driver doesn't support this newer kernel, so you won't be able to install it on Ubuntu 17.04

Instead, you will be using the Open Source radeonsi driver part of a project called MESA. radeonsi is actually developed by AMD developers, and this is the driver you will be getting the best overall experience with.

The Open Source driver radeonsi is the AMD driver with the best gaming support on Linux and also has no screen tearing. This is the recommended driver for most users.

The only downside of the radeonsi driver, is that it is packaged alongside every major Ubuntu release (every six months). Therefore, you will not be getting the latest enhancements right away.

However, to that, there is a solution. If you want the latest drivers automatically, you can add something called a repository. There is a repository that will automatically update your open source radeonsi driver everytime a new update arrives.

You can do that by opening a terminal ctrl+alt+t (after installing Ubuntu), and enter:

sudo add-apt-repository ppa:paulo-miguel-dias/pkppa

sudo add-apt-repository ppa:kisak/kisak-mesa

press yes to add it and then:

sudo apt update && sudo apt upgrade -y

Lastly, reboot your computer and you will have the latest stable graphics driver installed.

There is only one caveat with adding this repository, which might be that you need to remove it before upgrading Ubuntu to let's say Ubuntu 17.10 when that arrives.

You can remove the repository by writing this in the terminal:

sudo apt install ppa-purge

sudo ppa-purge ppa:paulo-miguel-dias/pkppa

sudo ppa-purge ppa:ppa:kisak/kisak-mesa
sudo apt update && sudo apt upgrade

s When the new Ubuntu has been installed, simply add the repository again to automatically get the newest updates again. BTW, this repository also works on Ubuntu 16.04 LTS

*radeonsi is also referred to as AMDGPU

** The closed source driver is referred to as AMDGPU-PRO

You can download Ubuntu and try it out on your computer without installing it. You only need a USB Dongle and put a Ubuntu Live-Preview on it.

You can get this here: https://www.ubuntu.com/download/desktop

sleort
  • 438
  • Thank you very much for your easy-to-understand explanation. – Alireza Oct 02 '17 at 17:14
  • 1
    You are welcome. Please beware, that Ubuntu / Linux will prioritise to use your Intel HD Graphics as much as possible as that will save battery life. The open source driver should automatically use the discrete GPU (R7 M360) whenever needed. So if you start a game it should automatically use that one instead. If not you might be able to force it using DRI_PRIME=1 -environment variable in the startup command (Steam for an example has an easy way of doing this). – sleort Oct 02 '17 at 17:35
  • I did what you said, How can I see if it is installed and can be used when needed? In "About This Computer" window it still says Intel HD Graphics. – Alireza Oct 02 '17 at 18:36
  • you can install something called mesa-utils which can give you information about your current GPUs and the OpenGL they support. Install it using sudo apt install mesa-utils. When installed you can check that 3D works, by running glxgears and check software info with glxinfo, the current OpenGL version grep OpenGL | glxinfo. You can check if the dGPU (R7 M360) works, by running DRI_PRIME=1 glxinfo | grep "OpenGL renderer" where the output should be something AMD related. Without DRI_PRIME=1 it should show some Intel related. – sleort Oct 02 '17 at 20:19
  • 1
    As said, when using the Open Source drivers from MESA, it should switch automatically, but you can force it by running you program from the terminal DRI_PRIME=1 nameofyourprogram.

    You could try it on glxgears, but keep in mind that v-sync is enabled, so it won't go above 60fps in either case. BTW, the technology used to offload to the dGPU is called PRIME in case you want to learn about it more thoroughly.

    – sleort Oct 02 '17 at 20:21
  • 1
    If you want a simple benchmark, you can install glmark2 using apt like earlier. Then run the benchmark as glmark2 and DRI_PRIME=1 glmark2 and see if there is a difference in the score.

    On Steam you can set the launch options and put in DRI_PRIME=1 %command% to force dGPU.

    – sleort Oct 02 '17 at 20:36
  • In my comment above I accidentally wrote grep OpenGL | glxinfo. It should have been glxinfo | grep OpenGL – sleort Oct 02 '17 at 20:43