Fix amdsmi_get_power_info API
This change creates a workaround for a broken C api in amdsmi.
amdsmi_get_power_info API is broken in rocm 6.4.0 (amdsmi 25.2) and is fixed
in rocm 6.4.1 (amdsmi 25.3).
Breaking AMDSMI change:
https://github.com/ROCm/amdsmi/commit/dc4a16da6fb45d581a6e23c78d340172989418a0
Change-Id: Ib45a2702aa722c7735f3ccd1081d8f62e4d34216
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
[ROCm/rdc commit: 929041b556]
Dieser Commit ist enthalten in:
committet von
Galantsev, Dmitrii
Ursprung
68c02bda78
Commit
791fa376e9
@@ -610,8 +610,14 @@ rdc_status_t RdcMetricFetcherImpl::fetch_smi_field(uint32_t gpu_index, rdc_field
|
||||
} break;
|
||||
case RDC_FI_POWER_USAGE: {
|
||||
amdsmi_power_info_t power_info = {};
|
||||
uint32_t sensor_ind = 0;
|
||||
value->status = amdsmi_get_power_info(processor_handle, sensor_ind, &power_info);
|
||||
// Handle API breaking change in amdsmi commit dc4a16da6fb45d581a6e23c78d340172989418a0
|
||||
// Breaking change is only in rocm 6.4.0 (amdsmi 25.2)
|
||||
// It is reverted to old signature in 6.4.1 (amdsmi 25.3)
|
||||
#if (((AMDSMI_LIB_VERSION_MAJOR) == 25) && ((AMDSMI_LIB_VERSION_MINOR) == 2))
|
||||
value->status = amdsmi_get_power_info(processor_handle, 0, &power_info);
|
||||
#else
|
||||
value->status = amdsmi_get_power_info(processor_handle, &power_info);
|
||||
#endif
|
||||
value->type = INTEGER;
|
||||
if (value->status != AMDSMI_STATUS_SUCCESS) {
|
||||
RDC_LOG(RDC_ERROR, "amdsmi_get_power_info failed!");
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren