Are you using Proton? If so, WINEDLLOVERRIDES=dxgi=n should fix that problem (which switches to DXVK's DXGI implementation).
DXVK always prioritizes dedicated GPUs over integrated ones, but if the game insists on using the integrated one for whatever reason, there's always the option to use DXGI_FILTER_DEVICE_NAME as well.
Are you using Proton? If so,
WINEDLLOVERRIDES=dxgi=nshould fix that problem (which switches to DXVK's DXGI implementation).DXVK always prioritizes dedicated GPUs over integrated ones, but if the game insists on using the integrated one for whatever reason, there's always the option to use
DXGI_FILTER_DEVICE_NAMEas well.
I'm using wine-staging-tkg 6.5, a custom build, and that's the only game that has this problem...
I'll wait until 6.7 comes out, maybe it'll fix the problem
It will not.
It will not.
where do I have to write "DXGI_FILTER_DEVICE_NAME" if there isn't any .log file in the game's folder? Asking since the log files are a living proof that DXVK is working and for that game, it's not.
Besides, I always used DXGI from DXVK, 'cause I use reshade, and that too is a proof that everything's working
https://github.com/doitsujin/dxvk#device-filter
Either in your launcher script with eg. export DXVK_FILTER_DEVICE_NAME="My GPU" or just as part of the wine launcher line.
You can also redirect log files to a separate folder of your choosing (so you do not have to find the correct folder where the .exe file is or whatnot).
export DXVK_LOG_PATH="/home/yourname/gamelogs" (or whatever you would like).
Related to this, is it possible to choose the GPU based on something other than the name? I have two of the same GPUs that have the same name, but they're not in SLI...
GPU selection is possible from the nvidia control panel.
The one in the windows settings only works for directx.
What if I'm a Linux user?
You know, DXVK is for Linux
I have made a change that allows DXVK to check deviceUUID rather than just device name.
I use this locally to force my PC to use my first GPU. I have 2 vega 56 with only a the top card plugged into monitors. vulkaninfo reports it as GPU 1 (not 0), however it is in the first PCI-E slot. DXVK always picks the other card. I checked the UUID using vulkaninfo and then force it in with DXVK_FILTER_DEVICE_UUID=3 (the UUID is all 0's with a single 3 to indicate its pcibus).
This code works for me, if people are interested I may put up a branch/PR, but the code may very well be rejected, as I do not know the DXVK codebase well, and this was just a 15 minute fix to allow playing games...
The device UUIDs aren't guaranteed to be unique either:
Devices:
========
GPU0:
apiVersion = 4206803 (1.3.211)
driverVersion = 92278791 (0x5801007)
vendorID = 0x1002
deviceID = 0x73a3
deviceType = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
deviceName = AMD RADV SIENNA_CICHLID
driverID = DRIVER_ID_MESA_RADV
driverName = radv
driverInfo = Mesa 22.1.7
conformanceVersion = 1.3.0.0
deviceUUID = 00000000-0600-0000-0000-000000000000
driverUUID = 414d442d-4d45-5341-2d44-525600000000
GPU1:
apiVersion = 4206803 (1.3.211)
driverVersion = 92278791 (0x5801007)
vendorID = 0x1002
deviceID = 0x73a3
deviceType = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
deviceName = AMD RADV SIENNA_CICHLID
driverID = DRIVER_ID_MESA_RADV
driverName = radv
driverInfo = Mesa 22.1.7
conformanceVersion = 1.3.0.0
deviceUUID = 00000000-0c00-0000-0000-000000000000
driverUUID = 414d442d-4d45-5341-2d44-525600000000
edit: Nevermind, didn't see the c/6 at the left and parsed it as all zeros.
@gabriele2000 Are you still having the issue to this day?
There have been some changes lately that should make it work better with games that prioritize GPU depending on reported vram amount.
Reopen if it's still an issue. Otherwise I'll assume the recent changes to the way GPUs are presented to the game fixes this.
Sort of a follow up to this. Not sure if it deserves its own thread though. I have two 4090s in my system, though one has terrible airflow.
For this reason i have my display plugged into the one that has decent airflow. I'd have assumed that DXVK would've selected this one to launch applications on, but it just selects the first one it sees. The one with bad airflow is 0 in nvidia-smi and the one with good airflow is 1. However, to vulkaninfo they are both just called NVIDIA GeForce RTX 4090 so the name filter doesn't work.
I don't suppose there is a way to tell DXVK which GPU to use? If not via the GPU ID in nvidia-smi, then maybe by it's PCIe device ID?
Sort of a follow up to this. Not sure if it deserves its own thread though. I have two 4090s in my system, though one has terrible airflow.
For this reason i have my display plugged into the one that has decent airflow. I'd have assumed that DXVK would've selected this one to launch applications on, but it just selects the first one it sees. The one with bad airflow is
0innvidia-smiand the one with good airflow is1. However, tovulkaninfothey are both just calledNVIDIA GeForce RTX 4090so the name filter doesn't work.I don't suppose there is a way to tell DXVK which GPU to use? If not via the GPU ID in nvidia-smi, then maybe by it's PCIe device ID?
You could use my branch, it's working, ref: https://github.com/doitsujin/dxvk/pull/2408#issuecomment-2922310765
Sort of a follow up to this. Not sure if it deserves its own thread though. I have two 4090s in my system, though one has terrible airflow.
For this reason i have my display plugged into the one that has decent airflow. I'd have assumed that DXVK would've selected this one to launch applications on, but it just selects the first one it sees. The one with bad airflow is0innvidia-smiand the one with good airflow is1. However, tovulkaninfothey are both just calledNVIDIA GeForce RTX 4090so the name filter doesn't work.
I don't suppose there is a way to tell DXVK which GPU to use? If not via the GPU ID in nvidia-smi, then maybe by it's PCIe device ID?You could use my branch, it's working, ref: [#2408 (comment)](https://github.com/doitsujin/dxvk/pull/2408#issuecomment-2922310765)
does this https://github.com/aejsmith/vkdevicechooser help fix that issue?
Sort of a follow up to this. Not sure if it deserves its own thread though. I have two 4090s in my system, though one has terrible airflow.
For this reason i have my display plugged into the one that has decent airflow. I'd have assumed that DXVK would've selected this one to launch applications on, but it just selects the first one it sees. The one with bad airflow is0innvidia-smiand the one with good airflow is1. However, tovulkaninfothey are both just calledNVIDIA GeForce RTX 4090so the name filter doesn't work.
I don't suppose there is a way to tell DXVK which GPU to use? If not via the GPU ID in nvidia-smi, then maybe by it's PCIe device ID?You could use my branch, it's working, ref: [#2408 (comment)](https://github.com/doitsujin/dxvk/pull/2408#issuecomment-2922310765)
does this https://github.com/aejsmith/vkdevicechooser help fix that issue?
No. I gave vkdevicechooser a try, but it didn’t solve the issue on my system.
Since I have two identical GPUs, only filtering by UUID worked properly in my case.
No. I gave vkdevicechooser a try, but it didn’t solve the issue on my system.
Are you sure you tested that? It used the index instead. I used:
ENABLE_DEVICE_CHOOSER_LAYER=1 VULKAN_DEVICE_INDEX=1 vulkaninfo --summary
and the output only showed one GPU's information.
No. I gave vkdevicechooser a try, but it didn’t solve the issue on my system.
Are you sure you tested that? It used the index instead. I used:
ENABLE_DEVICE_CHOOSER_LAYER=1 VULKAN_DEVICE_INDEX=1 vulkaninfo --summary
and the output only showed one GPU's information.
You're right — I just tested it again, and it worked. Now I see what happened: I hadn’t tested it with Gamescope as I thought.
Without using Gamescope, I still get DXGI surface problems.
Thank you!
No. I gave vkdevicechooser a try, but it didn’t solve the issue on my system.
Are you sure you tested that? It used the index instead. I used:
ENABLE_DEVICE_CHOOSER_LAYER=1 VULKAN_DEVICE_INDEX=1 vulkaninfo --summary
and the output only showed one GPU's information.
@Zebra2711 FYI my branch was merged, therefore, now you can use DXVK_FILTER_DEVICE_UUID=adef250e5637a4fae6c2c42288ffe233 (my example)
@Zebra2711 FYI my branch was merged, therefore, now you can use DXVK_FILTER_DEVICE_UUID=adef250e5637a4fae6c2c42288ffe233 (my example)
Tks, i opened a PR to add it to lutris
DXVK_FILTER_DEVICE_UUID=adef250e5637a4fae6c2c42288ffe233x2 2025-05DXVK_FILTER_DEVICE_UUID=3x1 2021-12DXVK_FILTER_DEVICE_NAME="My GPU"x1 2021-04DXVK_LOG_PATH="/home/yourname/gamelogs"x1 2021-04WINEDLLOVERRIDES=dxgi=n`x2 2021-04
I honestly don't know where to ask this, because I don't know if it's a DXVK issue or a Wine one...
Long story short, the game "Curse of the Dead Gods" launches on my integrated GPU instead on the Nvidia GPU which is strange because the game runs on DX11 as far as I know...
I'll upload the log, that's the only game that has this "issue". Yes, issue because the framerate is pure garbage without DXVK
wine.log