You are not logged in.

#1 Yesterday 01:12:33

gingeravalanche
Member
Registered: Yesterday
Posts: 7

[Solved] Vulkan Drivers Causing Black Screen After System Repair

Bit of a weird issue. I had a motherboard fail yesterday while I was playing a game via Proton. I replaced the motherboard, got the system running again, but now all Proton games show only a black screen. Audio still works fine, I can control the game fine (which is basically limited to me fumbling around for the in-game Quit option on the main menu just to prove that it worked), but the visuals are gone. I run an AMD Radeon 7700XT for my games, and this happens with both vulkan-radeon and amdvlk.

If I uninstall both (vulkan-radeon and amdvlk), then the visuals return and the games work "fine," though very slowly. The only game I have with a native Linux version (Tabletop Simulator) works fine as well. It's just the Vulkan drivers that are somehow set up wrong now, even after uninstalling both the 64bit and 32bit libraries with pacman -Rns and reinstalling them. Also tried uninstalling and reinstalling Steam and every Proton version that I have (including ones I don't use) and still nothing. Haven't figured out how to get Proton to write logs, as PROTON_LOG=1 doesn't seem to do anything, as far as I can tell. PROTON_USE_WINED3D=1 also does not help when the Vulkan drivers are installed, even though (to my understanding) that tells Proton not to use DXVK at all?

I'm not sure what info or command output would be helpful in this situation, but can provide any that's needed. Thanks.

EDIT: A few games provide unhelpful error messages on boot, like that the game "has encountered an error and will now close." Some others provide more helpful ones, like "CreateSwapChainResult failed at" a very long Wine prefix path that ends in D3D11R (the name might be cut off) that tells me there's some kind of DXVK error between DX11 and Vulkan, but I have no idea what to do with this info.

EDIT 2: Forcing Proton to use my backup card (an NVIDIA which uses its own drivers) via DXVK_FILTER_DEVICE_NAME allows games to run/display visuals. It's not ideal, because the NVIDIA card is more than 10 years old and only for running my secondary monitors, so I'm still looking to fix the AMD Vulkan drivers.

Last edited by gingeravalanche (Yesterday 02:56:33)

Offline

#2 Yesterday 02:56:21

gingeravalanche
Member
Registered: Yesterday
Posts: 7

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

Solved my issue. Had nothing to do with the system repair, and everything to do with the fact that I'd upgraded my system during the repair.

I guess Mesa Vulkan drivers just don't work on Wayland? I had been using X11 forever due to another issue, but Plasma removed the X11 session from the main package 3 days ago, so after the upgrade I was suddenly running Wayland without realizing. I had to install the plasma-x11-session package to get it back.

Last edited by gingeravalanche (Yesterday 02:57:29)

Offline

#3 Yesterday 06:46:59

seth
Member
Registered: 2012-09-03
Posts: 64,997

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

wine/proton runs on xwayland anyway.
On the wayland session, do vkcube or vkgears work on either profile? What's the output of "vulkaninfo --summary"?
https://wiki.archlinux.org/title/Vulkan … MD_drivers - use VK_DRIVER_FILES to select/force a driver.

even though (to my understanding) that tells Proton not to use DXVK at all?

Yes, do you end up using zink for glx on wayland? ("glxinfo -B")

Online

#4 Yesterday 20:31:43

gingeravalanche
Member
Registered: Yesterday
Posts: 7

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

Huh. My games definitely only run when my main desktop session is in X11, there's no doubt about that. Maybe it's something to do with the interaction between the main wayland session and the wine/proton wayland... sandbox? Mini-session? Is it a full, separate session? I'm not well-versed enough on the subject.

I uninstalled the vulkan-radeon drivers when I tested amdvlk and vice versa, which I am pretty sure is a good secondary method to force a driver. I never tried vulkan-amdgpu-pro, as I understood from the wiki that it was basically just amdvlk?

I'm currently running the X11 session and will be putting the results of those commands into this post, just in case there is some information that can be gleaned from that/the comparison to the wayland results. Then I'll be relogging on a wayland session to run those commands and edit the post with their results. Feel free to ignore the X11 results if they wouldn't provide anything useful.

On X11:

$ vulkaninfo --summary
==========
VULKANINFO
==========

Vulkan Instance Version: 1.4.313


Instance Extensions: count = 25
-------------------------------
VK_EXT_acquire_drm_display             : extension revision 1
VK_EXT_acquire_xlib_display            : extension revision 1
VK_EXT_debug_report                    : extension revision 10
VK_EXT_debug_utils                     : extension revision 2
VK_EXT_direct_mode_display             : extension revision 1
VK_EXT_display_surface_counter         : extension revision 1
VK_EXT_headless_surface                : extension revision 1
VK_EXT_surface_maintenance1            : extension revision 1
VK_EXT_swapchain_colorspace            : extension revision 5
VK_KHR_device_group_creation           : extension revision 1
VK_KHR_display                         : extension revision 23
VK_KHR_external_fence_capabilities     : extension revision 1
VK_KHR_external_memory_capabilities    : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2         : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2       : extension revision 1
VK_KHR_portability_enumeration         : extension revision 1
VK_KHR_surface                         : extension revision 25
VK_KHR_surface_protected_capabilities  : extension revision 1
VK_KHR_wayland_surface                 : extension revision 6
VK_KHR_xcb_surface                     : extension revision 6
VK_KHR_xlib_surface                    : extension revision 6
VK_LUNARG_direct_driver_loading        : extension revision 1
VK_NV_display_stereo                   : extension revision 1

Instance Layers: count = 11
---------------------------
VK_LAYER_INTEL_nullhw             INTEL NULL HW                1.1.73   version 1
VK_LAYER_MESA_device_select       Linux device selection layer 1.4.303  version 1
VK_LAYER_MESA_overlay             Mesa Overlay layer           1.4.303  version 1
VK_LAYER_MESA_screenshot          Mesa Screenshot layer        1.4.303  version 1
VK_LAYER_MESA_vram_report_limit   Limit reported VRAM          1.4.303  version 1
VK_LAYER_NV_optimus               NVIDIA Optimus layer         1.4.303  version 1
VK_LAYER_NV_present               NVIDIA GR2608 layer          1.4.303  version 1
VK_LAYER_VALVE_steam_fossilize_32 Steam Pipeline Caching Layer 1.3.207  version 1
VK_LAYER_VALVE_steam_fossilize_64 Steam Pipeline Caching Layer 1.3.207  version 1
VK_LAYER_VALVE_steam_overlay_32   Steam Overlay Layer          1.3.207  version 1
VK_LAYER_VALVE_steam_overlay_64   Steam Overlay Layer          1.3.207  version 1

Devices:
========
GPU0:
        apiVersion         = 1.4.311
        driverVersion      = 25.1.4
        vendorID           = 0x1002
        deviceID           = 0x747e
        deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
        deviceName         = AMD Radeon RX 7700 XT (RADV NAVI32)
        driverID           = DRIVER_ID_MESA_RADV
        driverName         = radv
        driverInfo         = Mesa 25.1.4-arch1.1
        conformanceVersion = 1.4.0.0
        deviceUUID         = 00000000-0300-0000-0000-000000000000
        driverUUID         = 414d442d-4d45-5341-2d44-525600000000
GPU1:
        apiVersion         = 1.4.303
        driverVersion      = 575.64.0.0
        vendorID           = 0x10de
        deviceID           = 0x1b00
        deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
        deviceName         = NVIDIA TITAN X (Pascal)
        driverID           = DRIVER_ID_NVIDIA_PROPRIETARY
        driverName         = NVIDIA
        driverInfo         = 575.64
        conformanceVersion = 1.4.1.0
        deviceUUID         = 6b3b820c-63cc-1826-434e-8d02beed6ee8
        driverUUID         = f57d2cea-ede6-5fd3-9ccc-729b3aec3f04
GPU2:
        apiVersion         = 1.4.311
        driverVersion      = 25.1.4
        vendorID           = 0x1002
        deviceID           = 0x164e
        deviceType         = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
        deviceName         = AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO)
        driverID           = DRIVER_ID_MESA_RADV
        driverName         = radv
        driverInfo         = Mesa 25.1.4-arch1.1
        conformanceVersion = 1.4.0.0
        deviceUUID         = 00000000-1200-0000-0000-000000000000
        driverUUID         = 414d442d-4d45-5341-2d44-525600000000
$ glxinfo -B
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: AMD (0x1002)
    Device: AMD Radeon RX 7700 XT (radeonsi, navi32, LLVM 20.1.6, DRM 3.63, 6.15.3-arch1-1) (0x747e)
    Version: 25.1.4
    Accelerated: yes
    Video memory: 12288MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.6
    Max compat profile version: 4.6
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 10596 MB, largest block: 10596 MB
    VBO free aux. memory - total: 15270 MB, largest block: 15270 MB
    Texture free memory - total: 10596 MB, largest block: 10596 MB
    Texture free aux. memory - total: 15270 MB, largest block: 15270 MB
    Renderbuffer free memory - total: 10596 MB, largest block: 10596 MB
    Renderbuffer free aux. memory - total: 15270 MB, largest block: 15270 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 12288 MB
    Total available memory: 27881 MB
    Currently available dedicated video memory: 10596 MB
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 7700 XT (radeonsi, navi32, LLVM 20.1.6, DRM 3.63, 6.15.3-arch1-1)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 25.1.4-arch1.1
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6 (Compatibility Profile) Mesa 25.1.4-arch1.1
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 25.1.4-arch1.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

vkcube displayed the spinning cube

$ vkcube
Selected WSI platform: xcb
Selected GPU 0: AMD Radeon RX 7700 XT (RADV NAVI32), type: DiscreteGpu

vkgears displayed the spinning gears, and there was no console output

On Wayland:

==========
VULKANINFO
==========

Vulkan Instance Version: 1.4.313


Instance Extensions: count = 25
-------------------------------
VK_EXT_acquire_drm_display             : extension revision 1
VK_EXT_acquire_xlib_display            : extension revision 1
VK_EXT_debug_report                    : extension revision 10
VK_EXT_debug_utils                     : extension revision 2
VK_EXT_direct_mode_display             : extension revision 1
VK_EXT_display_surface_counter         : extension revision 1
VK_EXT_headless_surface                : extension revision 1
VK_EXT_surface_maintenance1            : extension revision 1
VK_EXT_swapchain_colorspace            : extension revision 5
VK_KHR_device_group_creation           : extension revision 1
VK_KHR_display                         : extension revision 23
VK_KHR_external_fence_capabilities     : extension revision 1
VK_KHR_external_memory_capabilities    : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2         : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2       : extension revision 1
VK_KHR_portability_enumeration         : extension revision 1
VK_KHR_surface                         : extension revision 25
VK_KHR_surface_protected_capabilities  : extension revision 1
VK_KHR_wayland_surface                 : extension revision 6
VK_KHR_xcb_surface                     : extension revision 6
VK_KHR_xlib_surface                    : extension revision 6
VK_LUNARG_direct_driver_loading        : extension revision 1
VK_NV_display_stereo                   : extension revision 1

Instance Layers: count = 11
---------------------------
VK_LAYER_INTEL_nullhw             INTEL NULL HW                1.1.73   version 1
VK_LAYER_MESA_device_select       Linux device selection layer 1.4.303  version 1
VK_LAYER_MESA_overlay             Mesa Overlay layer           1.4.303  version 1
VK_LAYER_MESA_screenshot          Mesa Screenshot layer        1.4.303  version 1
VK_LAYER_MESA_vram_report_limit   Limit reported VRAM          1.4.303  version 1
VK_LAYER_NV_optimus               NVIDIA Optimus layer         1.4.303  version 1
VK_LAYER_NV_present               NVIDIA GR2608 layer          1.4.303  version 1
VK_LAYER_VALVE_steam_fossilize_32 Steam Pipeline Caching Layer 1.3.207  version 1
VK_LAYER_VALVE_steam_fossilize_64 Steam Pipeline Caching Layer 1.3.207  version 1
VK_LAYER_VALVE_steam_overlay_32   Steam Overlay Layer          1.3.207  version 1
VK_LAYER_VALVE_steam_overlay_64   Steam Overlay Layer          1.3.207  version 1

Devices:
========
GPU0:
        apiVersion         = 1.4.311
        driverVersion      = 25.1.4
        vendorID           = 0x1002
        deviceID           = 0x747e
        deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
        deviceName         = AMD Radeon RX 7700 XT (RADV NAVI32)
        driverID           = DRIVER_ID_MESA_RADV
        driverName         = radv
        driverInfo         = Mesa 25.1.4-arch1.1
        conformanceVersion = 1.4.0.0
        deviceUUID         = 00000000-0300-0000-0000-000000000000
        driverUUID         = 414d442d-4d45-5341-2d44-525600000000
GPU1:
        apiVersion         = 1.4.303
        driverVersion      = 575.64.0.0
        vendorID           = 0x10de
        deviceID           = 0x1b00
        deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
        deviceName         = NVIDIA TITAN X (Pascal)
        driverID           = DRIVER_ID_NVIDIA_PROPRIETARY
        driverName         = NVIDIA
        driverInfo         = 575.64
        conformanceVersion = 1.4.1.0
        deviceUUID         = 6b3b820c-63cc-1826-434e-8d02beed6ee8
        driverUUID         = f57d2cea-ede6-5fd3-9ccc-729b3aec3f04
GPU2:
        apiVersion         = 1.4.311
        driverVersion      = 25.1.4
        vendorID           = 0x1002
        deviceID           = 0x164e
        deviceType         = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
        deviceName         = AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO)
        driverID           = DRIVER_ID_MESA_RADV
        driverName         = radv
        driverInfo         = Mesa 25.1.4-arch1.1
        conformanceVersion = 1.4.0.0
        deviceUUID         = 00000000-1200-0000-0000-000000000000
        driverUUID         = 414d442d-4d45-5341-2d44-525600000000
name of display: :1
display: :1  screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 12288 MB
    Total available memory: 12288 MB
    Currently available dedicated video memory: 11261 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA TITAN X (Pascal)/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 575.64
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 575.64
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 575.64
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
$ vkcube
Selected WSI platform: xcb
Selected GPU 0: AMD Radeon RX 7700 XT (RADV NAVI32), type: DiscreteGpu
Segmentation fault (core dumped)
$ vkgears
update window failed

Last edited by gingeravalanche (Yesterday 21:06:11)

Offline

#5 Yesterday 20:48:42

gingeravalanche
Member
Registered: Yesterday
Posts: 7

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

I saw that glx was using the nvidia card on wayland, so I used __GLX_VENDOR_LIBRARY_NAME="mesa" and got the following on a second run of glxinfo -B, which indicates the same CreateSwapchain error that proton was giving me yesterday. Never found out what I could do with that information, though

But yes, it does seem like I end up using zink for glx on wayland with proton, since it would choose my 7700XT

name of display: :1
glx: failed to create dri3 screen
failed to load driver: nouveau
MESA: error: CreateSwapchainKHR failed with VK_ERROR_INITIALIZATION_FAILED
MESA: error: zink: could not create swapchain
display: :1  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Mesa (0x1002)
    Device: zink Vulkan 1.4(AMD Radeon RX 7700 XT (RADV NAVI32) (MESA_RADV)) (0x747e)
    Version: 25.1.4
    Accelerated: yes
    Video memory: 12272MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.6
    Max compat profile version: 4.6
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 12265 MB, largest block: 12265 MB
    VBO free aux. memory - total: 15591 MB, largest block: 15591 MB
    Texture free memory - total: 12265 MB, largest block: 12265 MB
    Texture free aux. memory - total: 15591 MB, largest block: 15591 MB
    Renderbuffer free memory - total: 12265 MB, largest block: 12265 MB
    Renderbuffer free aux. memory - total: 15591 MB, largest block: 15591 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 12272 MB
    Total available memory: 27865 MB
    Currently available dedicated video memory: 12265 MB
OpenGL vendor string: Mesa
OpenGL renderer string: zink Vulkan 1.4(AMD Radeon RX 7700 XT (RADV NAVI32) (MESA_RADV))
OpenGL core profile version string: 4.6 (Core Profile) Mesa 25.1.4-arch1.1
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
MESA: error: CreateSwapchainKHR failed with VK_ERROR_INITIALIZATION_FAILED
MESA: error: zink: could not create swapchain

OpenGL version string: 4.6 (Compatibility Profile) Mesa 25.1.4-arch1.1
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
MESA: error: CreateSwapchainKHR failed with VK_ERROR_INITIALIZATION_FAILED
MESA: error: zink: could not create swapchain

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 25.1.4-arch1.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Last edited by gingeravalanche (Yesterday 20:54:08)

Offline

#6 Yesterday 20:55:02

seth
Member
Registered: 2012-09-03
Posts: 64,997

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

[quote}glx: failed to create dri3 screen
failed to load driver: nouveau
MESA: error: CreateSwapchainKHR failed with VK_ERROR_INITIALIZATION_FAILED
MESA: error: zink: could not create swapchain[/quote}
Because that doesn't work and you end up w/ zink.

Do you currently export https://wiki.archlinux.org/title/KDE#Me … -specific) ?
What if you add "nvidia_drm.modeset=1" to the https://wiki.archlinux.org/title/Kernel_parameters (this will implicitly block the simpledrm device and this way retain the normal card order)?

Online

#7 Yesterday 21:29:39

gingeravalanche
Member
Registered: Yesterday
Posts: 7

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

I already had the nvidia_drm.modeset=1 in my kernel parameters (presumably, having the nouveau drivers installed in the first place caused grub-mkconfig to insert it, since I haven't manually inserted it since before I got the amd card, and I deleted grub.cfg completely and then regened it 2 days ago)

I set the priority of my gpus via the KWIN_DRM_DEVICES and that solved the problem! I guess it was defaulting to order of card numbers, which was nvidia->amd->internal. That's supported by my BIOS which also claims them to be in that order, which I don't understand because the amd card is quite definitely in the slot marked as 0. Wonder why X11 didn't read them in the same order? But anyway, setting it to use card1 first made it use the amd instead. Still not sure why telling it to use the mesa drivers didn't make it prioritize the gpu for those drivers in rendering. Wouldn't that mean glxinfo was completely lying when it said it was using mesa for rendering, if nouveau is what failed to create the swapchain?

Purely academic questions, at this point, since my problem is fixed (thanks!) but it's still interesting.

Offline

#8 Yesterday 22:23:50

seth
Member
Registered: 2012-09-03
Posts: 64,997

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

https://wiki.archlinux.org/title/PRIME - you probably also need to export DRI_PRIME and possibly __NV_PRIME_RENDER_OFFLOAD
What failed to create the swap chain was zink, which is OpenGL emulated on vulkan, there's some ongoing fuss because it recently got preferred over llvm (software emulation)

Online

#9 Yesterday 23:39:35

gingeravalanche
Member
Registered: Yesterday
Posts: 7

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

$ glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD Radeon RX 7700 XT (radeonsi, navi32, LLVM 20.1.6, DRM 3.63, 6.15.3-arch1-1)
$ DRI_PRIME=1 glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD Radeon Graphics (radeonsi, raphael_mendocino, LLVM 20.1.6, DRM 3.63, 6.15.3-arch1-1)
$ DRI_PRIME=0 glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD Radeon RX 7700 XT (radeonsi, navi32, LLVM 20.1.6, DRM 3.63, 6.15.3-arch1-1)
$ DRI_PRIME=2 glxinfo | grep "OpenGL renderer"
glx: failed to create dri3 screen
failed to load driver: nouveau
OpenGL renderer string: zink Vulkan 1.4(AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO) (MESA_RADV))

Seems like PRIME already uses my devices in amd->internal->nvidia order. This may be due to me setting MESA_VK_DEVICE_SELECT or __GLX_VENDOR_LIBRARY_NAME, but I don't enough to be sure. For a moment, I thought it was the order I set the KWIN_DRM_DEVICES, but no, I set that amd->nvidia->internal, so that's not it

I'm also not sure that I want offloading. Two displays are connected to the nvidia card which I never use for graphically intensive applications, and one is connected to the amd which is what I game/work on. As far as I understand it, offloading would tell my computer to use one card for the applications going to screens on the other card, which seems like the opposite of what I want, unless I'm missing something about how offloading works

Last edited by gingeravalanche (Yesterday 23:42:16)

Offline

#10 Today 06:41:04

seth
Member
Registered: 2012-09-03
Posts: 64,997

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

Offloading ideally tells the system to use theotherdevice™
With a hybrid system, you've to make a decision how to use it.
If you've outputs on both chips, neither can ever fully power down, but the one in active use will draw more power.
If you principally want to run on the AMD chip and only use the nvidia one as VGA hub for a third monitor, you configure the system to run on the AMD chip, make sure the nvidia one is available for reverse prime (ie. the monitor works) and otherwise never invoke it.
The "normal" prime setup is to run the session on the IGP (for which it is "good enough") and invoke the GPU for heavy lifting (games, blender, cuda …)
But if you've eg. a setup where all monitors are attached to the IGP, the optimal solution can also be to just deactivate/ignore the IGP completely (because you skip indirection and the unnecessary power draw of the IGP might just about compensate for the overhead of the GPU)

Having options means you can choose. It also means you have to choose - welcome to the adult world wink

Online

#11 Today 09:03:16

gingeravalanche
Member
Registered: Yesterday
Posts: 7

Re: [Solved] Vulkan Drivers Causing Black Screen After System Repair

It turns out a lot of the environment variables I had set were unnecessary, since something (the drivers? Proton?) is apparently smart enough, if I use KWIN_DRM_DEVICES to set the IGP as my first device, to use my second device as the renderer for games. I'll probably let the system decide which to use for the most part, and only manually set specific programs if I need to. I may even be able to get rid of the second dGPU (which I've only historically had because back in the day, a card wouldn't run 3 monitors even if it had the connectors for it, and then evolved into using it as if it were an iGPU) and just run those two monitors on the new mainboard DP/HDMI - haven't had a mobo with video outs directly on it in... 14-15 years?

Anyway, thanks for all your help.

If anyone else comes along: what ended up solving my problem was setting KWIN_DRM_DEVICES in ~/.config/plasma/workspace/env/gpu.sh to the order I wanted my gpus to be used (based on the output from the for loop shown here: https://wiki.archlinux.org/title/KDE#Me … -specific) ). Everything else I did was just restricting the system's ability to optimize in ways that probably weren't wise. Only that one change was needed in my case.

Offline

Board footer

Powered by FluxBB