Merge amd-staging into amd-master 20230118
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I4ce0f22e2d1fc3f347ab160d04a16a9c84afe0ab
[ROCm/amdsmi commit: 272a274313]
This commit is contained in:
@@ -844,7 +844,7 @@ Field | Description
|
||||
`name` | Name of process
|
||||
`pid` | Process ID
|
||||
`mem` | Process memory usage
|
||||
`usage`| <table><thead><tr> <th> Subfield </th> <th> Description</th> </tr></thead><tbody><tr><td>`gfx`</td><td>GFX engine usage</td></tr><tr><td>`compute`</td><td>Compute engine usage</td></tr><tr><td>`sdma`</td><td>DMA engine usage</td></tr><tr><td>`enc`</td><td>Encode engine usage</td></tr><tr><td>`dec`</td><td>Decode engine usage</td></tr></tbody></table>
|
||||
`engine_usage`| <table><thead><tr> <th> Subfield </th> <th> Description</th> </tr></thead><tbody><tr><td>`gfx`</td><td>GFX engine usage</td></tr><tr><td>`compute`</td><td>Compute engine usage</td></tr><tr><td>`sdma`</td><td>DMA engine usage</td></tr><tr><td>`enc`</td><td>Encode engine usage</td></tr><tr><td>`dec`</td><td>Decode engine usage</td></tr></tbody></table>
|
||||
`memory_usage`| <table><thead><tr> <th> Subfield </th> <th> Description</th> </tr></thead><tbody><tr><td>`gtt_mem`</td><td>GTT memory usage</td></tr><tr><td>`cpu_mem`</td><td>CPU memory usage</td></tr><tr><td>`vram_mem`</td><td>VRAM memory usage</td></tr> </tbody></table>
|
||||
|
||||
Exceptions that can be thrown by `amdsmi_get_process_info` function:
|
||||
|
||||
@@ -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),
|
||||
|
||||
@@ -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',
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user