Linux Gaming Repair Center

The game selects the wrong GPU

Compare enumerated adapters with the renderer actually selected by the game before applying offload options.

On this page
  1. Enumeration is a list, not a selection
  2. Choose a driver-specific comparison
  3. Keep display behavior separate
  4. Gather evidence
  5. A controlled test
  6. Related diagnostics
  7. Sources & limitations

Enumeration is a list, not a selection

A laptop may enumerate both integrated and discrete graphics while the game uses only one. A desktop can enumerate a CPU Vulkan implementation alongside its GPU. Read the game’s DXVK device line, VKD3D device selection or an applicable HUD. Compare its name and PCI identity with the intended adapter. The desktop compositor using the integrated GPU can be normal even when a game renders on the discrete GPU. Low GPU utilization alone does not identify the wrong adapter: a frame cap, CPU workload or an I/O stall can leave the correct GPU idle.

Choose a driver-specific comparison

For Mesa, DRI_PRIME can put a chosen GPU first; the Vulkan syntax with an exclamation mark can expose only that GPU. A PCI-specific value is less ambiguous than assuming that index 1 always names the desired adapter. NVIDIA proprietary PRIME offload uses different variables and requires a working offload setup. In the reviewed NVIDIA 580 documentation, NVIDIA_only controls ordering; verify the game’s final selection instead of assuming every other GPU is hidden. Do not apply a Mesa instruction merely because the machine also contains an AMD or Intel integrated GPU.

Keep display behavior separate

A correctly selected renderer can still fail to present through the desktop session or an external display path. Record whether the issue appears on the internal panel, a dock or an external monitor and whether the game uses X11 through XWayland or a native Wayland path. Compare sessions only if available and supported by the installation. Keep resolution, frame cap and scene fixed so a session comparison does not silently become a different workload. Hardware links below illustrate relevant GPU families; use the Hardware Explorer’s numeric identification for the actual machine.

Gather evidence before changing the system

Run one command at a time in the relevant host or game environment. Read its requirements and interpretation first. The website displays commands and never runs them.

Read-only observation

vulkaninfo --summary

Requirements: Vulkan tools in the graphical user session.

List candidates and driver fields. Do not assume that the first device in this host command is also the game’s selected renderer.

Temporary diagnostic environment

DXVK_HUD=devinfo,version %command%

Requirements: Steam and a game rendering through DXVK; remove after the comparison.

For a DXVK game, compare the HUD device with the intended adapter. The HUD is not a Direct3D 12/VKD3D diagnostic.

Read-only observation

printenv XDG_SESSION_TYPE

Requirements: A graphical login session that sets this variable; an unset value is inconclusive.

Record the desktop session type. This is context, not proof of the game’s own window-system path or its GPU.

A controlled test with a way back

Use the launch-options builder’s Mesa or NVIDIA branch after identifying the driver. Run one scene and verify its actual GPU name. For Mesa, replace any index assumption with the correct PCI selection when several GPUs exist.

Rollback: Remove the per-game GPU-selection variables and HUD, then restore the previous launch string. This requires no system-wide driver switch.

What this test cannot establish: Selecting a GPU cannot supply missing Vulkan features or fix a driver reset. Offload availability, layer behavior and display routing are version- and session-dependent.

Sources and scope

This editorial review uses primary project and distribution references. It does not establish that a fix has been reproduced on your hardware. Installed versions, the game runtime and the selected graphics API can change the result.