From 48aa5df6efb8b8eb31a5d3a7ed8017281f154653 Mon Sep 17 00:00:00 2001 From: Deepak Mewar Date: Mon, 27 Feb 2023 01:35:46 -0500 Subject: [PATCH] Renamed APIs 1) amdsmi_get_compute_process_info to amdsmi_get_gpu_compute_process_info 2) amdsmi_get_compute_process_info_by_pid to amdsmi_get_gpu_compute_process_info_by_pid grep -rli 'amdsmi_get_compute_process_info' * | xargs -i@ sed -i 's/amdsmi_get_compute_process_info/amdsmi_get_gpu_compute_process_info/g' @ Change-Id: Ia5c9c22d1466ecea27d3ae3025b3b87db75853e2 [ROCm/amdsmi commit: f3854b3d5f7f0cfb6f00d555c47c2eb9f547f826] --- projects/amdsmi/include/amd_smi/amdsmi.h | 4 ++-- projects/amdsmi/py-interface/README.md | 12 ++++++------ projects/amdsmi/py-interface/__init__.py | 4 ++-- projects/amdsmi/py-interface/amdsmi_interface.py | 10 +++++----- projects/amdsmi/py-interface/amdsmi_wrapper.py | 16 ++++++++-------- projects/amdsmi/py-interface/rocm_smi_tool.py | 8 ++++---- projects/amdsmi/src/amd_smi/amd_smi.cc | 4 ++-- .../amd_smi_test/functional/process_info_read.cc | 14 +++++++------- 8 files changed, 36 insertions(+), 36 deletions(-) diff --git a/projects/amdsmi/include/amd_smi/amdsmi.h b/projects/amdsmi/include/amd_smi/amdsmi.h index e8d8f370a2..5e6a7a001c 100644 --- a/projects/amdsmi/include/amd_smi/amdsmi.h +++ b/projects/amdsmi/include/amd_smi/amdsmi.h @@ -3011,7 +3011,7 @@ amdsmi_status_t * @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail */ amdsmi_status_t -amdsmi_get_compute_process_info(amdsmi_process_info_t *procs, uint32_t *num_items); +amdsmi_get_gpu_compute_process_info(amdsmi_process_info_t *procs, uint32_t *num_items); /** * @brief Get process information about a specific process @@ -3030,7 +3030,7 @@ amdsmi_get_compute_process_info(amdsmi_process_info_t *procs, uint32_t *num_item * @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail */ amdsmi_status_t -amdsmi_get_compute_process_info_by_pid(uint32_t pid, amdsmi_process_info_t *proc); +amdsmi_get_gpu_compute_process_info_by_pid(uint32_t pid, amdsmi_process_info_t *proc); /** * @brief Get the device indices currently being used by a process diff --git a/projects/amdsmi/py-interface/README.md b/projects/amdsmi/py-interface/README.md index 96fa1f0f37..87b3323d64 100644 --- a/projects/amdsmi/py-interface/README.md +++ b/projects/amdsmi/py-interface/README.md @@ -2739,7 +2739,7 @@ except AmdSmiException as e: print(e) ``` -## amdsmi_get_compute_process_info +## amdsmi_get_gpu_compute_process_info Description: Get process information about processes currently using GPU Input parameters: None @@ -2754,21 +2754,21 @@ Field | Description `sdma_usage` | SDMA usage in microseconds `cu_occupancy` | Compute Unit usage in percents -Exceptions that can be thrown by `amdsmi_get_compute_process_info` function: +Exceptions that can be thrown by `amdsmi_get_gpu_compute_process_info` function: * `AmdSmiLibraryException` * `AmdSmiRetryException` Example: ```python try: - procs = amdsmi_get_compute_process_info() + procs = amdsmi_get_gpu_compute_process_info() for proc in procs: print(proc) except AmdSmiException as e: print(e) ``` -## amdsmi_get_compute_process_info_by_pid +## amdsmi_get_gpu_compute_process_info_by_pid Description: Get process information about processes currently using GPU Input parameters: @@ -2784,7 +2784,7 @@ Field | Description `sdma_usage` | SDMA usage in microseconds `cu_occupancy` | Compute Unit usage in percents -Exceptions that can be thrown by `amdsmi_get_compute_process_info_by_pid` function: +Exceptions that can be thrown by `amdsmi_get_gpu_compute_process_info_by_pid` function: * `AmdSmiLibraryException` * `AmdSmiRetryException` * `AmdSmiParameterException` @@ -2793,7 +2793,7 @@ Example: ```python try: pid = 0 # << valid pid here - proc = amdsmi_get_compute_process_info_by_pid(pid) + proc = amdsmi_get_gpu_compute_process_info_by_pid(pid) print(proc) except AmdSmiException as e: print(e) diff --git a/projects/amdsmi/py-interface/__init__.py b/projects/amdsmi/py-interface/__init__.py index eb530fec69..c72adbb1f3 100644 --- a/projects/amdsmi/py-interface/__init__.py +++ b/projects/amdsmi/py-interface/__init__.py @@ -130,8 +130,8 @@ from .amdsmi_interface import amdsmi_dev_get_gpu_ecc_status from .amdsmi_interface import amdsmi_status_string # # System Information Query -from .amdsmi_interface import amdsmi_get_compute_process_info -from .amdsmi_interface import amdsmi_get_compute_process_info_by_pid +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_compute_process_gpus from .amdsmi_interface import amdsmi_dev_xgmi_error_status from .amdsmi_interface import amdsmi_dev_reset_xgmi_error diff --git a/projects/amdsmi/py-interface/amdsmi_interface.py b/projects/amdsmi/py-interface/amdsmi_interface.py index c0c8152256..15ec7d3d3a 100644 --- a/projects/amdsmi/py-interface/amdsmi_interface.py +++ b/projects/amdsmi/py-interface/amdsmi_interface.py @@ -2535,17 +2535,17 @@ def amdsmi_status_string(status: amdsmi_wrapper.amdsmi_status_t) -> str: return amdsmi_wrapper.string_cast(status_string_p_p.contents) -def amdsmi_get_compute_process_info() -> List[Dict[str, int]]: +def amdsmi_get_gpu_compute_process_info() -> List[Dict[str, int]]: num_items = ctypes.c_uint32(0) nullptr = ctypes.POINTER(amdsmi_wrapper.amdsmi_process_info_t)() _check_res( - amdsmi_wrapper.amdsmi_get_compute_process_info( + amdsmi_wrapper.amdsmi_get_gpu_compute_process_info( nullptr, ctypes.byref(num_items)) ) procs = (amdsmi_wrapper.amdsmi_process_info_t * num_items.value)() _check_res( - amdsmi_wrapper.amdsmi_get_compute_process_info( + amdsmi_wrapper.amdsmi_get_gpu_compute_process_info( procs, ctypes.byref(num_items)) ) @@ -2561,13 +2561,13 @@ def amdsmi_get_compute_process_info() -> List[Dict[str, int]]: ] -def amdsmi_get_compute_process_info_by_pid(pid: int) -> Dict[str, int]: +def amdsmi_get_gpu_compute_process_info_by_pid(pid: int) -> Dict[str, int]: if not isinstance(pid, int): raise AmdSmiParameterException(pid, int) proc = amdsmi_wrapper.amdsmi_process_info_t() _check_res( - amdsmi_wrapper.amdsmi_get_compute_process_info_by_pid( + amdsmi_wrapper.amdsmi_get_gpu_compute_process_info_by_pid( ctypes.c_uint32(pid), ctypes.byref(proc) ) ) diff --git a/projects/amdsmi/py-interface/amdsmi_wrapper.py b/projects/amdsmi/py-interface/amdsmi_wrapper.py index c280e974ef..ca244aad03 100644 --- a/projects/amdsmi/py-interface/amdsmi_wrapper.py +++ b/projects/amdsmi/py-interface/amdsmi_wrapper.py @@ -1607,12 +1607,12 @@ amdsmi_read_counter.argtypes = [amdsmi_event_handle_t, ctypes.POINTER(struct_c__ amdsmi_counter_get_available_counters = _libraries['libamd_smi.so'].amdsmi_counter_get_available_counters amdsmi_counter_get_available_counters.restype = amdsmi_status_t amdsmi_counter_get_available_counters.argtypes = [amdsmi_processor_handle, amdsmi_event_group_t, ctypes.POINTER(ctypes.c_uint32)] -amdsmi_get_compute_process_info = _libraries['libamd_smi.so'].amdsmi_get_compute_process_info -amdsmi_get_compute_process_info.restype = amdsmi_status_t -amdsmi_get_compute_process_info.argtypes = [ctypes.POINTER(struct_c__SA_amdsmi_process_info_t), ctypes.POINTER(ctypes.c_uint32)] -amdsmi_get_compute_process_info_by_pid = _libraries['libamd_smi.so'].amdsmi_get_compute_process_info_by_pid -amdsmi_get_compute_process_info_by_pid.restype = amdsmi_status_t -amdsmi_get_compute_process_info_by_pid.argtypes = [uint32_t, ctypes.POINTER(struct_c__SA_amdsmi_process_info_t)] +amdsmi_get_gpu_compute_process_info = _libraries['libamd_smi.so'].amdsmi_get_gpu_compute_process_info +amdsmi_get_gpu_compute_process_info.restype = amdsmi_status_t +amdsmi_get_gpu_compute_process_info.argtypes = [ctypes.POINTER(struct_c__SA_amdsmi_process_info_t), ctypes.POINTER(ctypes.c_uint32)] +amdsmi_get_gpu_compute_process_info_by_pid = _libraries['libamd_smi.so'].amdsmi_get_gpu_compute_process_info_by_pid +amdsmi_get_gpu_compute_process_info_by_pid.restype = amdsmi_status_t +amdsmi_get_gpu_compute_process_info_by_pid.argtypes = [uint32_t, ctypes.POINTER(struct_c__SA_amdsmi_process_info_t)] amdsmi_get_compute_process_gpus = _libraries['libamd_smi.so'].amdsmi_get_compute_process_gpus amdsmi_get_compute_process_gpus.restype = amdsmi_status_t amdsmi_get_compute_process_gpus.argtypes = [uint32_t, ctypes.POINTER(ctypes.c_uint32), ctypes.POINTER(ctypes.c_uint32)] @@ -1897,8 +1897,8 @@ __all__ = \ 'amdsmi_get_gpu_bad_page_info', 'amdsmi_get_gpu_board_info', 'amdsmi_get_caps_info', 'amdsmi_get_clock_measure', 'amdsmi_get_compute_process_gpus', - 'amdsmi_get_compute_process_info', - 'amdsmi_get_compute_process_info_by_pid', 'amdsmi_get_gpu_device_bdf', + 'amdsmi_get_gpu_compute_process_info', + 'amdsmi_get_gpu_compute_process_info_by_pid', 'amdsmi_get_gpu_device_bdf', 'amdsmi_get_processor_handle_from_bdf', 'amdsmi_get_processor_handles', 'amdsmi_get_processor_type', 'amdsmi_get_gpu_device_uuid', 'amdsmi_get_gpu_driver_version', 'amdsmi_get_gpu_ecc_error_count', diff --git a/projects/amdsmi/py-interface/rocm_smi_tool.py b/projects/amdsmi/py-interface/rocm_smi_tool.py index e645f4fb00..8be10a887e 100644 --- a/projects/amdsmi/py-interface/rocm_smi_tool.py +++ b/projects/amdsmi/py-interface/rocm_smi_tool.py @@ -325,8 +325,8 @@ class Formatter: | """ + self.style.text("36 Get device ecc enable. Api: amdsmi_dev_get_gpu_ecc_enabled ") + """ | | """ + self.style.text("37 Get device ecc status. Api: amdsmi_dev_get_gpu_ecc_status ") + """ | | """ + self.style.text("38 Get status string. Api: amdsmi_status_string ") + """ | - | """ + self.style.text("39 Get compute process info. Api: amdsmi_get_compute_process_info ") + """ | - | """ + self.style.text("40 Get compute process info by pid. Api: amdsmi_get_compute_process_info_by_pid ") + """ | + | """ + 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_compute_process_gpus ") + """ | | """ + self.style.text("42 Get device xgmi_error_status. Api: amdsmi_dev_xgmi_error_status ") + """ | | """ + self.style.text("43 Get device xgmi error reset. Api: amdsmi_dev_reset_xgmi_error ") + """ | @@ -537,7 +537,7 @@ def amdsmi_tool_compute_process_gpus_get(dic): def amdsmi_tool_compute_process_info_by_pid_get(dic): pid = dic["pid"] - return smi_api.amdsmi_get_compute_process_info_by_pid(pid) + return smi_api.amdsmi_get_gpu_compute_process_info_by_pid(pid) def amdsmi_tool_topo_get_link_weight(dev): return smi_api.amdsmi_topo_get_link_weight(dev[0], dev[1]) @@ -839,7 +839,7 @@ commands = { 38: [amdsmi_tool_status_string, { "status": [int, True] }], - 39: [smi_api.amdsmi_get_compute_process_info, {}], + 39: [smi_api.amdsmi_get_gpu_compute_process_info, {}], 40: [amdsmi_tool_compute_process_info_by_pid_get, { "pid": [int, True] }], diff --git a/projects/amdsmi/src/amd_smi/amd_smi.cc b/projects/amdsmi/src/amd_smi/amd_smi.cc index befaa16d7d..ff86747f76 100644 --- a/projects/amdsmi/src/amd_smi/amd_smi.cc +++ b/projects/amdsmi/src/amd_smi/amd_smi.cc @@ -975,7 +975,7 @@ amdsmi_get_func_iter_value(amdsmi_func_id_iter_handle_t handle, } amdsmi_status_t -amdsmi_get_compute_process_info(amdsmi_process_info_t *procs, uint32_t *num_items) { +amdsmi_get_gpu_compute_process_info(amdsmi_process_info_t *procs, uint32_t *num_items) { AMDSMI_CHECK_INIT(); if (num_items == nullptr) @@ -986,7 +986,7 @@ amdsmi_get_compute_process_info(amdsmi_process_info_t *procs, uint32_t *num_item return amd::smi::rsmi_to_amdsmi_status(r); } -amdsmi_status_t amdsmi_get_compute_process_info_by_pid(uint32_t pid, +amdsmi_status_t amdsmi_get_gpu_compute_process_info_by_pid(uint32_t pid, amdsmi_process_info_t *proc) { AMDSMI_CHECK_INIT(); diff --git a/projects/amdsmi/tests/amd_smi_test/functional/process_info_read.cc b/projects/amdsmi/tests/amd_smi_test/functional/process_info_read.cc index 181b36cb90..1ab7f857ff 100755 --- a/projects/amdsmi/tests/amd_smi_test/functional/process_info_read.cc +++ b/projects/amdsmi/tests/amd_smi_test/functional/process_info_read.cc @@ -104,7 +104,7 @@ void TestProcInfoRead::Run(void) { uint32_t num_devices = num_monitor_devs(); - err = amdsmi_get_compute_process_info(nullptr, &num_proc_found); + err = amdsmi_get_gpu_compute_process_info(nullptr, &num_proc_found); if (err != AMDSMI_STATUS_SUCCESS) { if (err == AMDSMI_STATUS_NOT_SUPPORTED) { IF_VERB(STANDARD) { @@ -129,7 +129,7 @@ void TestProcInfoRead::Run(void) { procs = new amdsmi_process_info_t[num_proc_found]; val_ui32 = num_proc_found; - err = amdsmi_get_compute_process_info(procs, &val_ui32); + err = amdsmi_get_gpu_compute_process_info(procs, &val_ui32); if (err != AMDSMI_STATUS_SUCCESS) { if (err == AMDSMI_STATUS_INSUFFICIENT_SIZE) { IF_VERB(STANDARD) { @@ -191,13 +191,13 @@ void TestProcInfoRead::Run(void) { amdsmi_process_info_t proc_info; for (uint32_t j = 0; j < num_proc_found; j++) { memset(&proc_info, 0x0, sizeof(amdsmi_process_info_t)); - err = amdsmi_get_compute_process_info_by_pid(procs[j].process_id, + err = amdsmi_get_gpu_compute_process_info_by_pid(procs[j].process_id, &proc_info); if (err == AMDSMI_STATUS_NOT_FOUND) { std::cout << - "\t** WARNING: amdsmi_get_compute_process_info() found process " << + "\t** WARNING: amdsmi_get_gpu_compute_process_info() found process " << procs[j].process_id << ", but subsequently, " - "amdsmi_get_compute_process_info_by_pid() did not" + "amdsmi_get_gpu_compute_process_info_by_pid() did not" " find this same process." << std::endl; } else { CHK_ERR_ASRT(err) @@ -217,10 +217,10 @@ void TestProcInfoRead::Run(void) { if (num_proc_found > 1) { amdsmi_process_info_t tmp_proc; val_ui32 = 1; - err = amdsmi_get_compute_process_info(&tmp_proc, &val_ui32); + err = amdsmi_get_gpu_compute_process_info(&tmp_proc, &val_ui32); if (err != AMDSMI_STATUS_INSUFFICIENT_SIZE) { - std::cout << "Expected amdsmi_get_compute_process_info() to tell us" + std::cout << "Expected amdsmi_get_gpu_compute_process_info() to tell us" " there are more processes available, but instead go return code " << err << std::endl; }