From 9abb288acedbafae00a5e44d3b7f41c0ee5e832e Mon Sep 17 00:00:00 2001 From: Divya Shikre Date: Wed, 9 Jun 2021 12:57:05 -0400 Subject: [PATCH] Add fix to ignore error returned when perf determinism is not supported. Signed-off-by: Divya Shikre Change-Id: I89b6a0a3dbba6fbd4b12ff2e20670eff9f32ed7f [ROCm/rocm_smi_lib commit: 6edea7a92e4b796ed85958d8d25f40965aa39ac9] --- .../functional/perf_determinism.cc | 27 +++++-------------- .../functional/perf_level_read_write.cc | 15 +++++++---- 2 files changed, 16 insertions(+), 26 deletions(-) diff --git a/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_determinism.cc b/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_determinism.cc index 48ca727ed1..b52fcb2690 100644 --- a/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_determinism.cc +++ b/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_determinism.cc @@ -57,21 +57,6 @@ #include "rocm_smi_test/functional/perf_determinism.h" #include "rocm_smi_test/test_common.h" -static const std::map - kDevPerfLvlNameMap = { - {RSMI_DEV_PERF_LEVEL_AUTO, "RSMI_DEV_PERF_LEVEL_AUTO"}, - {RSMI_DEV_PERF_LEVEL_LOW, "RSMI_DEV_PERF_LEVEL_LOW"}, - {RSMI_DEV_PERF_LEVEL_HIGH, "RSMI_DEV_PERF_LEVEL_HIGH"}, - {RSMI_DEV_PERF_LEVEL_MANUAL, "RSMI_DEV_PERF_LEVEL_MANUAL"}, - {RSMI_DEV_PERF_LEVEL_STABLE_STD, "RSMI_DEV_PERF_LEVEL_STABLE_STD"}, - {RSMI_DEV_PERF_LEVEL_STABLE_MIN_MCLK, - "RSMI_DEV_PERF_LEVEL_STABLE_MIN_MCLK"}, - {RSMI_DEV_PERF_LEVEL_STABLE_MIN_SCLK, - "RSMI_DEV_PERF_LEVEL_STABLE_MIN_SCLK"}, - {RSMI_DEV_PERF_LEVEL_STABLE_PEAK, "RSMI_DEV_PERF_LEVEL_STABLE_PEAK"}, - - {RSMI_DEV_PERF_LEVEL_UNKNOWN, "RSMI_DEV_PERF_LEVEL_UNKNOWN"}, -}; TestPerfDeterminism::TestPerfDeterminism() : TestBase() { set_title("RSMI Performance Determinism Test"); @@ -126,31 +111,31 @@ void TestPerfDeterminism::Run(void) { return; } else{ - clkvalue = odv.curr_sclk_range.lower_bound + 50; + clkvalue = (odv.curr_sclk_range.lower_bound/1000000) + 50; } err = rsmi_perf_determinism_mode_set(i, clkvalue); if (err == RSMI_STATUS_NOT_SUPPORTED) { IF_VERB(STANDARD) { - std::cout << "\t** Not supported on this machine" << std::endl; + std::cout << "\t**Not supported on this machine" << std::endl; } return; } else { ret = rsmi_dev_perf_level_get(i, &pfl); CHK_ERR_ASRT(ret) IF_VERB(STANDARD) { - std::cout << "\t**New Perf Level:" << kDevPerfLvlNameMap.at(pfl) << + std::cout << "\t**New Perf Level:" << GetPerfLevelStr(pfl) << std::endl; - std::cout << "\tSCLK is now set to " << clkvalue << std::endl; + std::cout << "\t**SCLK is now set to " << clkvalue << std::endl; } - std::cout << "\tResetting performance determinism" << std::endl; + std::cout << "\t**Resetting performance determinism" << std::endl; err = rsmi_dev_perf_level_set(i, RSMI_DEV_PERF_LEVEL_AUTO);; CHK_ERR_ASRT(err) ret = rsmi_dev_perf_level_get(i, &pfl); CHK_ERR_ASRT(ret) IF_VERB(STANDARD) { - std::cout << "\t**New Perf Level:" << kDevPerfLvlNameMap.at(pfl) << + std::cout << "\t**New Perf Level:" << GetPerfLevelStr(pfl) << std::endl; } return; diff --git a/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_level_read_write.cc b/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_level_read_write.cc index 7d91c0715d..e3e580618b 100755 --- a/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_level_read_write.cc +++ b/projects/rocm-smi-lib/tests/rocm_smi_test/functional/perf_level_read_write.cc @@ -122,12 +122,17 @@ void TestPerfLevelReadWrite::Run(void) { } ret = rsmi_dev_perf_level_set(dv_ind, static_cast(pfl_i)); - CHK_ERR_ASRT(ret) - ret = rsmi_dev_perf_level_get(dv_ind, &pfl); - CHK_ERR_ASRT(ret) - IF_VERB(STANDARD) { - std::cout << "\t**New Perf Level:" << GetPerfLevelStr(pfl) << + if (ret == RSMI_STATUS_NOT_SUPPORTED) { + std::cout << "\t**" << GetPerfLevelStr(static_cast(pfl_i)) + << " returned RSMI_STATUS_NOT_SUPPORTED" << std::endl; + } else { + CHK_ERR_ASRT(ret) + ret = rsmi_dev_perf_level_get(dv_ind, &pfl); + CHK_ERR_ASRT(ret) + IF_VERB(STANDARD) { + std::cout << "\t**New Perf Level:" << GetPerfLevelStr(pfl) << std::endl; + } } } IF_VERB(STANDARD) {