Dual GPU issues on Linux (IOMMU issues maybe?)

Discussion created by calcatinge on Apr 5, 2019
Latest reply on Apr 8, 2019 by calcatinge

Hey Guys,


I have an issue. Here is my system description:


AMD Ryzen 7 1700

ASRock AB350M Pro4 (5.7 latest BIOS)

32 GB RAM DDR4 Crucial

Sapphire AMD Radeon RX 550 PULSE 2GB GDDR5 128bit

Sapphire AMD Radeon RX 580 Nitro+ Special Edition 8GB GDDR5 256bit

SSD 240 GB WD Green

OS: CentOS 7.6 Linux


The system is mainly used for Linux development and cloud configuration (using RDO), but every now and then, I am doing some renderings in Blender.

Two days ago I bought the second Sapphire GPU (the RX 580), thus thinking about using both for some blender rendering. I get a 30% increase in rendering time (tested in Win 10 on the same configuration).


Due to ASRock's motherboard slot configuration, I had to put the RX 550 on PCIe slot 2 (working as PCIe 3.0 x8) and the RX580 on slot 3 (working as PCIe 2.0 x4).  BIOS was configured to use the PCIe as 2x8 (not 1x16) and the PCIe speed set to auto. But... during startup, I had the following error messages (see the attached images).


To overcome the errors, I had to deactivate the IOMMU support from the BIOS, which led to a useable system, but only with the open source amdgpu driver from the kernel. After installing the official amdgpu-pro driver, with the current configuration, Xorg just refused to work.


Furthermore, turning off IOMMU somehow crippled my KVM and Docker configuration and workflow.


I would like some help from your side. Did anyone encounter this kind of issues using Linux with a dual GPU configuration?