protonscr

Error 307 - Wrong GPU selected by SteamVR with 'IGD multimonitor' enabled

steamvropen bug
ValveSoftware/SteamVR-for-Linux#238 · opened 2019-09-01 by geefr · updated 2019-12-09 · 5 comments · github
Ggeefr 2019-09-01 github

Found the cause of error 307 on my system, and it's down to SteamVR selecting the integrated GPU instead of dedicated.

I know on my system integrated will be device 0 when interrogating vulkan/similar, in any vulkan demos I've written I've had to add logic to select the dedicated card, or the one that provides present capability in the vulkan context.

Disabling the option 'IGD multimonitor' or otherwise disabling the integrated GPU in EFI seems to have corrected the issue

To Reproduce
Steps to reproduce the behavior:

  1. Build a Linux box with multiple gpus
  2. Enable 'IGD Multimonitor'
  3. Start steamvr, with headset plugged into dedicated GPU
  4. See error

Expected behavior

  • SteamVR should enumerate the GPUs, and if possible select the one the headset is plugged in to.
  • Failing this should select the highest performance/dedicated gpu, likely that's the right one
  • Failing this should allow the user to select which gpu will be used

System Information:

For hardware config my system is a KVM/gpu passthrough box, so has multiple gpus

  • GPU 0: Integrated intel GPU
  • GPU 1: GTX1060, top PCI slot, available to host system (The one steam should be using)
  • GPU 2: GTX1070, bottom PCI slot, passed through to VM. Not visible to host system
Hh1z1 2019-09-03 github

Can confirm this,I swear it worked at one point. Curious if in your case the Steam client itself works?

Ggeefr 2019-09-03 github

Yep the steam client works fine, and all non-vr games work correctly as far as gpu usage goes.

Very much a low priority, reconfiguring GPUs on my system is a fairly common occurrence anyway :)

Hh1z1 2019-09-04 github

Shouldn't be though. With GL_NVX_linked_gpu_multicast etc NVIDIA and AMD have their own multi GPU technologies targeted toward VR. The drivers already support multi gpu but appears some of the required plumbing in Steam isn't.

KK1ngjulien 2019-11-25 github

Thanks!! Just tried running Steam VR on linux for the first time. Kept getting the 307 error and saw that it tried to use my IGPU in the Settings.
Turning off IGPU Multimonitor in my BIOS fixed this.

ZZamundaaa 2019-12-09 github

I had a similar issue just now. I had Intel Vulkan packages installed alongside Radeon Vulkan packages and SteamVR used the iGPU - it did work but as direct display is not implemented for Intel it showed the compositor as a borderless window on the screen and complained about direct mode not being enabled.
I always have iGPU multimonitor enabled and have to for my 3rd old screen with DVI. It's no biggie for me either because I don't use the iGPU for anything else so I can just leave the Vulkan packages uninstalled for now but it would still be nice if SteamVR could go through the GPUs, selecting the most powerful one by default and perhaps provide an option in the settings to change which one is used.

Nothing extracted yet.