Unable to run RX 6650 XT and W4100 at the same time

I use Zorin OS 18 Pro. I have an AMD RX 6650XT GPU in my primary PCI-E slot on my Gigabyte AORUS X470 Gaming motherboard, and that works fine, using wayland and the latest autoinstalled amdgpu drivers.

However, recently I decided I wanted to try GPU passthrough. I had an AMD FirePro W4100 GPU laying around that was detected just fine in my second PCI-E slot - both cards are running at 8x PCI-E 3.0. Not sure if that matters, but the point is that my system sees them just fine.

However, when I install this card, my RX 6650 XT no longer runs the amdgpu driver, and steam won't start - I think because I'm on llvmpipe at that point.

I tried forcing the older card to use amdgpu driver so they could both use the same driver, thinking that was the problem. I did

sudo nano /etc/default/grub

Then put in

radeon.si_support=0 amdgpu.si_support=1

On the GRUB_CMDLINE_LINUX_DEFAULT line, did a sudo update-grub, and restarted. It seemed to work - or at least do something - only because although steam still wouldn't start, I also was no longer able to run CPU-X to check what drivers my cards were using!

My ask is this: does anyone know of a way to make this setup work so I can passthrough that W4100 to a windows VM, while keeping my RX 6650 XT working with amdgpu for Zorin? Or if not, does anyone know why this isn't working? Are there alternative strategies available, such as using an nvidia card?

I am wondering if it is because of different graphics cards. I recently (well ages ago actually) used same models of nvidia card (GT1030) in an attempt to dedicate one card in virt-manager but had no luck.

I do suspect for 'tandem' graphics you should use the same model as the primary, but I could be wrong.

I can't try for you but I found this:

no, this isn't the case. I've used different nvidia and amd cards alongside each other with great success, as stated in the opening post.

EDIT: apparently I did NOT state this in my opening post! apologies; that was some useful information I could have mentioned. There's no issue with a "PRIME" setup where one GPU is nvidia - it's just that I want to avoid using Nvidia in a passthrough situation if possible, because I've heard they're harder to pass through...

this is is for tandem operation on specialized workloads so unfortunately, not suitable as an answer for this question.

When I mentioned same graphics card I meant model number, not brand. Does the manual for the motherboard stipulate which PCIe slots to use if using an older AMD card?

Following up here, I believe I was able to determine that this was a hardware limitation of my motherboard or else the way Zorin uses it: I could see that the second GPU was detected, but there were no PCI-E lanes alloted to it. This was the result of the confusion for me.

(I believe the reason my PCI-E lanes were unavailable to the second GPU was because I am running an AM4 socket motherboard with X470 chipset. This chipset I believe does not have enough PCI-E lanes to allocate to my following hardware:

  • 1x wifi card
  • 8x GPU1 (6650XT is an 8x card, not 16x, but it is in a 16x slot so may be alloted 16x? not sure)
  • 4x NVME drive 1
  • 4x NVME drive 2
  • 8x GPU2 (W4100 may be a 16x card; not sure).

That would conservatively total 25 PCI-E lanes. My CPU (5800X) provides 20 usable lanes, while my motherboard offers up to 32. If I am going by the CPU lanes available, then I have obviously exceeded my allotment. If I am going by the motherboard spec of 32 (which apparently includes the lanes my CPU will give me???), then I might be in the clear except if one of the two GPUs uses 16x. In that case I'd be at 33 lanes of usage by my count :frowning:

I'm going to chalk this one up to probable hardware error and close the ticket soon, unless someone else believes the above accounting is incorrect.