SWDEV-396262 - Fixed units for AMDSMI CLI process
Change-Id: Ib85cfb9fe313cfc2eb5cd1d1437426786a99abd9
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
[ROCm/amdsmi commit: 2f18ec7539]
This commit is contained in:
@@ -1206,24 +1206,15 @@ class AMDSMICommands():
|
||||
process_info['mem_usage'] = process_info.pop('mem')
|
||||
process_info['usage'] = process_info.pop('engine_usage')
|
||||
|
||||
# Convert mem_usage to megabytes
|
||||
|
||||
mem_usage_mb = (process_info['mem_usage']//1024) // 1024
|
||||
if mem_usage_mb < 0:
|
||||
process_info['mem_usage'] = process_info['mem_usage']//1024
|
||||
mem_usage_unit = 'B'
|
||||
else:
|
||||
process_info['mem_usage'] = mem_usage_mb
|
||||
|
||||
if self.logger.is_human_readable_format():
|
||||
mem_usage_unit = 'MB'
|
||||
engine_usage_unit = '%'
|
||||
process_info['mem_usage'] = f"{process_info['mem_usage']} {mem_usage_unit}"
|
||||
process_info['mem_usage'] = self.helpers.convert_bytes_to_readable(process_info['mem_usage'])
|
||||
|
||||
engine_usage_unit = "ns"
|
||||
for usage_metric in process_info['usage']:
|
||||
process_info['usage'][usage_metric] = f"{process_info['usage'][usage_metric]} {engine_usage_unit}"
|
||||
|
||||
for usage_metric in process_info['memory_usage']:
|
||||
process_info['memory_usage'][usage_metric] = f"{process_info['memory_usage'][usage_metric]} {engine_usage_unit}"
|
||||
process_info['memory_usage'][usage_metric] = self.helpers.convert_bytes_to_readable(process_info['memory_usage'][usage_metric])
|
||||
|
||||
filtered_process_values.append({'process_info': process_info})
|
||||
|
||||
|
||||
@@ -387,6 +387,18 @@ class AMDSMIHelpers():
|
||||
return False, profile_presets.values()
|
||||
|
||||
|
||||
def has_ras_support(self, device_handle):
|
||||
try:
|
||||
caps_info = amdsmi_interface.amdsmi_get_caps_info(device_handle)
|
||||
|
||||
if caps_info['ras_supported']:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
except amdsmi_exception.AmdSmiLibraryException:
|
||||
return False
|
||||
|
||||
|
||||
def convert_bytes_to_readable(self, bytes_input):
|
||||
for unit in ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB"]:
|
||||
if abs(bytes_input) < 1024:
|
||||
|
||||
Reference in New Issue
Block a user