I have a GT 710 and a 6800 XT, each has a monitor connected.
When I use nouveau drivers along with amdgpu drivers I get the desired behavior of the 710 driving the desktop and DRI_PRIME=1 activating the 6800 XT.
Unfortunately the nouveau drivers on the 710 are awful. They freeze the system when resizing windows and just perform poorly in general. Reverse Prime also works with nouveau but the monitor with connected to the 710 has problems rendering panels.
Trying to fix this issue I installed the proprietary Nvidia drivers but for some reason when using these drivers DRI_PRIME=1 does not work.
The 6800 XT shows up in the list of providers but can't be used with Prime.
Trying to set the offload sink returns an error.
Same for xrandr --setprovideroffloadsink 1 0. xrandr --auto does not help either.
DRI_PRIME=1 glxinfo -B and glxinfo -B returns the 710.
This is the xorg.conf I'm using. Probably incorrect, I'm pretty new to this just throwing stuff at it hoping something will work.
Is there any way I can make this work?
I would also be fine with running two separate xorg sessions per GPU/monitor, if that is even possible I would appreciate advice on how to make it work. I read about something like this being possible but can't find information on how to do it.
Thanks for any help.
When I use nouveau drivers along with amdgpu drivers I get the desired behavior of the 710 driving the desktop and DRI_PRIME=1 activating the 6800 XT.
Unfortunately the nouveau drivers on the 710 are awful. They freeze the system when resizing windows and just perform poorly in general. Reverse Prime also works with nouveau but the monitor with connected to the 710 has problems rendering panels.
Trying to fix this issue I installed the proprietary Nvidia drivers but for some reason when using these drivers DRI_PRIME=1 does not work.
The 6800 XT shows up in the list of providers but can't be used with Prime.
Code:
xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x278 cap: 0x1, Source Output crtcs: 4 outputs: 3 associated providers: 1 name:NVIDIA-0
Provider 1: id: 0x2bb cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 6 outputs: 4 associated providers: 1 name:AMD Radeon RX 6800 XT @ pci:0000:0b:00.0
Trying to set the offload sink returns an error.
Code:
xrandr --setprovideroffloadsink 0 1
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 34 (RRSetProviderOffloadSink)
Value in failed request: 0x278
Serial number of failed request: 16
Current serial number in output stream: 17
Same for xrandr --setprovideroffloadsink 1 0. xrandr --auto does not help either.
DRI_PRIME=1 glxinfo -B and glxinfo -B returns the 710.
This is the xorg.conf I'm using. Probably incorrect, I'm pretty new to this just throwing stuff at it hoping something will work.
Code:
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0"
Screen 1 "Screen1" RightOf "Screen0"
Inactive "Device1"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
ModelName "Unknown"
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BusID "PCI:4:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Device1"
Driver "amdgpu"
VendorName "AMD"
BusID "PCI:11:0:0"
Option "DRI" "3"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
Is there any way I can make this work?
I would also be fine with running two separate xorg sessions per GPU/monitor, if that is even possible I would appreciate advice on how to make it work. I read about something like this being possible but can't find information on how to do it.
Thanks for any help.