diff --git a/projects/amdsmi/py-interface/README.md b/projects/amdsmi/py-interface/README.md
index d75e8bdfb2..1e7b1dbdab 100644
--- a/projects/amdsmi/py-interface/README.md
+++ b/projects/amdsmi/py-interface/README.md
@@ -844,7 +844,7 @@ Field | Description
`name` | Name of process
`pid` | Process ID
`mem` | Process memory usage
-`usage`|
| Subfield | Description |
| `gfx` | GFX engine usage |
| `compute` | Compute engine usage |
| `sdma` | DMA engine usage |
| `enc` | Encode engine usage |
| `dec` | Decode engine usage |
+`engine_usage`| | Subfield | Description |
| `gfx` | GFX engine usage |
| `compute` | Compute engine usage |
| `sdma` | DMA engine usage |
| `enc` | Encode engine usage |
| `dec` | Decode engine usage |
`memory_usage`| | Subfield | Description |
| `gtt_mem` | GTT memory usage |
| `cpu_mem` | CPU memory usage |
| `vram_mem` | VRAM memory usage |
Exceptions that can be thrown by `amdsmi_get_process_info` function:
diff --git a/projects/amdsmi/py-interface/amdsmi_interface.py b/projects/amdsmi/py-interface/amdsmi_interface.py
index d062ebbfc4..fbf122ab8a 100644
--- a/projects/amdsmi/py-interface/amdsmi_interface.py
+++ b/projects/amdsmi/py-interface/amdsmi_interface.py
@@ -915,7 +915,7 @@ def amdsmi_get_process_info(
"name": info.name.decode("utf-8"),
"pid": info.pid,
"mem": info.mem,
- "usage": {
+ "engine_usage": {
"gfx": list(info.engine_usage.gfx),
"compute": list(info.engine_usage.compute),
"sdma": list(info.engine_usage.sdma),
diff --git a/projects/amdsmi/py-interface/amdsmi_wrapper.py b/projects/amdsmi/py-interface/amdsmi_wrapper.py
index baf4a74a21..fff007ef14 100644
--- a/projects/amdsmi/py-interface/amdsmi_wrapper.py
+++ b/projects/amdsmi/py-interface/amdsmi_wrapper.py
@@ -487,6 +487,17 @@ amdsmi_xgmi_info_t = struct_amdsmi_xgmi_info
class struct_amdsmi_gpu_caps(Structure):
pass
+class struct_amdsmi_gpu_caps_1(Structure):
+ pass
+
+struct_amdsmi_gpu_caps_1._pack_ = 1 # source:False
+struct_amdsmi_gpu_caps_1._fields_ = [
+ ('mm_ip_count', ctypes.c_ubyte),
+ ('mm_ip_list', ctypes.c_ubyte * 8),
+ ('PADDING_0', ctypes.c_ubyte * 3),
+ ('reserved', ctypes.c_uint32 * 5),
+]
+
class struct_amdsmi_gpu_caps_0(Structure):
pass
@@ -499,17 +510,6 @@ struct_amdsmi_gpu_caps_0._fields_ = [
('reserved', ctypes.c_uint32 * 5),
]
-class struct_amdsmi_gpu_caps_1(Structure):
- pass
-
-struct_amdsmi_gpu_caps_1._pack_ = 1 # source:False
-struct_amdsmi_gpu_caps_1._fields_ = [
- ('mm_ip_count', ctypes.c_ubyte),
- ('mm_ip_list', ctypes.c_ubyte * 8),
- ('PADDING_0', ctypes.c_ubyte * 3),
- ('reserved', ctypes.c_uint32 * 5),
-]
-
struct_amdsmi_gpu_caps._pack_ = 1 # source:False
struct_amdsmi_gpu_caps._fields_ = [
('gfx', struct_amdsmi_gpu_caps_0),
@@ -650,9 +650,6 @@ struct_amdsmi_board_info._fields_ = [
]
amdsmi_board_info_t = struct_amdsmi_board_info
-class struct_amdsmi_temperature(Structure):
- pass
-
class struct_amdsmi_power_measure(Structure):
pass
@@ -1914,8 +1911,8 @@ __all__ = \
'amdsmi_get_fw_info', 'amdsmi_get_gpu_activity',
'amdsmi_get_minmax_bandwidth', 'amdsmi_get_pcie_link_caps',
'amdsmi_get_pcie_link_status', 'amdsmi_get_power_cap_info',
- 'amdsmi_get_power_measure',
- 'amdsmi_get_process_info', 'amdsmi_get_process_list',
+ 'amdsmi_get_power_measure', 'amdsmi_get_process_info',
+ 'amdsmi_get_process_list',
'amdsmi_get_ras_block_features_enabled',
'amdsmi_get_socket_handles', 'amdsmi_get_socket_info',
'amdsmi_get_target_frequency_range',
@@ -1936,8 +1933,8 @@ __all__ = \
'amdsmi_od_volt_curve_t', 'amdsmi_od_volt_freq_data',
'amdsmi_od_volt_freq_data_t', 'amdsmi_pcie_bandwidth',
'amdsmi_pcie_bandwidth_t', 'amdsmi_pcie_info_t',
- 'amdsmi_power_cap_info_t',
- 'amdsmi_power_measure_t', 'amdsmi_power_profile_preset_masks',
+ 'amdsmi_power_cap_info_t', 'amdsmi_power_measure_t',
+ 'amdsmi_power_profile_preset_masks',
'amdsmi_power_profile_preset_masks__enumvalues',
'amdsmi_power_profile_preset_masks_t',
'amdsmi_power_profile_preset_masks_t__enumvalues',
@@ -1950,7 +1947,7 @@ __all__ = \
'amdsmi_set_perf_determinism_mode', 'amdsmi_shut_down',
'amdsmi_socket_handle', 'amdsmi_status_string', 'amdsmi_status_t',
'amdsmi_stop_event_notification', 'amdsmi_sw_component_t',
- 'amdsmi_temperature_metric',
+ 'amdsmi_sw_component_t__enumvalues', 'amdsmi_temperature_metric',
'amdsmi_temperature_metric__enumvalues',
'amdsmi_temperature_metric_t',
'amdsmi_temperature_metric_t__enumvalues',
@@ -1985,12 +1982,10 @@ __all__ = \
'struct_amdsmi_fw_info_0', 'struct_amdsmi_gpu_caps',
'struct_amdsmi_gpu_caps_0', 'struct_amdsmi_gpu_caps_1',
'struct_amdsmi_pcie_info', 'struct_amdsmi_power_cap_info',
- 'struct_amdsmi_power_limit', 'struct_amdsmi_power_measure',
- 'struct_amdsmi_process_info', 'struct_amdsmi_process_info_0',
- 'struct_amdsmi_process_info_1', 'struct_amdsmi_temperature',
- 'struct_amdsmi_vbios_info',
- 'struct_amdsmi_vram_info', 'struct_amdsmi_xgmi_info',
- 'struct_c__SA_amdsmi_counter_value_t',
+ 'struct_amdsmi_power_measure', 'struct_amdsmi_process_info',
+ 'struct_amdsmi_process_info_0', 'struct_amdsmi_process_info_1',
+ 'struct_amdsmi_vbios_info', 'struct_amdsmi_vram_info',
+ 'struct_amdsmi_xgmi_info', 'struct_c__SA_amdsmi_counter_value_t',
'struct_c__SA_amdsmi_error_count_t',
'struct_c__SA_amdsmi_evt_notification_data_t',
'struct_c__SA_amdsmi_freq_volt_region_t',
diff --git a/projects/amdsmi/src/amd_smi/amd_smi_utils.cc b/projects/amdsmi/src/amd_smi/amd_smi_utils.cc
index da67596a22..21415efd21 100644
--- a/projects/amdsmi/src/amd_smi/amd_smi_utils.cc
+++ b/projects/amdsmi/src/amd_smi/amd_smi_utils.cc
@@ -129,21 +129,21 @@ amdsmi_status_t smi_amdgpu_get_board_info(amd::smi::AMDSmiGPUDevice* device, amd
FILE *fp;
fp = fopen(product_name_path.c_str(), "rb");
- if (!fp) {
+ if (fp) {
fgets(info->product_name, sizeof(info->product_name), fp);
fclose(fp);
}
fp = fopen(product_number_path.c_str(), "rb");
- if (!fp) {
+ if (fp) {
fgets(info->model_number, sizeof(info->model_number), fp);
fclose(fp);
}
fp = fopen(serial_number_path.c_str(), "rb");
- if (!fp) {
+ if (fp) {
fscanf(fp, "%lx", &info->serial_number);
fclose(fp);
}
@@ -402,9 +402,9 @@ amdsmi_status_t smi_amdgpu_get_driver_version(amd::smi::AMDSmiGPUDevice* device,
std::string path = "/sys/module/amdgpu/version";
fp = fopen(path.c_str(), "r");
- if (!fp){
+ if (fp == nullptr){
fp = fopen("/proc/version", "r");
- if (!fp) {
+ if (fp == nullptr) {
status = AMDSMI_STATUS_IO;
return status;
}