diff --git a/include/amd_smi/amdsmi.h b/include/amd_smi/amdsmi.h index 307871e89a..905c1deb5a 100644 --- a/include/amd_smi/amdsmi.h +++ b/include/amd_smi/amdsmi.h @@ -3093,7 +3093,7 @@ amdsmi_get_gpu_compute_process_gpus(uint32_t pid, uint32_t *dv_indices, * @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail */ amdsmi_status_t -amdsmi_dev_xgmi_error_status(amdsmi_processor_handle processor_handle, amdsmi_xgmi_status_t *status); +amdsmi_gpu_xgmi_error_status(amdsmi_processor_handle processor_handle, amdsmi_xgmi_status_t *status); /** * @brief Reset the XGMI error status for a device diff --git a/py-interface/README.md b/py-interface/README.md index 217823592a..800cafebd7 100644 --- a/py-interface/README.md +++ b/py-interface/README.md @@ -2822,7 +2822,7 @@ except AmdSmiException as e: print(e) ``` -## amdsmi_dev_xgmi_error_status +## amdsmi_gpu_xgmi_error_status Description: Retrieve the XGMI error status for a device Input parameters: @@ -2830,7 +2830,7 @@ Input parameters: Output: XGMI error status for a requested device -Exceptions that can be thrown by `amdsmi_dev_xgmi_error_status` function: +Exceptions that can be thrown by `amdsmi_gpu_xgmi_error_status` function: * `AmdSmiLibraryException` * `AmdSmiRetryException` * `AmdSmiParameterException` @@ -2843,7 +2843,7 @@ try: print("No GPUs on machine") else: for device in devices: - status = amdsmi_dev_xgmi_error_status(device) + status = amdsmi_gpu_xgmi_error_status(device) print(status) except AmdSmiException as e: print(e) diff --git a/py-interface/__init__.py b/py-interface/__init__.py index 1151cb4684..6bd79150b0 100644 --- a/py-interface/__init__.py +++ b/py-interface/__init__.py @@ -133,7 +133,7 @@ from .amdsmi_interface import amdsmi_status_string from .amdsmi_interface import amdsmi_get_gpu_compute_process_info from .amdsmi_interface import amdsmi_get_gpu_compute_process_info_by_pid from .amdsmi_interface import amdsmi_get_gpu_compute_process_gpus -from .amdsmi_interface import amdsmi_dev_xgmi_error_status +from .amdsmi_interface import amdsmi_gpu_xgmi_error_status from .amdsmi_interface import amdsmi_dev_reset_xgmi_error # # PCIE information diff --git a/py-interface/amdsmi_interface.py b/py-interface/amdsmi_interface.py index 314439ebc0..bec164965a 100644 --- a/py-interface/amdsmi_interface.py +++ b/py-interface/amdsmi_interface.py @@ -2603,7 +2603,7 @@ def amdsmi_get_gpu_compute_process_gpus(pid: int) -> List[int]: return [dv_index.value for dv_index in dv_indices] -def amdsmi_dev_xgmi_error_status( +def amdsmi_gpu_xgmi_error_status( processor_handle: amdsmi_wrapper.amdsmi_processor_handle, ) -> AmdSmiXgmiStatus: if not isinstance(processor_handle, amdsmi_wrapper.amdsmi_processor_handle): @@ -2613,7 +2613,7 @@ def amdsmi_dev_xgmi_error_status( status = amdsmi_wrapper.amdsmi_xgmi_status_t() _check_res( - amdsmi_wrapper.amdsmi_dev_xgmi_error_status( + amdsmi_wrapper.amdsmi_gpu_xgmi_error_status( processor_handle, ctypes.byref(status)) ) diff --git a/py-interface/amdsmi_wrapper.py b/py-interface/amdsmi_wrapper.py index 9e578fc414..0adf0eba36 100644 --- a/py-interface/amdsmi_wrapper.py +++ b/py-interface/amdsmi_wrapper.py @@ -1616,9 +1616,9 @@ amdsmi_get_gpu_compute_process_info_by_pid.argtypes = [uint32_t, ctypes.POINTER( amdsmi_get_gpu_compute_process_gpus = _libraries['libamd_smi.so'].amdsmi_get_gpu_compute_process_gpus amdsmi_get_gpu_compute_process_gpus.restype = amdsmi_status_t amdsmi_get_gpu_compute_process_gpus.argtypes = [uint32_t, ctypes.POINTER(ctypes.c_uint32), ctypes.POINTER(ctypes.c_uint32)] -amdsmi_dev_xgmi_error_status = _libraries['libamd_smi.so'].amdsmi_dev_xgmi_error_status -amdsmi_dev_xgmi_error_status.restype = amdsmi_status_t -amdsmi_dev_xgmi_error_status.argtypes = [amdsmi_processor_handle, ctypes.POINTER(c__EA_amdsmi_xgmi_status_t)] +amdsmi_gpu_xgmi_error_status = _libraries['libamd_smi.so'].amdsmi_gpu_xgmi_error_status +amdsmi_gpu_xgmi_error_status.restype = amdsmi_status_t +amdsmi_gpu_xgmi_error_status.argtypes = [amdsmi_processor_handle, ctypes.POINTER(c__EA_amdsmi_xgmi_status_t)] amdsmi_dev_reset_xgmi_error = _libraries['libamd_smi.so'].amdsmi_dev_reset_xgmi_error amdsmi_dev_reset_xgmi_error.restype = amdsmi_status_t amdsmi_dev_reset_xgmi_error.argtypes = [amdsmi_processor_handle] @@ -1881,7 +1881,7 @@ __all__ = \ 'amdsmi_dev_set_overdrive_level_v1', 'amdsmi_set_gpu_pci_bandwidth', 'amdsmi_set_gpu_perf_level', 'amdsmi_set_gpu_perf_level_v1', 'amdsmi_set_power_cap', - 'amdsmi_set_gpu_power_profile', 'amdsmi_dev_xgmi_error_status', + 'amdsmi_set_gpu_power_profile', 'amdsmi_gpu_xgmi_error_status', 'amdsmi_processor_handle', 'amdsmi_engine_usage_t', 'amdsmi_error_count_t', 'amdsmi_event_group_t', 'amdsmi_event_group_t__enumvalues', 'amdsmi_event_handle_t', diff --git a/py-interface/rocm_smi_tool.py b/py-interface/rocm_smi_tool.py index 5a644ef271..3a385b23b6 100644 --- a/py-interface/rocm_smi_tool.py +++ b/py-interface/rocm_smi_tool.py @@ -328,7 +328,7 @@ class Formatter: | """ + self.style.text("39 Get compute process info. Api: amdsmi_get_gpu_compute_process_info ") + """ | | """ + self.style.text("40 Get compute process info by pid. Api: amdsmi_get_gpu_compute_process_info_by_pid ") + """ | | """ + self.style.text("41 Get compute process gpus. Api: amdsmi_get_gpu_compute_process_gpus ") + """ | - | """ + self.style.text("42 Get device xgmi_error_status. Api: amdsmi_dev_xgmi_error_status ") + """ | + | """ + self.style.text("42 Get device xgmi_error_status. Api: amdsmi_gpu_xgmi_error_status ") + """ | | """ + self.style.text("43 Get device xgmi error reset. Api: amdsmi_dev_reset_xgmi_error ") + """ | | """ + self.style.text("44 Get topo get numa node number. Api: amdsmi_topo_get_numa_node_number ") + """ | | """ + self.style.text("45 Get topo get link weight. Api: amdsmi_topo_get_link_weight ") + """ | @@ -846,7 +846,7 @@ commands = { 41: [amdsmi_tool_compute_process_gpus_get, { "pid": [int, True] }], - 42: [smi_api.amdsmi_dev_xgmi_error_status, { + 42: [smi_api.amdsmi_gpu_xgmi_error_status, { "device_identifier1": [None, True] }], 43: [smi_api.amdsmi_dev_reset_xgmi_error, { diff --git a/src/amd_smi/amd_smi.cc b/src/amd_smi/amd_smi.cc index e9bdad0057..3103fc0a0a 100644 --- a/src/amd_smi/amd_smi.cc +++ b/src/amd_smi/amd_smi.cc @@ -824,7 +824,7 @@ amdsmi_get_xgmi_info(amdsmi_processor_handle processor_handle, amdsmi_xgmi_info_ } amdsmi_status_t -amdsmi_dev_xgmi_error_status(amdsmi_processor_handle processor_handle, amdsmi_xgmi_status_t *status) { +amdsmi_gpu_xgmi_error_status(amdsmi_processor_handle processor_handle, amdsmi_xgmi_status_t *status) { return rsmi_wrapper(rsmi_dev_xgmi_error_status, processor_handle, reinterpret_cast(status)); } @@ -925,7 +925,7 @@ amdsmi_get_func_iter_value(amdsmi_func_id_iter_handle_t handle, {"rsmi_dev_ecc_status_get", " amdsmi_dev_get_gpu_ecc_status"}, {"rsmi_dev_counter_group_supported", "amdsmi_gpu_counter_group_supported"}, {"rsmi_dev_counter_create", "amdsmi_gpu_create_counter"}, - {"rsmi_dev_xgmi_error_status", "amdsmi_dev_xgmi_error_status"}, + {"rsmi_dev_xgmi_error_status", "amdsmi_gpu_xgmi_error_status"}, {"rsmi_dev_xgmi_error_reset", "amdsmi_dev_reset_xgmi_error"}, {"rsmi_dev_memory_reserved_pages_get", "amdsmi_get_gpu_memory_reserved_pages"}, {"rsmi_topo_numa_affinity_get", "amdsmi_get_gpu_topo_numa_affinity"}, diff --git a/tests/amd_smi_test/functional/mutual_exclusion.cc b/tests/amd_smi_test/functional/mutual_exclusion.cc index 71eebf63d6..770234b053 100755 --- a/tests/amd_smi_test/functional/mutual_exclusion.cc +++ b/tests/amd_smi_test/functional/mutual_exclusion.cc @@ -301,7 +301,7 @@ void TestMutualExclusion::Run(void) { amdsmi_get_gpu_available_counters amdsmi_gpu_counter_group_supported amdsmi_get_gpu_memory_reserved_pages - amdsmi_dev_xgmi_error_status + amdsmi_gpu_xgmi_error_status amdsmi_dev_reset_xgmi_error amdsmi_dev_xgmi_hive_id_get amdsmi_topo_get_link_weight diff --git a/tests/amd_smi_test/functional/xgmi_read_write.cc b/tests/amd_smi_test/functional/xgmi_read_write.cc index 6312b5e7c2..926e88ac54 100755 --- a/tests/amd_smi_test/functional/xgmi_read_write.cc +++ b/tests/amd_smi_test/functional/xgmi_read_write.cc @@ -116,7 +116,7 @@ void TestXGMIReadWrite::Run(void) { } } - err = amdsmi_dev_xgmi_error_status(device, &err_stat); + err = amdsmi_gpu_xgmi_error_status(device, &err_stat); if (err == AMDSMI_STATUS_NOT_SUPPORTED) { IF_VERB(STANDARD) { @@ -124,7 +124,7 @@ void TestXGMIReadWrite::Run(void) { << std::endl; } // Verify api support checking functionality is working - err = amdsmi_dev_xgmi_error_status(device, nullptr); + err = amdsmi_gpu_xgmi_error_status(device, nullptr); ASSERT_EQ(err, AMDSMI_STATUS_NOT_SUPPORTED); continue; @@ -135,7 +135,7 @@ void TestXGMIReadWrite::Run(void) { static_cast(err_stat) << std::endl; } // Verify api support checking functionality is working - err = amdsmi_dev_xgmi_error_status(device, nullptr); + err = amdsmi_gpu_xgmi_error_status(device, nullptr); ASSERT_EQ(err, AMDSMI_STATUS_INVAL); // TODO(cfree) We need to find a way to generate xgmi errors so this