From 3f0441a74cab4cf8e5e48491f53f9624872d1f47 Mon Sep 17 00:00:00 2001 From: Vukasin Nedeljkovic Date: Tue, 11 Jul 2023 13:05:41 +0200 Subject: [PATCH 1/3] SWDEV-407428 [AMDSMI][Tool][Linux][BM] static update to HEX Signed-off-by: Vukasin Nedeljkovic Change-Id: I4db506a2467b460c9c635e4e2790dd1e8fd0a196 --- amdsmi_cli/amdsmi_commands.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/amdsmi_cli/amdsmi_commands.py b/amdsmi_cli/amdsmi_commands.py index 27f2c73345..049ae87afd 100644 --- a/amdsmi_cli/amdsmi_commands.py +++ b/amdsmi_cli/amdsmi_commands.py @@ -212,7 +212,7 @@ class AMDSMICommands(): asic_info['device_id'] = hex(asic_info['device_id']) asic_info['rev_id'] = hex(asic_info['rev_id']) if asic_info['asic_serial'] != '': - asic_info['asic_serial'] = '0x' + asic_info['asic_serial'] + asic_info['asic_serial'] = hex(int(asic_info['asic_serial'], base=16)) static_dict['asic'] = asic_info except amdsmi_exception.AmdSmiLibraryException as e: From 59b2b7bea40aedd6e83a67a12e05d436af7c2b5f Mon Sep 17 00:00:00 2001 From: Vukasin Nedeljkovic Date: Tue, 11 Jul 2023 13:20:52 +0200 Subject: [PATCH 2/3] SWDEV-407430 [AMDSMI][Tool][Linux][BM] PCIE unit update Signed-off-by: Vukasin Nedeljkovic Change-Id: I7615cd1fcf504719e1032076bb836964fc44f4e0 --- amdsmi_cli/amdsmi_commands.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/amdsmi_cli/amdsmi_commands.py b/amdsmi_cli/amdsmi_commands.py index 049ae87afd..9cb2b1226b 100644 --- a/amdsmi_cli/amdsmi_commands.py +++ b/amdsmi_cli/amdsmi_commands.py @@ -224,9 +224,10 @@ class AMDSMICommands(): try: bus_info = amdsmi_interface.amdsmi_get_pcie_link_caps(args.gpu) - + pcie_speed_GTs_value = round(bus_info['pcie_speed'] / 1000, 1) if bus_info['pcie_speed'] % 1000 != 0 else round(bus_info['pcie_speed'] / 1000) + bus_info['pcie_speed'] = pcie_speed_GTs_value if self.logger.is_human_readable_format(): - unit ='MT/s' + unit ='GT/s' bus_info['pcie_speed'] = f"{bus_info['pcie_speed']} {unit}" except amdsmi_exception.AmdSmiLibraryException as e: bus_info = e.get_error_info() @@ -915,8 +916,10 @@ class AMDSMICommands(): if args.pcie: try: pcie_link_status = amdsmi_interface.amdsmi_get_pcie_link_caps(args.gpu) + pcie_speed_GTs_value = round(pcie_link_status['pcie_speed'] / 1000, 1) if pcie_link_status['pcie_speed'] % 1000 != 0 else round(pcie_link_status['pcie_speed'] / 1000) + pcie_link_status['pcie_speed'] = pcie_speed_GTs_value if self.logger.is_human_readable_format(): - unit ='MT/s' + unit ='GT/s' pcie_link_status['pcie_speed'] = f"{pcie_link_status['pcie_speed']} {unit}" if self.logger.is_gpuvsmi_compatibility(): pcie_link_status['current_width'] = pcie_link_status.pop('pcie_lanes') From 4307330cb05f3d013943c7d2c0f715c5e46e0a28 Mon Sep 17 00:00:00 2001 From: "Bill(Shuzhou) Liu" Date: Mon, 10 Jul 2023 08:50:06 -0500 Subject: [PATCH 3/3] Fix unit test errors Add unit test error handling for set freq and volt. Change-Id: I5877f8300b942caac8f38e6efc03264bfc432def --- tests/amd_smi_test/functional/frequencies_read_write.cc | 6 ++++++ tests/amd_smi_test/functional/volt_freq_curv_read.cc | 9 ++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/tests/amd_smi_test/functional/frequencies_read_write.cc b/tests/amd_smi_test/functional/frequencies_read_write.cc index 778f6a4446..1274957b2c 100755 --- a/tests/amd_smi_test/functional/frequencies_read_write.cc +++ b/tests/amd_smi_test/functional/frequencies_read_write.cc @@ -176,6 +176,12 @@ void TestFrequenciesReadWrite::Run(void) { std::cout << "Resetting mask to all frequencies." << std::endl; } ret = amdsmi_set_clk_freq(processor_handles_[dv_ind], amdsmi_clk, 0xFFFFFFFF); + if (ret == AMDSMI_STATUS_NOT_SUPPORTED) { + std::cout << "\t**Set all frequencies: Not supported on this machine. Skipping..." + << std::endl; + ret = AMDSMI_STATUS_SUCCESS; + return; + } if (ret != AMDSMI_STATUS_SUCCESS) { return; } diff --git a/tests/amd_smi_test/functional/volt_freq_curv_read.cc b/tests/amd_smi_test/functional/volt_freq_curv_read.cc index 9796115dd7..0595702ecf 100755 --- a/tests/amd_smi_test/functional/volt_freq_curv_read.cc +++ b/tests/amd_smi_test/functional/volt_freq_curv_read.cc @@ -158,15 +158,18 @@ void TestVoltCurvRead::Run(void) { PrintDeviceHeader(processor_handles_[i]); err = amdsmi_get_gpu_od_volt_info(processor_handles_[i], &odv); - if (err == AMDSMI_STATUS_NOT_SUPPORTED) { + if (err == AMDSMI_STATUS_NOT_SUPPORTED + || err == AMDSMI_STATUS_NOT_YET_IMPLEMENTED) { IF_VERB(STANDARD) { std::cout << "\t** amdsmi_get_gpu_od_volt_info: Not supported on this machine" << std::endl; } // Verify api support checking functionality is working - err = amdsmi_get_gpu_od_volt_info(processor_handles_[i], nullptr); - ASSERT_EQ(err, AMDSMI_STATUS_NOT_SUPPORTED); + if (err == AMDSMI_STATUS_NOT_SUPPORTED) { + err = amdsmi_get_gpu_od_volt_info(processor_handles_[i], nullptr); + ASSERT_EQ(err, AMDSMI_STATUS_NOT_SUPPORTED); + } } else { CHK_ERR_ASRT(err) // Verify api support checking functionality is working