I develop a variety of 3D graphics applications in C++/OpenGL for relatively small communities of users (a few hundred to a few thousand customers). For best performance, I require that my apps register with the video driver so that switchable graphics machines properly recognize that they require the discrete graphics chip. In older Windows versions I could simply use the nvOptimusEnablement / AmdPowerXpressRequestHighPerformance export, but this does not appear to work in newer OS's. On the Nvidia side I've been able to use NvAPI to programmatically create a graphics profile so that my users don't need to do it manually. I have not been able to identify a similarly straightforward way to accomplish this with AMD drivers. Could you folks point me to the proper API/documentation/examples so that I can make the issue transparent to my AMD customers as well?
I have the same question. I can create profile with Nvidia nvapi. But I can't find methods to create profile in amd. I find a ADL_SDK_V10.2. but it do't describe the ADL2_ApplicationProfiles_Profile_Create API. You can displays the list of all exported functions in adl2's dll atiadlxx.dll.
And ADL can provide the feature you need, please refer to the PowerXpress APIs in ADL SDK @ GitHub - GPUOpen-LibrariesAndSDKs/display-library: AMD Display Library SDK -->
Let me know if this works or not, thanks.
Hello xhuang :
PowerXpress only enumerate the profile informations that the user created by AMD Radeon Settings. This Sample uses ADL2_ApplicationProfiles_HitListsX3_Get API.
PowerXpress output these profile information as followed image in my one AMD Video Card computer.
But PowerXpress output nothing about profile information in my another one AMD Video Card computer.
Hello, I assume you're using Hybrid Graphics in your current system, in which the the previous AmdPowerXpressRequestHighPerformance way has some problem. We will work out a fix to support AmdPowerXpressRequestHighPerformance immediately, then you can continue without any changes on your application. Will get you back when internal fix is ready and I can have a quick test on my box.
Thanks for your reporting.