You are not logged in.

#1 2024-03-19 20:03:14

Funny0facer
Member
From: Germany
Registered: 2022-12-03
Posts: 40

[SOLVED] MESA_VK_DEVICE_SELECT only works when forced

When I try to use MESA_VK_DEVICE_SELECT to switch the used GPU, it only works, when I enforce it with '!'
Is this normal behavior or am I missing something?

$ sudo pacman -Qs vulkan
local/lib32-amdvlk 2024.Q1.2-1
    AMD's standalone Vulkan driver
local/lib32-vulkan-icd-loader 1.3.279-1
    Vulkan Installable Client Driver (ICD) Loader (32-bit)
local/lib32-vulkan-radeon 1:24.0.3-1
    Radeon's Vulkan mesa driver (32-bit)
local/mangohud 0.7.1-1
    A Vulkan overlay layer for monitoring FPS, temperatures, CPU/GPU load and more.
local/qt6-shadertools 6.6.2-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.6-1 (vulkan-devel)
    API and commands for processing SPIR-V modules
local/vulkan-headers 1:1.3.279-1 (vulkan-devel)
    Vulkan header files
local/vulkan-icd-loader 1.3.279-1
    Vulkan Installable Client Driver (ICD) Loader
local/vulkan-mesa-layers 1:24.0.3-1
    Mesa's Vulkan layers
local/vulkan-radeon 1:24.0.3-1
    Radeon's Vulkan mesa driver
local/vulkan-tools 1.3.269-1 (vulkan-devel)
    Vulkan Utilities and Tools
$ MESA_VK_DEVICE_SELECT=list vulkaninfo
selectable devices:
  GPU 0: 1002:73bf "AMD Radeon RX 6800 (RADV NAVI21)" discrete GPU 0000:03:00.0
  GPU 1: 1002:164e "AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO)" integrated GPU 0000:12:00.0
$ MESA_VK_DEVICE_SELECT=1002:73bf vkcube
Selected GPU 0: AMD Radeon RX 6800 (RADV NAVI21), type: DiscreteGpu
# OK
$ MESA_VK_DEVICE_SELECT=1002:164e vkcube
Selected GPU 1: AMD Radeon RX 6800 (RADV NAVI21), type: DiscreteGpu
# GPU number changed, but still the discrete GPU
# and no usage of VRAM @ iGPU
$ MESA_VK_DEVICE_SELECT=1002:164e! vkcube
Selected GPU 0: AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO), type: IntegratedGpu
# OK
$ vkcube --gpu_number 0
Selected GPU 0: AMD Radeon RX 6800 (RADV NAVI21), type: DiscreteGpu
# OK
$ vkcube --gpu_number 1
Selected GPU 1: AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO), type: IntegratedGpu
# OK

Last edited by Funny0facer (2024-03-19 22:00:22)

Offline

#2 2024-03-19 21:09:39

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

Re: [SOLVED] MESA_VK_DEVICE_SELECT only works when forced

It's expected behaviour for vkcube. because vkcube will seek out and use a dedicated GPU if it's present in the list regardless of the order. The majority of "normal" applications will just pick the first device, but yes if you want to be sure you need to enforce it.

Related earlier discussion: https://bbs.archlinux.org/viewtopic.php?id=280222

Offline

#3 2024-03-19 22:00:08

Funny0facer
Member
From: Germany
Registered: 2022-12-03
Posts: 40

Re: [SOLVED] MESA_VK_DEVICE_SELECT only works when forced

thanks for the confirmation.

Offline

Board footer

Powered by FluxBB