[SWDEV-489696] Improve AMD SMI Python APIs Functional and Unit Testing (#408)
Signed-off-by: josnarlo <Joseph.Narlo@amd.com>
[ROCm/amdsmi commit: 13148c5d8e]
Cette révision appartient à :
@@ -2955,6 +2955,9 @@ rsmi_status_t rsmi_dev_pm_metrics_info_get(uint32_t dv_ind,
|
||||
CHK_SUPPORT_NAME_ONLY(num_of_metrics)
|
||||
std::string file_path = dev->
|
||||
get_sys_file_path_by_type(amd::smi::kDevPmMetrics);
|
||||
if (file_path.empty()) {
|
||||
return RSMI_STATUS_NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
int ret = amd::smi::present_pmmetrics(
|
||||
file_path.c_str(), pm_metrics, num_of_metrics);
|
||||
@@ -2973,6 +2976,9 @@ rsmi_status_t rsmi_dev_reg_table_info_get(uint32_t dv_ind,
|
||||
CHK_SUPPORT_NAME_ONLY(num_of_metrics)
|
||||
std::string file_path = dev->
|
||||
get_sys_file_path_by_type(amd::smi::kDevRegMetrics);
|
||||
if (file_path.empty()) {
|
||||
return RSMI_STATUS_NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
int ret = amd::smi::present_reg_state(
|
||||
file_path.c_str(), reg_type, reg_metrics, num_of_metrics);
|
||||
|
||||
@@ -738,6 +738,10 @@ std::string Device::get_sys_file_path_by_type(DevInfoTypes type) const {
|
||||
sysfs_path += "/device/";
|
||||
sysfs_path += kDevAttribNameMap.at(type);
|
||||
|
||||
if (access(sysfs_path.c_str(), F_OK) != 0) {
|
||||
sysfs_path.clear();
|
||||
}
|
||||
|
||||
return sysfs_path;
|
||||
}
|
||||
|
||||
|
||||
@@ -50,19 +50,19 @@ def handle_exceptions(func):
|
||||
try:
|
||||
return func(*args, **kwargs)
|
||||
except amdsmi.AmdSmiRetryException as e:
|
||||
print("**** [ERROR] | Test: " + str(func.__name__) + " | Caught AmdSmiRetryException: {}".format(e))
|
||||
print("**** Test: " + str(func.__name__) + " | Caught AmdSmiRetryException: {}".format(e))
|
||||
amdsmi.amdsmi_shut_down()
|
||||
pass
|
||||
except amdsmi.AmdSmiTimeoutException as e:
|
||||
print("**** [ERROR] | Test: " + str(func.__name__) + " | Caught AmdSmiTimeoutException: {}".format(e))
|
||||
print("**** Test: " + str(func.__name__) + " | Caught AmdSmiTimeoutException: {}".format(e))
|
||||
amdsmi.amdsmi_shut_down()
|
||||
pass
|
||||
except amdsmi.AmdSmiLibraryException as e:
|
||||
print("**** [ERROR] | Test: " + str(func.__name__) + " | Caught AmdSmiLibraryException: {}".format(e))
|
||||
print("**** Test: " + str(func.__name__) + " | Caught AmdSmiLibraryException: {}".format(e))
|
||||
amdsmi.amdsmi_shut_down()
|
||||
pass
|
||||
except Exception as e:
|
||||
print("**** [ERROR] | Test: " + str(func.__name__) + " | Caught unknown exception: {}".format(e))
|
||||
print("**** Test: " + str(func.__name__) + " | Caught unknown exception: {}".format(e))
|
||||
amdsmi.amdsmi_shut_down()
|
||||
pass
|
||||
return wrapper
|
||||
@@ -610,7 +610,7 @@ class TestAmdSmiPythonInterface(unittest.TestCase):
|
||||
bdf = amdsmi.amdsmi_get_gpu_device_bdf(processors[i])
|
||||
print("\n\n###Test Processor {}, bdf: {}".format(i, bdf))
|
||||
print("\n###Test amdsmi_get_power_info \n")
|
||||
power_info = amdsmi.amdsmi_get_power_info(processors[i], 0)
|
||||
power_info = amdsmi.amdsmi_get_power_info(processors[i])
|
||||
print(" power_info['current_socket_power'] is: {}".format(
|
||||
power_info['current_socket_power']))
|
||||
print(" power_info['average_socket_power'] is: {}".format(
|
||||
|
||||
Référencer dans un nouveau ticket
Bloquer un utilisateur