Wie kann ich eine ausführbare Datei ausführen und ihr mitteilen, dass sie meine diskrete NVIDIA-GPU anstelle der integrierten verwenden soll?

Wie kann ich eine ausführbare Datei ausführen und ihr mitteilen, dass sie meine diskrete NVIDIA-GPU anstelle der integrierten verwenden soll?

Ich habe einen Laptop mit einer separaten und einer integrierten Grafikkarte. Ich möchte eine ausführbare Spieldatei mit der separaten GPU ausführen, aber sie läuft stattdessen auf der integrierten Grafikkarte. Wie kann ich sie mit der separaten GPU ausführen?

Das Spiel ist nicht installiert. Es ist ein Ordner, in dem ich die ausführbare Datei ausführe.

  • Betriebssystem: Pop! Betriebssystem (Gnome)
  • CPU: AMD Ryzen 5 4000series
  • Grafikkarte: NVIDIA GTX 1650
  • Spiel: Städte: Skyline
  • Arbeitsspeicher: 16 GB
  • Datei-Explorer - Nautilus

Separate Grafikoption

Ich bekomme diese Option für installierte Apps, aber wie bekomme ich sie für ausführbare Dateien?

Versuchte, die Desktop-Anwendung zu machen

Datei: Speicherort - /usr/share/applications/Cities.desktop - und ein Doppelklick darauf öffnet den Datei-Explorer

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
Exec="/home/{username}/Games/linux games/Cities - Skylines Collection/Cities.x64"
Name=Cities:Skyline
Icon="/home/{username}/Games/linux games/Cities - Skylines Collection/LauncherAssets/game-logo.png"

__GLX_VENDOR_LIBRARY_NAME=nvidia
__NV_PRIME_RENDER_OFFLOAD=1
__VK_LAYER_NV_optimus=NVIDIA_only

Antwort1

Bei AMD- oder Intel-GPUs sollte das Festlegen der Umgebungsvariable DRI_PRIME=1ausreichen.

Für nVidia-GPUs benötigen Sie zusätzlich __GLX_VENDOR_LIBRARY_NAME=nvidia, __NV_PRIME_RENDER_OFFLOAD=1, und __VK_LAYER_NV_optimus=NVIDIA_only.

(Die Menüoption "Start mit separater Grafikkarte" verwendet intern dieSwitcheroo-SteuerungService und ich habe diese aus seinem Quellcode; ich bin nicht 100 % sicher, ob sie heute alle noch benötigt werden.)

ICHdenkenEs gibt ein prime-runTool für nVidia, aber ich weiß nicht, ob es über das oben genannte hinaus noch mehr kann.

Um diese in Ihre .desktopDatei aufzunehmen, benötigen Sie etwas wie (beachten Sie die beiden Anführungszeichen, doppelt außen und einfach um den Pfad herum):

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
Exec=sh -c "__GLX_VENDOR_LIBRARY_NAME=nvidia __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only '/home/{username}/Games/linux games/Cities - Skylines Collection/Cities.x64'"
Name=Cities:Skyline
Icon="/home/{username}/Games/linux games/Cities - Skylines Collection/LauncherAssets/game-logo.png"

verwandte Informationen