cancel
Showing results for 
Search instead for 
Did you mean: 

GPU Developer Tools

thewhaler
Adept I

Working with AntiLag feature via ADL

Good day everyone!

I am working on command line utility that allows to get and set AntiLag feature using ADL. I wrote a code that gets and sets it, after set I see updated state of GlobalEnable for AntiLag, and my tool gets proper state of the feature if I change it via AMD Adrenalin. But the other way around, when I change state with my tool, I don't see it update in the Adrenalin. Here is what I mean:

thewhaler_0-1679499608030.png

Do I need to call something else to update the state of the feature in the AMD, or am I doing something wrong?

I tried looking up an example in ADL Samples, and I found references of AntiLag examples in the IDL, but they reference to Sample\AMDGamemanagerTool and Sample\Power which I have not found in any of the ADL versions, and there is nothing similar. Grep also does not find any related API calls in the samples. So I unfortunately have no reference of how to properly use it, and that is why I ask here.

Here is the code:

 

int SetAntiLagState(bool enable)
{
  int ret = ADL_OK;

  int i;

  // Repeat for all available adapters in the system
  for (i = 0; i < iNumberAdapters; i++)
  {
    if (lpAdapterInfo[i].iBusNumber > -1)
    {
      ADL_DELAG_SETTINGS settings;
      ADL_DELAG_NOTFICATION_REASON changeReason;
      ADL_ERROR_REASON errorReason;

      // To get current settings
      int iRet = ADL2_DELAG_Settings_Get(context, lpAdapterInfo[i].iAdapterIndex, &settings);
      
      if (iRet != ADL_OK)
      {
        std::cout << "    AntiLag get error: " << iRet << std::endl;
        ret = iRet;
      }

      settings.GlobalEnable = enable;
      changeReason.GlobalEnableChanged = 1;

      iRet = ADL2_DELAG_Settings_Set(context, lpAdapterInfo[i].iAdapterIndex, settings, changeReason, &errorReason);
      if (iRet != ADL_OK)
      {
        std::cout << "    AntiLag set error reason: Boost: " << (errorReason.boost) << " Chill: " << (errorReason.chill) << " Delag: " << (errorReason.delag) << " proVsr: " << (errorReason.proVsr) << std::endl;
        ret = iRet;
      }
    }
  }

  return ret;
}

 

Thank you for the help in advance!

0 Likes
1 Solution
dipak
Big Boss

It looks like ADL doesn't have the capability of syncing with the Radeon Software settings. As the ADL team has suggested, please use the ADLX SDK which can sync with the Radeon Software settings.

AMD Device Library eXtra (ADLX) SDK - AMD GPUOpen

Thanks.

View solution in original post

4 Replies
dipak
Big Boss

Hi @thewhaler ,

Thanks for your query. I have forwarded it to the ADL team. I will let you know once I get their feedback on this.

Thanks.

dipak
Big Boss

It looks like ADL doesn't have the capability of syncing with the Radeon Software settings. As the ADL team has suggested, please use the ADLX SDK which can sync with the Radeon Software settings.

AMD Device Library eXtra (ADLX) SDK - AMD GPUOpen

Thanks.

thewhaler
Adept I

Understood, will try using it! But the Anti-Lag setting I set properly, right? It is just that it is displayed not correctly in the Radeon Software?

0 Likes

Yes. As the ADL team has suggested, you can check the Anti-Lag state in the Radeon Software settings after restarting the PC.

Thanks.