Steam won't launch game on nvidia card

Hello everyone,

I’m currently using fedora 33 on a laptop with optimus graphics (an intel hd 630 and a gtx 1050 ti). I recently installed Steam and then Skyrim SE using steam play. I went to game properties and added these launch options:
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia __VK_LAYER_NV_optimus=NVIDIA_only DXVK_HUD=1 %command%.
However the game itself still launches on the integrated graphics card, as it’s mentioned in the dxvk hud (and the performance is obviously terrible). Now, I’m not sure what’s wrong with the installation since it worked fine since installing it a year ago. If anyone could help me, i’d be grateful.

Here are the package versions:

Kernel 5.9.8
X.org 1.20.9
nvidia driver 455.45

When i launch steam from terminal it doesn’t throw an error
Running __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only vkcube throws a weird error though
INTEL-MESA: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

1 Like

Try this way:

switcherooctl list
switcherooctl launch -g ${DEV_ID} steam steam://rungameid/${GAME_ID}

Thank you for your reply! Running the first command gives me this output:

Device: 0
  Name:        Intel Corporation HD Graphics 630
  Default:     yes
  Environment: DRI_PRIME=pci-0000_00_02_0

Device: 1
  Name:        NVIDIA Corporation GP107M [GeForce GTX 1050 Ti Mobile]
  Default:     no
  Environment: __GLX_VENDOR_LIBRARY_NAME=nvidia __NV_PRIME_RENDER_OFFLOAD=1

Running switcherooctl launch -g $1 steam steam://rungameid/$489830 gives me the following error:

Traceback (most recent call last):
  File "/usr/bin/switcherooctl", line 175, in <module>
    index = int(args[1])
ValueError: invalid literal for int() with base 10: 'steam'
switcherooctl launch -g 1 steam steam://rungameid/489830

Unfortunately it still doesn’t work, the dxvk hud shows that the intel gpu is used.

1 Like

Check out this method:

That requires primus, which isn’t the recommend nvidia way. Setting __NV_PRIME_RENDER_OFFLOAD=1 worked last time I tried it (around december last year), so it must be an issue with my system. I will try reinstalling the nvidia driver and see if it helps

I mean you should try to “SET LAUNCH OPTIONS…”:

switcherooctl launch -g 1 %command%

Nope, didn’t work. Game won’t launch. I tried reinstalling the driver, but the game still uses the intel gpu. I’m starting to believe this is probably a nvidia driver bug.
Edit: after searching, turns out there aren’t any other people experiencing this bug (?). Guess i’ll wait to see if anyone else has this problem

1 Like

are you running on wayland? I had to switch to x11 to get games to use my nvidia card