Aliased LUID seems like a bug elsewhere in the system though ...
VkBool32 vkGetPhysicalDeviceWin32PresentationSupportKHR(
VkPhysicalDevice physicalDevice,
uint32_t queueFamilyIndex);
Only thing I can think of is to try calling this if there are duplicates and hope for the best.
The real question is why there are two GPUs using the same LUID, the entire point of LUIDs is to be unique so that we (and D3D12 apps, for that matter) can use them to correlate D3D12/Vulkan devices with DXGI adapters.
My system has:
1 x 5070 Ti (the one I want to use for Proton)
2 x 5060 Ti (these are triggerin this error)
I am unable to select the 5070 using DXVK_FILTER_DEVICE_NAME=5070 %command% because of this.
I found a workaround:
On multi-GPU Linux you can pick the render GPU (mesa device-select layer) but presenting is bound to the compositor's GPU — so you also need gamescope to own the the presentation.
Fix:
sudo pacman -S vulkan-mesa-device-select lib32-vulkan-mesa-device-selectvendorID:deviceID: vulkaninfo --summary | grep -E 'deviceName|deviceID'MESA_VK_DEVICE_SELECT=10de:XXXX gamescope -W 2560 -H 1440 -r 60 --prefer-vk-device 10de:XXXX -- %command%
proton experimentalx1 2026-01DXVK_FILTER_DEVICE_NAME=5070x1 2026-07MESA_VK_DEVICE_SELECT=10de:XXXXx1 2026-07VKD3D_DISABLE_EXTENSIONS=VK_KHR_present_waitx1 2026-01VKD3D_VULKAN_DEVICE=0x1 2026-01DXVK_FILTER_DEVICE_NAME=5070 %command%x1 2026-07
Describe the issue
DX12 games running via Proton / VKD3D-Proton fail to start on systems with two identical NVIDIA GPUs, crashing during swapchain creation with:
The Proton log consistently shows:
VKD3D-Proton cannot reliably resolve which Vulkan physical device corresponds to the requested D3D12 adapter when multiple identical GPUs share the same LUID. The game is bound to a headless GPUthat cannot present to the X11 surface.
Software information
System information
GPU: 2× NVIDIA GeForce RTX 4070
Driver: NVIDIA 580.95.5
VKD3D-Proton: bundled with Proton Experimental (applicationVersion 3.0.0)
Relevant log excerpt
Workaround
Forcing the Vulkan device and disabling
VK_KHR_present_waitfixes the issue:Changing the device index reproduces the crash.
Expected behavior
VKD3D-Proton should select a Vulkan device that supports presentation to the target surface when multiple identical GPUs are present, or fail earlier with a clearer diagnostic.