gpuamd-gpu

AMD equivalent to NvOptimusEnablement


For Intel+NVIDIA dual-GPU "Optimus" setups, an application can export NvOptimusEnablement as explained in OptimusRenderingPolicies.pdf. This option allows an application to ensure the use of the high-speed discrete GPU without needing profile updates or user interaction, which is usually desired for certain classes of applictions.

Is there an equivalent trick for systems with AMD GPUs (Windows-only is fine), and if so, what is it? I have not been able to find any concrete information via Googling; only a lot of people asking the same question on various forums with no answers, or SO articles on the NVIDIA trick with a "maybe AMD has something similar, I don't know" comment.


Solution

  • According to https://community.amd.com/thread/169965

    extern "C"
    {
      __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1;
    }
    

    This will select the high performance GPU as long as no profile exists that assigns the application to another GPU.

    Please make sure to use a 13.35 or newer driver. Older drivers do not support this.