Windows Graphics performace preferences seem to be ignored for OpenGL applications

1

In windows you can configure, for each application, if it should use the low-power GPU or the high performace GPU:

enter image description here

I have tried to set it to "Power saving" mode and it seems to work with DirectX aplications. However, it seems to be ignored for applications using OpenGL. My questions are: is it possible to do something so these settings apply to OpenGL programs too? Do I need to do something is my code to handle this correctly?

I know in DirectX there is EnumAdapterByGpuPreference which takes an DXGI_GPU_PREFERENCE. That enum has the same options as in the settings UI. But I don't think there is anything analogous in WGL.


Note: I already know the existence of these flags

__declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001;
__declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1;

But I don't want to use them because my end goal is to, hopefully, find a way to run two instances of the same application, one in each GPU. I don't know if this will be possible but I have to try.

c
windows
opengl
directx
asked on Stack Overflow Feb 24, 2021 by tuket

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0