Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue with GPU (wrong GPU chosen) #2036

Closed
gabriele2000 opened this issue Apr 22, 2021 · 11 comments
Closed

Issue with GPU (wrong GPU chosen) #2036

gabriele2000 opened this issue Apr 22, 2021 · 11 comments

Comments

@gabriele2000
Copy link

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

@doitsujin
Copy link
Owner

doitsujin commented Apr 22, 2021

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.

@gabriele2000
Copy link
Author

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.

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

@misyltoad
Copy link
Collaborator

It will not.

@gabriele2000
Copy link
Author

gabriele2000 commented Apr 22, 2021

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

@SveSop
Copy link
Contributor

SveSop commented Apr 23, 2021

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).

@N-Accumbens
Copy link

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...

@gabriele2000
Copy link
Author

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

@meladath
Copy link

meladath commented Dec 21, 2021

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...

@LunNova
Copy link

LunNova commented Sep 21, 2022

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.

@Blisto91
Copy link
Contributor

@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.

@K0bin
Copy link
Collaborator

K0bin commented Sep 30, 2024

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.

@K0bin K0bin closed this as completed Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants