You are not logged in.

#1 2023-12-10 04:34:39

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Vulkan issues under dual nvidia gpu setup

I am running an RTX 2070 super as my display output and a RTX 3090. I am trying to use the 3090 as the main game rendering device but vulkan keeps failing. When I run

ENABLE_DEVICE_CHOOSER_LAYER=1 VULKAN_DEVICE_INDEX=1 prime-run vkcube

it returns

Using Vulkan device index 1
Using Vulkan device index 1
Selected GPU 0: NVIDIA GeForce RTX 3090, type: DiscreteGpu
Could not find both graphics and present queues

I have no clue whats going wrong.

xorg.conf:

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
#    Option	"AllowNVIDIAGPUScreens"
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"
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "Unknown"
    Option         "DPMS"
EndSection




Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    Option         "Coolbits" "28"
EndSection

Section "Device"
    Identifier	"Device1"
    Driver	"nvidia"
    BusID	"PCI:10:0:0"
    Option	"Coolbits" "28"
EndSection



Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection



Section "Screen"
    Identifier     "Screen1"
    Device         "Device0"
    Monitor        "Monitor1"
    DefaultDepth 24
    SubSection     "Display"
       Depth 24
    EndSubSection
EndSection


Section "Screen"
    Identifier     "Screen2"
    Device         "Device1"
    Monitor        "Monitor2"
    DefaultDepth 24
    SubSection     "Display"
       Depth 24
    EndSubSection
EndSection

EDIT1:
It seems that this issue is only with vulkan as all other non-vulkan programs run on the correct gpu with prime-run.

Last edited by linuxsimpleton43 (2023-12-10 06:48:41)

Offline

#2 2023-12-10 12:09:09

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 12,026

Re: Vulkan issues under dual nvidia gpu setup

ENABLE_DEVICE_CHOOSER_LAYER=1 VULKAN_DEVICE_INDEX=1

You are probably using https://aur.archlinux.org/packages/vkdevicechooser ?

That code is no longer updated by upstream and its successor is in the mesa package.

Please post the output of pacman -Qs vulkan

Last edited by Lone_Wolf (2023-12-10 12:10:22)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2023-12-10 21:40:42

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

Yeah I was trying to use vkdevicechooser as its listed as the tool to use for selecting vulkan gpus in the arch wiki https://wiki.archlinux.org/title/Vulkan#Switching
pacman -Qs vulkan output:

local/lib32-nvidia-utils 545.29.06-1
    NVIDIA drivers utilities (32-bit)
local/lib32-vkd3d 1.9-1
    Direct3D 12 to Vulkan translation library By WineHQ
local/lib32-vulkan-icd-loader 1.3.269-1
    Vulkan Installable Client Driver (ICD) Loader (32-bit)
local/lib32-vulkan-mesa-layers 1:23.2.1-2
    Mesa's Vulkan layers (32-bit)
local/nvidia-utils 545.29.06-1
    NVIDIA drivers utilities
local/qt6-shadertools 6.6.1-1 (qt6)
    Provides functionality for the shader pipeline that allows Qt Quick to operate on Vulkan, Metal, and Direct3D, in addition to OpenGL
local/spirv-tools 2023.5-1 (vulkan-devel)
    API and commands for processing SPIR-V modules
local/vkbasalt 0.3.2.10-1
    A Vulkan post-processing layer. Some of the effects are CAS, FXAA, SMAA, deband.
local/vkd3d 1.9-1
    Direct3D 12 to Vulkan translation library By WineHQ
local/vkdevicechooser 1.1-1
    Vulkan layer to force a specific physical GPU device to be used
local/vkmark 20220318-1
    Vulkan benchmark
local/vulkan-headers 1:1.3.269-1 (vulkan-devel)
    Vulkan header files
local/vulkan-icd-loader 1.3.269-1
    Vulkan Installable Client Driver (ICD) Loader
local/vulkan-mesa-layers 1:23.2.1-2
    Mesa's Vulkan layers
local/vulkan-tools 1.3.269-1 (vulkan-devel)
    Vulkan Utilities and Tools
local/vulkan-utility-libraries 1.3.269-1 (vulkan-devel)
    Vulkan Utility Libraries
local/vulkan-validation-layers 1.3.268.0-1 (vulkan-devel)
    Vulkan Validation Layers

Last edited by linuxsimpleton43 (2023-12-10 21:42:30)

Offline

#4 2023-12-11 10:06:57

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 12,026

Re: Vulkan issues under dual nvidia gpu setup

I guess someone needs to correct the wiki then, as VK_LAYER_MESA_device_select from vulkan-mesa-layers is easier to use, is kept uptodate and supports everything latest vulkan spec does.

https://docs.mesa3d.org/envvars.html#vu … -variables for info how to use the layer.

Please post the outputs of

$ vulkaninfo --summary
$ MESA_VK_DEVICE_SELECT=list vulkaninfo

Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#5 2023-12-12 03:06:05

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

MESA_VK_DEVICE_SELECT=list vulkaninfo:

  GPU 0: 10de:1e84 "NVIDIA GeForce RTX 2070 SUPER" discrete GPU 0000:04:00.0
  GPU 1: 10de:2204 "NVIDIA GeForce RTX 3090" discrete GPU 0000:0a:00.0 

vulkaninfo --summary:

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

Vulkan Instance Version: 1.3.269


Instance Extensions: count = 23
-------------------------------
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_surface_maintenance1            : extension revision 1
VK_EXT_swapchain_colorspace            : extension revision 4
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

Instance Layers: count = 14
---------------------------
VK_LAYER_FROG_gamescope_wsi_x86_64 Gamescope WSI (XWayland Bypass) Layer (x86_64) 1.3.221  version 1
VK_LAYER_INTEL_nullhw              INTEL NULL HW                                  1.1.73   version 1
VK_LAYER_KHRONOS_validation        Khronos Validation Layer                       1.3.268  version 1
VK_LAYER_LUNARG_api_dump           LunarG API dump layer                          1.3.250  version 2
VK_LAYER_LUNARG_monitor            Execution Monitoring Layer                     1.3.250  version 1
VK_LAYER_LUNARG_screenshot         LunarG image capture layer                     1.3.250  version 1
VK_LAYER_MESA_device_select        Linux device selection layer                   1.3.211  version 1
VK_LAYER_MESA_overlay              Mesa Overlay layer                             1.3.211  version 1
VK_LAYER_NV_optimus                NVIDIA Optimus layer                           1.3.260  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
VK_LAYER_VKBASALT_post_processing  a post processing layer                        1.3.223  version 1

Devices:
========
GPU0:
	apiVersion         = 1.3.260
	driverVersion      = 545.29.6.0
	vendorID           = 0x10de
	deviceID           = 0x1e84
	deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
	deviceName         = NVIDIA GeForce RTX 2070 SUPER
	driverID           = DRIVER_ID_NVIDIA_PROPRIETARY
	driverName         = NVIDIA
	driverInfo         = 545.29.06
	conformanceVersion = 1.3.6.0
	deviceUUID         = b5291141-3ff6-f8bf-c85d-2f8e52fc144d
	driverUUID         = 468717c2-5245-5d6d-9401-72b8a4ff98e5
GPU1:
	apiVersion         = 1.3.260
	driverVersion      = 545.29.6.0
	vendorID           = 0x10de
	deviceID           = 0x2204
	deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
	deviceName         = NVIDIA GeForce RTX 3090
	driverID           = DRIVER_ID_NVIDIA_PROPRIETARY
	driverName         = NVIDIA
	driverInfo         = 545.29.06
	conformanceVersion = 1.3.6.0
	deviceUUID         = b57a16e3-308d-9773-fddb-b863910a9c41
	driverUUID         = 468717c2-5245-5d6d-9401-72b8a4ff98e5

MESA_VK_DEVICE_SELECT=10de:2204 vkcube:

Selected GPU 0: NVIDIA GeForce RTX 3090, type: DiscreteGpu
Could not find both graphics and present queues

Also heres the full output of vulkaninfo: https://0x0.st/H3Ee.txt

Last edited by linuxsimpleton43 (2023-12-12 03:27:38)

Offline

#6 2023-12-12 12:36:51

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 12,026

Re: Vulkan issues under dual nvidia gpu setup

The full output of vulkaninfo should show all gpu driver combos under Presentable Surfaces: , but yours only shows one.

https://forums.developer.nvidia.com/t/h … pus/222832 seems relevant .

especially post #9 in that thread.

please post output of

$ xrandr --listproviders
$ DISPLAY="" MESA_VK_DEVICE_SELECT=10de:2204 vkcube

Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#7 2023-12-13 02:45:29

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

Heres

xrandr --listproviders

Provider 0: id: 0x1b7 cap: 0x1, Source Output crtcs: 4 outputs: 7 associated providers: 2 name:NVIDIA-0
Provider 1: id: 0x3a1 cap: 0x2, Sink Output crtcs: 1 outputs: 1 associated providers: 1 name:modesetting
Provider 2: id: 0x375 cap: 0x2, Sink Output crtcs: 4 outputs: 7 associated providers: 1 name:NVIDIA-G0 

And here is

DISPLAY="" MESA_VK_DEVICE_SELECT=10de:2204 vkcube

Environment variable DISPLAY requires a valid value.
Exiting ...

Offline

#8 2023-12-13 10:17:14

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 12,026

Re: Vulkan issues under dual nvidia gpu setup

Provider 0: id: 0x1b7 cap: 0x1, Source Output crtcs: 4 outputs: 7 associated providers: 2 name:NVIDIA-0
Provider 1: id: 0x3a1 cap: 0x2, Sink Output crtcs: 1 outputs: 1 associated providers: 1 name:modesetting
Provider 2: id: 0x375 cap: 0x2, Sink Output crtcs: 4 outputs: 7 associated providers: 1 name:NVIDIA-G0 

That strongly suggests you are running a three gpu setup, not a dual one.

Please post the full output of lspci -k and xorg log.
See https://wiki.archlinux.org/title/Xorg#General for inof where to find xorg logs.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#9 2023-12-13 11:18:08

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,919

Re: Vulkan issues under dual nvidia gpu setup

FWIW what's your reasoning for the convoluted setup? Why not plug things into the 3090 and use that for rendering and presenting?

Offline

#10 2023-12-14 01:38:41

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

It seems that the 3rd "gpu" was just the modesetting driver being loaded because my xorg.conf was empty. I created a basic xorg.conf and attached it with the xorg log.

xorg.conf

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection


Section "ServerLayout"
    Identifier "layout"
    Option "AllowNVIDIAGPUScreens"
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 "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Xorg Log: https://0x0.st/HYrh.txt

lspci -k output:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Root Complex
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Starship/Matisse IOMMU
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse IOMMU
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge
00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse GPP Bridge
	Kernel driver in use: pcieport
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge
	DeviceName:  Onboard IGD
00:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge
00:03.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse GPP Bridge
	Kernel driver in use: pcieport
00:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge
00:05.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge
00:07.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge
00:07.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]
	Kernel driver in use: pcieport
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]
	Kernel driver in use: pcieport
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 61)
	Subsystem: ASUSTeK Computer Inc. FCH SMBus Controller
	Kernel driver in use: piix4_smbus
	Kernel modules: i2c_piix4, sp5100_tco
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
	Subsystem: ASUSTeK Computer Inc. FCH LPC Bridge
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 3
	Kernel driver in use: zenpower
	Kernel modules: k10temp, zenpower
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Matisse/Vermeer Data Fabric: Device 18h; Function 7
01:00.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse Switch Upstream
	Kernel driver in use: pcieport
02:01.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Matisse PCIe GPP Bridge
	Kernel driver in use: pcieport
02:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Matisse PCIe GPP Bridge
	Kernel driver in use: pcieport
02:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Matisse PCIe GPP Bridge
	Kernel driver in use: pcieport
02:05.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Matisse PCIe GPP Bridge
	Kernel driver in use: pcieport
02:08.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Matisse PCIe GPP Bridge
	Kernel driver in use: pcieport
02:09.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Matisse PCIe GPP Bridge
	Kernel driver in use: pcieport
02:0a.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
	Subsystem: ASUSTeK Computer Inc. Matisse PCIe GPP Bridge
	Kernel driver in use: pcieport
03:00.0 Non-Volatile memory controller: Sandisk Corp WD Blue SN550 NVMe SSD 2TB (DRAM-less) (rev 01)
	Subsystem: Sandisk Corp WD Blue SN550 NVMe SSD 2TB (DRAM-less)
	Kernel driver in use: nvme
	Kernel modules: nvme
04:00.0 VGA compatible controller: NVIDIA Corporation TU104 [GeForce RTX 2070 SUPER] (rev a1)
	Subsystem: Gigabyte Technology Co., Ltd TU104 [GeForce RTX 2070 SUPER]
	Kernel driver in use: nvidia
	Kernel modules: nouveau, nvidia_drm, nvidia
04:00.1 Audio device: NVIDIA Corporation TU104 HD Audio Controller (rev a1)
	Subsystem: Gigabyte Technology Co., Ltd TU104 HD Audio Controller
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
04:00.2 USB controller: NVIDIA Corporation TU104 USB 3.1 Host Controller (rev a1)
	Subsystem: Gigabyte Technology Co., Ltd TU104 USB 3.1 Host Controller
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
04:00.3 Serial bus controller: NVIDIA Corporation TU104 USB Type-C UCSI Controller (rev a1)
	Subsystem: Gigabyte Technology Co., Ltd TU104 USB Type-C UCSI Controller
	Kernel driver in use: nvidia-gpu
	Kernel modules: i2c_nvidia_gpu
05:00.0 Network controller: Intel Corporation Wireless-AC 9260 (rev 29)
	Subsystem: Intel Corporation Wireless-AC 9260
	Kernel driver in use: iwlwifi
	Kernel modules: iwlwifi
06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 26)
	Subsystem: ASUSTeK Computer Inc. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
	Kernel driver in use: r8169
	Kernel modules: r8169
07:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse Reserved SPP
07:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
	Subsystem: ASUSTeK Computer Inc. Matisse USB 3.0 Host Controller
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
07:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
	Subsystem: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
08:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 51)
	Subsystem: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode]
	Kernel driver in use: ahci
09:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 51)
	Subsystem: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode]
	Kernel driver in use: ahci
0a:00.0 VGA compatible controller: NVIDIA Corporation GA102 [GeForce RTX 3090] (rev a1)
	Subsystem: Micro-Star International Co., Ltd. [MSI] GA102 [GeForce RTX 3090]
	Kernel driver in use: nvidia
	Kernel modules: nouveau, nvidia_drm, nvidia
0a:00.1 Audio device: NVIDIA Corporation GA102 High Definition Audio Controller (rev a1)
	Subsystem: Micro-Star International Co., Ltd. [MSI] GA102 High Definition Audio Controller
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
0b:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Function
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse PCIe Dummy Function
0c:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse Reserved SPP
0c:00.1 Encryption controller: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Cryptographic Coprocessor PSPCPP
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse Cryptographic Coprocessor PSPCPP
	Kernel driver in use: ccp
	Kernel modules: ccp
0c:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
	Subsystem: ASUSTeK Computer Inc. Matisse USB 3.0 Host Controller
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
0c:00.4 Audio device: Advanced Micro Devices, Inc. [AMD] Starship/Matisse HD Audio Controller
	Subsystem: ASUSTeK Computer Inc. Starship/Matisse HD Audio Controller
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

New xrandr --listproviders:

 Providers: number : 2
Provider 0: id: 0x1b7 cap: 0x1, Source Output crtcs: 4 outputs: 7 associated providers: 1 name:NVIDIA-0
Provider 1: id: 0x375 cap: 0x2, Sink Output crtcs: 4 outputs: 7 associated providers: 1 name:NVIDIA-G0

Also here is the new vulkaninfo output: https://0x0.st/HYrC.txt

Offline

#11 2023-12-14 01:42:44

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

V1del wrote:

FWIW what's your reasoning for the convoluted setup? Why not plug things into the 3090 and use that for rendering and presenting?

I want to use 100% of the 3090 while also using my desktop environment. I had the same setup with the 2070 and a RX580 but I sold the RX580. My last setup worked well for me as I could still render light games/programs with the RX580 while pushing the 2070 to max utilization for cuda stuff and other rendering tasks. I was going to just give up and use the 3090 by itself but I want to solve this problem so I have the option and also so that if anyone else runs into this issue they can fix it too (I've read a few posts on the nvidia dev forum where people had the same issue but they never got replies).

Offline

#12 2023-12-14 08:05:18

seth
Member
Registered: 2012-09-03
Posts: 52,396

Re: Vulkan issues under dual nvidia gpu setup

The xorg config is pointless nonsense, just completely remove that.
Then

[   718.773] (II) xfree86: Adding drm device (/dev/dri/card0)
[   718.773] (II) Platform probe for /sys/devices/platform/simple-framebuffer.0/drm/card0

enable https://wiki.archlinux.org/title/NVIDIA … de_setting

Did getting rid of the bogus output device have any impact on the ENABLE_DEVICE_CHOOSER_LAYER=1 or MESA_VK_DEVICE_SELECT=10de:2204 situation?
Don't unset the DISPLAY environment, the linked thread seems to be about VirtualGL
Sanity check: this also isn't a wayland session, is it?

Offline

#13 2023-12-14 22:19:39

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

I removed the xorg config, enabled DRM kernel mode setting. That got rid of the fake output device, but the same error remains. Also its not a wayland session either.

Offline

#14 2023-12-15 09:28:01

seth
Member
Registered: 2012-09-03
Posts: 52,396

Re: Vulkan issues under dual nvidia gpu setup

"the same error remains" - if you unset the DISPLAY, the command will fail. If you didn't I'd expect a different error.
Please don't paraphrase, https://bbs.archlinux.org/viewtopic.php?id=57855

Wrt. https://bbs.archlinux.org/viewtopic.php … 3#p2136383 and while idk how bitrotten that approach might be I'd just trust the puppy and suggest to remove that layer and focus on the mesa approach, w/ the caveat that you're using an nvidia system - so please post the present error of the MESA_VK_DEVICE_SELECT approach first (and if it's "Environment variable DISPLAY requires a valid value." *do not unset that variable!)

Offline

#15 2023-12-15 20:07:27

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

The output of

MESA_VK_DEVICE_SELECT=10de:2204 vkcube

is still just

Selected GPU 0: NVIDIA GeForce RTX 3090, type: DiscreteGpu
Could not find both graphics and present queues

Running

 DISPLAY="" MESA_VK_DEVICE_SELECT=10de:2204 vkcube

just returns

Environment variable DISPLAY requires a valid value.
Exiting ..

Also the output of vulkaninfo is https://0x0.st/HYcX.txt

Offline

#16 2023-12-15 20:48:44

seth
Member
Registered: 2012-09-03
Posts: 52,396

Re: Vulkan issues under dual nvidia gpu setup

Sanity check, does

vkcube --gpu_number …

allow you to control the GPU?

Offline

#17 2023-12-15 22:31:12

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

Yes it does select the gpu, but it fails the same way that using MESA_VK_DEVICE_SELECT=10de:2204 does.

vkcube --gpu_number 1

gives the output

Selected GPU 1: NVIDIA GeForce RTX 3090, type: DiscreteGpu
Could not find both graphics and present queues

Offline

#18 2023-12-15 22:41:11

willianholtz
Member
Registered: 2017-09-23
Posts: 42

Re: Vulkan issues under dual nvidia gpu setup

Which driver are you using?

Officials or the open?

Nvidia or Nvidia-open?

Offline

#19 2023-12-15 23:07:12

linuxsimpleton43
Member
Registered: 2022-03-24
Posts: 32

Re: Vulkan issues under dual nvidia gpu setup

I just tried using Nvidia-Open and it has the exact same behavior as the official Nvidia driver (which is what was used in my previous posts)

Offline

Board footer

Powered by FluxBB