You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to obtain the throttling state of several AMD GPUs (6900 XT, 7900 XT and 7900 XTX). My understanding is that I request ADL_PMLOG_THROTTLER_STATUS in ADLPMLogStartInput::usSensors like for the power readings. Furthermore, I assume that for ADL_PMLOG_THROTTLER_STATUS, I would cast the respective ADLPMLogData::ulValues to ADL_THROTTLE_NOTIFICATION and if the card is throttled, the respective bit would be set.
Is that the correct way to do this?
If so, does ADL_PMLOG_THROTTLER_STATUS report the current status or does the "notification" imply that it only reports changes. In any case, I have the problem that my card (actually all of them, and I have a few) is never throttled even if reducing the current limit and running stuff like Cyberpunk for a prolonged time. Given that other tools like hwinfo show 100% for the current limit in this case, I believe the card is actually throttled and should report his.
Speaking of hwinfo, I was unable to find out which APIs would enable me to retrieve the individual limits. Specifically, none of ADL_PMLOG_THROTTLER_TEMP_EDGE_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_GCD_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_MCD_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_MEM_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_GFX_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_MEM0_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_MEM1_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_SOC_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_LIQUID0_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_LIQUID1_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_PLX_PERCENTAGE, ADL_PMLOG_THROTTLER_TDC_GFX_PERCENTAGE, ADL_PMLOG_THROTTLER_TDC_SOC_PERCENTAGE, ADL_PMLOG_THROTTLER_TDC_USR_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT0_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT1_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT2_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT3_PERCENTAGE, ADL_PMLOG_THROTTLER_FIT_PERCENTAGE, ADL_PMLOG_THROTTLER_GFX_APCC_PLUS_PERCENTAGE seem to be supported on any of my card. The workaround of retrieving the configured limits via ADL2_OverdriveN_CapabilitiesX2_Get and computing the state from the actual power and temperature readings failed, because the function returns ADL_OK, but does not write anything (the debug version still shows uninitialised memory once the function returned successfully.
Long story short: how can I find out whether one of the reasonably new cards are throttled at a given point in time?
The text was updated successfully, but these errors were encountered:
I am trying to obtain the throttling state of several AMD GPUs (6900 XT, 7900 XT and 7900 XTX). My understanding is that I request
ADL_PMLOG_THROTTLER_STATUS
inADLPMLogStartInput::usSensors
like for the power readings. Furthermore, I assume that forADL_PMLOG_THROTTLER_STATUS
, I would cast the respectiveADLPMLogData::ulValues
toADL_THROTTLE_NOTIFICATION
and if the card is throttled, the respective bit would be set.Is that the correct way to do this?
If so, does
ADL_PMLOG_THROTTLER_STATUS
report the current status or does the "notification" imply that it only reports changes. In any case, I have the problem that my card (actually all of them, and I have a few) is never throttled even if reducing the current limit and running stuff like Cyberpunk for a prolonged time. Given that other tools like hwinfo show 100% for the current limit in this case, I believe the card is actually throttled and should report his.Speaking of hwinfo, I was unable to find out which APIs would enable me to retrieve the individual limits. Specifically, none of
ADL_PMLOG_THROTTLER_TEMP_EDGE_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_GCD_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_MCD_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_MEM_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_VR_GFX_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_VR_MEM0_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_VR_MEM1_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_VR_SOC_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_LIQUID0_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_LIQUID1_PERCENTAGE
,ADL_PMLOG_THROTTLER_TEMP_PLX_PERCENTAGE
,ADL_PMLOG_THROTTLER_TDC_GFX_PERCENTAGE
,ADL_PMLOG_THROTTLER_TDC_SOC_PERCENTAGE
,ADL_PMLOG_THROTTLER_TDC_USR_PERCENTAGE
,ADL_PMLOG_THROTTLER_PPT0_PERCENTAGE
,ADL_PMLOG_THROTTLER_PPT1_PERCENTAGE
,ADL_PMLOG_THROTTLER_PPT2_PERCENTAGE
,ADL_PMLOG_THROTTLER_PPT3_PERCENTAGE
,ADL_PMLOG_THROTTLER_FIT_PERCENTAGE
,ADL_PMLOG_THROTTLER_GFX_APCC_PLUS_PERCENTAGE
seem to be supported on any of my card. The workaround of retrieving the configured limits viaADL2_OverdriveN_CapabilitiesX2_Get
and computing the state from the actual power and temperature readings failed, because the function returnsADL_OK
, but does not write anything (the debug version still shows uninitialised memory once the function returned successfully.Long story short: how can I find out whether one of the reasonably new cards are throttled at a given point in time?
The text was updated successfully, but these errors were encountered: