How can I force Editor to use correct GPU?

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By guba-odudkin

I have a portable workstation with 2 GPUs,
Intel and NVidia GTX. Obviously I would like to develop using the powerful one, However it keeps saying in console on editor startup:
OpenGL ES 3.0 Renderer: Intel(R) HD Graphics 520

same when testing scenes

win10 - set to high performance for gotod executable. Still nothing.
version 3.0.6.

Thanks in advance!

:bust_in_silhouette: Reply From: Svampen

The Nvidia chip is a co-processor to the intel one, not standalone. That’s why it doesn’t show up. I had the same issue with it until i read up on it and realized that the nvidia chip is merely an extension to the intel one.

I don’t think I follow, sorry. Intel 520 is built-in into CPU, while GTX 940MX is a separate physical chip on the board.
However my concern is not in the message itself, but rather that Godot editor does not use the GTX GPU at all. It uses the built-in Intel one.

guba-odudkin | 2018-08-26 09:30

:bust_in_silhouette: Reply From: Calinou

You should be able to right-click the Godot executable and choose the NVIDIA graphics card in the Run with graphics processor dropdown.

You can enforce this permanently in the NVIDIA Control Panel by creating an application profile for Godot.


Update (Godot 4.x)

Use the --gpu-index N command line argument if using Vulkan, where N is the index of your GPU (it starts from 0 and increments for every GPU found on the system). Run the engine with --verbose to see a list of detected GPUs and their IDs.

There is no way to override selection from Godot if using the OpenGL renderer – the system decides.

Thank you! Completely forgot about this option in context menu. Quite silly of me, profile didn’t work for some reason though. But “run with” did work!
Thanks again!

guba-odudkin | 2018-08-26 10:44

:bust_in_silhouette: Reply From: myQwil

For Linux users facing a similar issue, I found an excellent answer here: Run a Program on your dedicated Nvidia graphics card on Linux | Stardust | Starbeamrainbowlabs

Essentially, what you need to do is first ensure that the PRIME profile in “NVIDIA X Server Settings” is set to “NVIDIA On-Demand”

Then, you run godot with the following command:
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia godot3 -p

While this is a good answer for using the editor with a combo Intel-nVidia GPU, the original user was using Windows. Your answer is for Linux.

Ertain | 2021-06-10 00:21

I’ve updated the answer to clarify that it’s for Linux.

myQwil | 2021-06-10 00:28

:bust_in_silhouette: Reply From: jakzodiac

I had the same issue with my Surface Book on Windows 10. The interface defaults to the HD Graphics 520 GPU I have vs my NVIDIA.

You can set this option in Windows 10 and 11 on a per-app basis.

  1. Click on the Windows 10 start button
  2. Search for “Graphics Settings” and open the Graphics Settings app (its built in).
  3. For preference, choose Desktop App.
  4. Browse for your Godot application.
  5. Choose high performance from the Graphics performance dropdown.

Doing so will default to use the best GPU you have available. You’ll know you got it right because each performance level lists the GPU it will use.

Best of luck!

1 Like