mirror of
https://github.com/games-on-whales/wolf.git
synced 2026-10-15 21:12:08 +00:00
[GH-ISSUE #449] [FR] Support multi-GPU load balancing #278
Labels
No labels
🧠 1 - 🤖 999
AMD
bug
bug
cannot reproduce
documentation
duplicate
easy
enhancement
enhancement
enhancement
fixed?
fixed?
good first issue
hard
help wanted
Intel
invalid
LXC
medium
moonlight-protocol
Multi GPU
nixos
not a bug
nvidia
pull-request
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
games-on-whales/wolf#278
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ABeltramo on GitHub (Jun 26, 2026).
Original GitHub issue: https://github.com/games-on-whales/wolf/issues/449
We've got multi-user already, including multiple independent games and co-op lobbies for multiple users. Now, the natural extension is supporting multi-GPU setups where one instance of Wolf can start games and encoding pipelines on multiple GPUs when available.
The high level idea is that in Wolf-UI, before launching an app, users can freely pick a GPU to use for that app/game. This makes the implementation easier because we don't have to came up with some complex heuristic to automatically determine the "best available GPU node" (spoiler: any heuristic will be more or less broken).
Wolf-UI itself needs to already run on a GPU though, we can start simple with defaulting to the currently available
WOLF_RENDER_NODEbut, in future, we might want to try running the Wayland rendering + encoding pipeline on a GPU and then, if it fails, automatically switch over the next available GPU. This will be particularly important in order to get around the limit of how many concurrent encoding sessions are possible on a given GPU (ex Nvidia)Implementation details
Thinking about this, we need at the very least:
/api/v1/gpuswhich returns not only a list of render nodes but also the capabilities available (ex:H264,HEVC,HEVC 4:4:4,HEVC HDR, etc.)/api/v1/lobbies/createalready supportswayland_render_nodeandrunner_render_nodeso we should be fine there.