Ubuntu 20.10 + RX 6800 XT - How To Steam / Vulkan Up And Runing Guide [WIP]

I can’t get this to work properly. I tried with kernels 5.10.13 and 5.10rc6 with amdgpu-pro 20.45 with the same result, ie. legacy cards work. I have a rig with 2 x RX580 and one new 6800xt. The legacy cards work fine if I use amdgpu-install with opencl=legacy, but if I install with opengl=pal (or legacy,pal) I have problems. I can sometimes get the driver to install and when I fire up Phoenix miner it can identify the card correctly, but can’t use it. Similar result with other miners. I tried the original plan as you have laid out above but after copying the firmware it doesn’t work at all.
Not sure if it’s significant, but I have the cards sitting in risers. It wasn’t an issue with installing previously when I just had the legacy cards. I have also tried with Ubuntu 20.04 including upgrading it to 20.04.2, same result.

IT does it i have a AMD gpu it does not show which GPU i have.

did you try clinfo (may need to be installed)?

You must explicitly set pcie 3.0 or less via bios in this case

Thankyou. I forced PCIe3 (the motherboard didn’t support 4 anyway). Also installed with card in motherboard rather than on a riser. I used Ubuntu 20.04.2. First install of amdgpu-install failed with “opencl=rocr,legacy”. Then I applied your guide, updating the kernel to 5.10.14, removing blacklists, retried with same opencl parameters and that seemed to do the trick. Not really sure what fixed it, but all good now. Phoenix miner still doesn’t work properly (can see card but not use it) but teamred miner does.

ok i did now upgrade from 20.04 to 20.10 and the 5.10.16 kernel.

and did the other steps the error i get when i do vulkaninfo are

ERROR: [Loader Message] Code 0 : loader_get_json: Failed to open JSON file amd_icd64.json
ERROR: [Loader Message] Code 0 : /usr/lib/i386-linux-gnu/libvulkan_lvp.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib/i386-linux-gnu/libvulkan_radeon.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib/i386-linux-gnu/libvulkan_intel.so: wrong ELF class: ELFCLASS32
WARNING: radv is not a conformant vulkan implementation, testing use only.
WARNING: lavapipe is not a conformant vulkan implementation, testing use only.

VULKANINFO

Vulkan Instance Version: 1.2.162

DId you install both 32bit and 64bit variants of the packages? wrong ELF class usually indicates the wrong version being used by whatever you’re running because the other is missing.

can i check that somewhere? as far as i know i think i did only 64 bit.

Not too familiar with Ubuntu, so copy/paste from the Lutris documentation:

Enable 32 bit architecture (if you haven’t already):

sudo dpkg --add-architecture i386 

Upgrade your system:

sudo apt update && sudo apt upgrade

Install support for 32-bit games:

sudo apt install libgl1-mesa-dri:i386

Install support for Vulkan API (will be functional only if you have a Vulkan capable GPU):

sudo apt install mesa-vulkan-drivers mesa-vulkan-drivers:i386

Reboot to apply changes.

If it’s already installed it’ll tell you

i have a amd rx6800 xt.
i did the both install ones and both already installed.

Also, I just tried vulkaninfo on my (definitely working) install, and I get the same errors:

[tarulia@localhost]~% vulkaninfo
ERROR: [Loader Message] Code 0 : /usr/lib/libvulkan_radeon.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib/libvulkan_lvp.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib/libvulkan_intel.so: wrong ELF class: ELFCLASS32
WARNING: lavapipe is not a conformant vulkan implementation, testing use only.
==========
VULKANINFO
==========

So I wouldn’t worry about it. Those are different vulkan implementations (radeon is the old AMD driver, Intel is… well Intel, lvp is llvmpipe I think).

edit: it is

ok good i will keep it like this. Games also seems to be fine when i start them. Except with proton-ge 6+ no game want to start. but that is more a proton-ge problem so i will post that elsewhere.

got my second 6800xt today. The system seems not to be able to see it. lspci shows both cards, but clinfo only shows 1 device. Any thoughts? I am running kernel 5.11

Came here to get my amdgpu working for my Radeon RX 570. I managed to break the driver when I installed it straight off the AMD website due to having Ubuntu 20.10.

Followed the instructions all the way to the Reboot and its all better now. I stopped reading at that point because I had achieved my goal. Thanks!

Hi. throwaway account. I just wanted to give a huge thank you for this post, i was really frustrated right from the get go because I was trying to install KDE Neon which is based on 20.04, the distro installer wouldn’t even work. After full-upgrading to 20.10 and adding the firmware my computer finally seems to work.

Here’s roughly the additional steps for KDE Neon:

Distro Installation:
When installing from live media, use recovery mode, because the computer will not even boot from the live media otherwise.

be warned that this will put nomodeset on the linux kernel parameters of the installed OS which prevents amdgpu from loading entirely, otherwise the same freezing will happen as the live media. This is just temporary, will remove it later after installing the amdgpu drivers

  1. Change /etc/apt/sources.list to look like Groovy Gorilla’s sources.list

  2. as per Wine installation steps in wine wiki , you need to add wine’s repository key or apt update will not work

  3. run apt update, apt full-upgrade

  4. midway through full-upgrade, i got errors installing mesa related stuff, just delete them

  5. From here pretty much just follow the OP post
    install AMDGPU drivers from amd website, firmware and such, as per OP post. Note the AMDGpu installer script has a --no-dkms switch so that it skips adding dkms entirely, when i tried uninstalling dkms manually it wanted to remove the base amdgpu package as well.

6.1. the next time you reboot, go into advanced options for KDE neon, press E when highlighting the first option, find the kernel parameter “nomodeset” and delete it. then F10, i got it working after that.

idk if its important but might want to delete neon-installation-modeset.cfg from /etc/default/grub.d/

6.2. oh actually you have to remove nomodeset from the non-recovery option of /etc/default/grub.cfg because 6.1 only lasts for the current boot

  1. run sudo update-grub to save 6.2 permanently

i tried to update to latest amdgpu driver 20.50 but it breaks my games again. So will have to try to redo all steps all again and Hope it fixes it again. sigh

do you need the amdgpu? I just pull MESA from git. AMDGPU is really for qualified professional applications not for gaming. It only makes sense to use when nothing else is working.

well i saw there was a update for cyberpunk 2077 that enabled AMD Raytracing. and i have a RX 6800 XT. so i wanted to try it and said need latest amd drivers.

I got the games working again with the 20.45 drivers. might have missed a step again on the 20.50 but it works again.

Still wondering how to enable the Raytracing in cyberpunk somehow to see if i can getmore FPS? not sure if that would be the case.

What is the best way to update these drivers ? the Amd drivers and mesa
Edited…

That is not how this works…

AMDGPU is the driver, Mesa is the API implementations that talk to the driver.

What you are referring to is AMDGPU-PRO, which is a proprietary module that in itself sits on top of AMDGPU.

See also: Switching to Linux..... AMD GPU Drivers - #13 by mihawk90

I’m not 100% on that but I don’t think any of the raytracing is implemented on Mesa yet. The game unlocking the ability doesn’t magically enable it on the OS level.

Make sure that you update the Kernel alongside the driver since it is a Kernel module. If shouldn’t even be loading if it’s not compatible but you never know. As for mesa, there are Mesa PPAs that go from the Git master branch. I’m not on Ubuntu so I’m just gonna send you to the Lutris driver guide instead, which is usually fairly up to date on that:

@mihawk90 for the nvidia driver i had that yes when i still had my 1080ti card. Since i switched.
For the AMD part i had that ppa from kisak added :slight_smile:

As for the kernel i did update to the latest 5.10.26 i think the latest was. Since i manual updated the kernel i have to do that each time. So when 21.04 comes i can get into that so it will update that also automatically again. So i guess i have to wait and be patient :wink:

As for Cyberpunk i thought it was already in the driver just not enabled in the game yet.

dkms packages are now causing an error trying to install them… should I update my linux headers?