I tried to modify some parameters on my R9 290X.
The card is on the Bus ID 1 and the highest pState is 7.
[05.04.2021 19:00:52][main.cpp:0344] nvapi = LoadLibraryA(nvapiDllName) 140719960293376 (0x00007FFBEB3F0000)
[05.04.2021 19:00:52][main.cpp:0350] NvAPI_QueryInterface = (void* (__cdecl*)(unsigned int)) GetProcAddress(nvapi, "nvapi_QueryInterface") 140719961640336 (0x00007FFBEB538D90)
[05.04.2021 19:00:52][main.cpp:0389] result = NvAPI_Initialize() 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0428] result = NvAPI_EnumPhysicalGPUs(handles, &count) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0437] busIdResult = NvAPI_GPU_GetBusId(handles[i], &busId) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0457] result = NvAPI_EnumTCCPhysicalGPUs(handles, &count) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0849] adl = LoadLibraryA("atiadlxx.dll") 140719011266560 (0x00007FFBB2AE0000)
[05.04.2021 19:00:52][main.cpp:0888] result = ADL2_Main_Control_Create(ADL2_Main_Memory_Alloc, 1, &AdlContext) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0919] result = ADL2_Adapter_NumberOfAdapters_Get(AdlContext, &count) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0925] result = ADL2_Adapter_AdapterInfo_Get(AdlContext, adaptersInfo, sizeof(AdapterInfo) * count) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:00:52][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:00:52][main.cpp:1068] result = ADL2_OverdriveN_MemoryClocksX2_Get(AdlContext, AdlGpuIndexes[gpuBusId], &performanceLevels) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:1083] result = ADL2_OverdriveN_MemoryClocksX2_Set(AdlContext, AdlGpuIndexes[gpuBusId], &performanceLevels) 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0401] result = NvAPI_Unload() 0 (0x0000000000000000)
[05.04.2021 19:00:52][main.cpp:0902] result = ADL2_Main_Control_Destroy(AdlContext) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0344] nvapi = LoadLibraryA(nvapiDllName) 140719960293376 (0x00007FFBEB3F0000)
[05.04.2021 19:07:00][main.cpp:0350] NvAPI_QueryInterface = (void* (__cdecl*)(unsigned int)) GetProcAddress(nvapi, "nvapi_QueryInterface") 140719961640336 (0x00007FFBEB538D90)
[05.04.2021 19:07:00][main.cpp:0389] result = NvAPI_Initialize() 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0428] result = NvAPI_EnumPhysicalGPUs(handles, &count) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0437] busIdResult = NvAPI_GPU_GetBusId(handles[i], &busId) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0457] result = NvAPI_EnumTCCPhysicalGPUs(handles, &count) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0849] adl = LoadLibraryA("atiadlxx.dll") 140719011266560 (0x00007FFBB2AE0000)
[05.04.2021 19:07:00][main.cpp:0888] result = ADL2_Main_Control_Create(ADL2_Main_Memory_Alloc, 1, &AdlContext) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0919] result = ADL2_Adapter_NumberOfAdapters_Get(AdlContext, &count) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0925] result = ADL2_Adapter_AdapterInfo_Get(AdlContext, adaptersInfo, sizeof(AdapterInfo) * count) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:07:00][main.cpp:0934] idResult = ADL2_Adapter_ID_Get(AdlContext, adaptersInfo[i].adapterIndex, &id) -5 (0xFFFFFFFFFFFFFFFB)
[05.04.2021 19:07:00][main.cpp:1173] result = ADL2_OverdriveN_PowerLimit_Get(AdlContext, AdlGpuIndexes[gpuBusId], &powerLimitSettings) 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:1180] result = ADL2_OverdriveN_PowerLimit_Set(AdlContext, AdlGpuIndexes[gpuBusId], &powerLimitSettings) -1 (0xFFFFFFFFFFFFFFFF)
[05.04.2021 19:07:00][main.cpp:0401] result = NvAPI_Unload() 0 (0x0000000000000000)
[05.04.2021 19:07:00][main.cpp:0902] result = ADL2_Main_Control_Destroy(AdlContext) 0 (0x0000000000000000)
I also tried to modify these parameters with OverdriveNTool, but nothing happens.
Modifying it with Afterburner works.
I'm on Windows 10 and I run NvApiOc as an Administrator.