I Recently upgraded to the i5-12400F cpu and asus prime B660-plus d4 motherboard. However, in this new setup, I noticed that dual GPU performance is much worse than single GPU performance.
Specifically, if both GPUs are being utilized by the xorg session, and I start any graphically intensive software, I experience horrible stuttering in all windows on all screens. This does not occur if only one GPU is being utilized by the xorg session (I tested single-gpu performance for each of my two cards, and in each of the two PCIe slots. All single-gpu setups work fine).
Is there some difference between these motherboards that prevents me from using dual GPU at nominal performance?
Is there something I need to configure in-software to make this work properly?
Any ideas how I could properly test/debug a problem like this?
EDIT: I read the manual for asus prime B660-plus d4 again, and it explicitly states: "This motherboard supports two PCIe x16 graphics cards". So I don't think I'm lacking hardware support.
I have never used xf86-video-amdgpu. After I changed the cpu and board, I did not do any reinstallation (I only installed the EFI bootloader). I did update the system since then, but the system update was not the cause of this issue. I experienced it immediately after changing my hardware.
To upgrade my system, I first tried the motherboard GIGABYTE B660 DS3H, and I experienced this same issue, but a more extreme version (more lag/stutter/freezing). Once I learned that the PCIe x16 slots on that motherboard run in x1 mode, I concluded this must be the cause of the issue. asus prime B660-plus d4 is my second attempt at getting this system to work, however the issue is still somewhat present and very annoying.
If the board promotes two PCIe x16 I don't think that's the problem (though you might look out for a BIOS update)
Is this really a problem with "graphically intensive software" or OpenGL or vulcan specifically?
Does glxgears cause the same issue?
I switched back to my previous CPU and motherboard, where everything works fine, so I can test this for comparison. Here is the output of glxinfo -B on my flawless dual-gpu setup. There are no meaningful differences from the earlier result; so this unfortunately does not reveal any details about the issue.
Yes, this really is a problem only when the graphics are under load. While running the game, the intensity of the stutter/freezing changes depending on the graphics settings and game window size (how many pixels need to be rendered). In fact, if I set the game to lowest graphics settings, the issue goes away altogether.
For now, I was only able to test this on my OLD motherboard (where everything WORKS).
In the output, I see that prime sync is mentioned for each output port on the second GPU.
Only one of those ports is actually connected to a screen. It lists PRIME Synchronization: 0
The other two ports list PRIME Synchronization: 1
Thank you for all the suggestions, seth. I would not have thought to check all of this. And hey, maybe we can figure something out, so I won't need to replace this motherboard with a different one. Or at least get a better idea for what I should replace it with.
I did not realize PCIe ports may be wired to the motherboard chipset rather than the CPU, which seems to be the case on the B660 board.
My bottleneck might be the B660 chipset or its link to the CPU.
In this case, the solution would be to get a motherboard where both PCIe slots link to the CPU, such as the Asrock B660M Pro RS.
It appears linking multiple PCIe slots to the CPU has become a rarity.
The only suitable LGA1700 motherboards are Z690 DDR5 boards. Those are both unaffordable and overkill for a couple weak GPUs like mine.