diff --git a/amdsmi_cli/amdsmi_logger.py b/amdsmi_cli/amdsmi_logger.py index 49aa0f53e3..2bd55a4d80 100644 --- a/amdsmi_cli/amdsmi_logger.py +++ b/amdsmi_cli/amdsmi_logger.py @@ -239,9 +239,10 @@ class AMDSMILogger(): string_process_value = str(process_value) if process_key == "name": # Truncate name if too long - process_name = string_process_value.split('/')[-1][:17] - if process_name == "": + if string_process_value == "" or string_process_value == "N/A": process_name = "N/A" + else: + process_name = string_process_value.split('/')[-1][:17] table_values += process_name.rjust(17) elif process_key == "pid": table_values += string_process_value.rjust(9) diff --git a/rocm_smi/src/rocm_smi_kfd.cc b/rocm_smi/src/rocm_smi_kfd.cc index 8db11b973d..15604ae31c 100644 --- a/rocm_smi/src/rocm_smi_kfd.cc +++ b/rocm_smi/src/rocm_smi_kfd.cc @@ -327,6 +327,12 @@ int GetProcessGPUs(uint32_t pid, std::unordered_set *gpu_set) { if (gpu_set == nullptr) { return RSMI_STATUS_INVALID_ARGS; } + + // Skip amd-smi process itself + if (pid == static_cast(getpid())) { + return 0; + } + errno = 0; std::string queues_dir = kKFDProcPathRoot;