Skip to content

fix: use discrete GPU when more powerful GPU is requested - #399

Open
Jan200101 wants to merge 1 commit into
pop-os:masterfrom
Jan200101:PR/switcheroo
Open

fix: use discrete GPU when more powerful GPU is requested#399
Jan200101 wants to merge 1 commit into
pop-os:masterfrom
Jan200101:PR/switcheroo

Conversation

@Jan200101

Copy link
Copy Markdown

requires pop-os/dbus-settings-bindings#29

Uses a discrete GPU when a more powerful GPU is requested using PrefersNonDefaultGPU

PrefersNonDefaultGPU
If true, the application prefers to be run on a more powerful discrete GPU if available, which we describe as “a GPU other than the default one” in this spec to avoid the need to define what a discrete GPU is and in which cases it might be considered more powerful than the default GPU. This key is only a hint and support might not be present depending on the implementation.

https://specifications.freedesktop.org/desktop-entry/latest/recognized-keys.html


Gnome and KDE (and Cinnamon) disagree how the check should be
KDE (and Cinnamon) prefer a Default Discrete GPU and otherwise use the first Discrete GPU
GNOME uses the first Non Default Discrete GPU and otherwise any Discrete GPU
I'll leave deciding this to someone else though I think the way KDE did it is best for usability.

PrefersNonDefaultGPU is specified as follows in the Specification:
  If true, the application prefers to be run on a more powerful discrete
  GPU if available, which we describe as “a GPU other than the default
  one” in this spec to avoid the need to define what a discrete GPU is
  and in which cases it might be considered more powerful than the
  default GPU. This key is only a hint and support might not be present
  depending on the implementation.
  https://specifications.freedesktop.org/desktop-entry/latest/recognized-keys.html

Checking for a Discrete GPU is a more accurate implementation
despite the misleading name.
@Jan200101
Jan200101 marked this pull request as ready for review February 13, 2026 17:54
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

Successfully merging this pull request may close these issues.

1 participant