diff --git a/CHANGELOG.md b/CHANGELOG.md index 60225229de..6bd1fa596a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -444,7 +444,9 @@ Updated structure `amdsmi_vram_info_t`: ### Upcoming changes -- **Deprication of the `AMDSMI_LIB_VERSION_YEAR` enum and API fields.** +- **Deprication in ROCm 7.0 of the `AMDSMI_LIB_VERSION_YEAR` enum and API fields.** + +- **Deprication in ROCm 7.0 of the `pasid` field within struct `amdsmi_process_info_t`** ### Known issues diff --git a/docs/reference/amdsmi-py-api.md b/docs/reference/amdsmi-py-api.md index 71dd620832..8e5fb2e155 100644 --- a/docs/reference/amdsmi-py-api.md +++ b/docs/reference/amdsmi-py-api.md @@ -3296,7 +3296,7 @@ Output: List of python dicts each containing a process information Field | Description ---|--- `process_id` | Process ID -`pasid` | PASID +`pasid` | PASID (Not working in ROCm 6.4+, deprecating in 7.0) `vram_usage` | VRAM usage `sdma_usage` | SDMA usage in microseconds `cu_occupancy` | Compute Unit usage in percents @@ -3330,7 +3330,7 @@ Output: Dict containing a process information Field | Description ---|--- `process_id` | Process ID -`pasid` | PASID +`pasid` | PASID (Not working in ROCm 6.4+, deprecating in 7.0) `vram_usage` | VRAM usage `sdma_usage` | SDMA usage in microseconds `cu_occupancy` | Compute Unit usage in percents diff --git a/include/amd_smi/amdsmi.h b/include/amd_smi/amdsmi.h index 291baf834f..1d6e9036c6 100644 --- a/include/amd_smi/amdsmi.h +++ b/include/amd_smi/amdsmi.h @@ -1975,7 +1975,7 @@ typedef struct { */ typedef struct { uint32_t process_id; //!< Process ID - uint32_t pasid; //!< PASID + uint32_t pasid; //!< PASID (Not working in ROCm 6.4+, deprecating in 7.0) uint64_t vram_usage; //!< VRAM usage in MB uint64_t sdma_usage; //!< SDMA usage in microseconds uint32_t cu_occupancy; //!< Compute Unit usage in percent diff --git a/py-interface/amdsmi_interface.py b/py-interface/amdsmi_interface.py index a6e026eb82..b5328dc08a 100644 --- a/py-interface/amdsmi_interface.py +++ b/py-interface/amdsmi_interface.py @@ -4359,7 +4359,7 @@ def amdsmi_get_gpu_compute_process_info() -> List[Dict[str, int]]: return [ { "process_id": proc.process_id, - "pasid": proc.pasid, + "pasid": proc.pasid, # Not working in ROCm 6.4+, deprecating in 7.0 "vram_usage": proc.vram_usage, "sdma_usage": proc.sdma_usage, "cu_occupancy": proc.cu_occupancy, @@ -4381,7 +4381,7 @@ def amdsmi_get_gpu_compute_process_info_by_pid(pid: int) -> Dict[str, int]: return { "process_id": proc.process_id, - "pasid": proc.pasid, + "pasid": proc.pasid, # Not working in ROCm 6.4+, deprecating in 7.0 "vram_usage": proc.vram_usage, "sdma_usage": proc.sdma_usage, "cu_occupancy": proc.cu_occupancy, diff --git a/rocm_smi/include/rocm_smi/rocm_smi.h b/rocm_smi/include/rocm_smi/rocm_smi.h index ecb299dec2..53a4852e5b 100644 --- a/rocm_smi/include/rocm_smi/rocm_smi.h +++ b/rocm_smi/include/rocm_smi/rocm_smi.h @@ -1388,7 +1388,7 @@ typedef struct { */ typedef struct { uint32_t process_id; //!< Process ID - uint32_t pasid; //!< PASID: (Process Address Space ID) + uint32_t pasid; //!< PASID: (Process Address Space ID) (Not working in ROCm 6.4+, deprecating in 7.0) uint64_t vram_usage; //!< VRAM usage uint64_t sdma_usage; //!< SDMA usage in microseconds uint32_t cu_occupancy; //!< Compute Unit usage in percent diff --git a/src/amd_smi/amd_smi_gpu_device.cc b/src/amd_smi/amd_smi_gpu_device.cc index 6f00580c66..7993abc0fb 100644 --- a/src/amd_smi/amd_smi_gpu_device.cc +++ b/src/amd_smi/amd_smi_gpu_device.cc @@ -243,6 +243,7 @@ int32_t AMDSmiGPUDevice::get_compute_process_list_impl(GPUComputeProcessList_t& // Is this device running this process? if (list_device_ptr[device_idx] == get_gpu_id()) { rsmi_process_info_t rsmi_dev_proc_info{}; + // TODO remove pasid Not working in ROCm 6.4+, deprecating in 7.0 auto status_code = rsmi_compute_process_info_by_device_get(process_id, list_device_ptr[device_idx], &rsmi_dev_proc_info); if ((status_code == rsmi_status_t::RSMI_STATUS_SUCCESS) && ((rsmi_dev_proc_info.process_id == process_id) && (rsmi_dev_proc_info.pasid == proc_addr_id))) { diff --git a/src/amd_smi/fdinfo.cc b/src/amd_smi/fdinfo.cc index 116aff2789..30f1be27a9 100644 --- a/src/amd_smi/fdinfo.cc +++ b/src/amd_smi/fdinfo.cc @@ -144,6 +144,7 @@ amdsmi_status_t gpuvsmi_get_pid_info(const amdsmi_bdf_t &bdf, long int pid, return AMDSMI_STATUS_NO_PERM; /* Vectors to check if repated fd pasid */ + // TODO remove pasid Not working in ROCm 6.4+, deprecating in 7.0 std::vector pasids; memset(&info, 0, sizeof(info)); diff --git a/tests/amd_smi_test/functional/process_info_read.cc b/tests/amd_smi_test/functional/process_info_read.cc index ade23c8250..b7d7936bdf 100644 --- a/tests/amd_smi_test/functional/process_info_read.cc +++ b/tests/amd_smi_test/functional/process_info_read.cc @@ -64,6 +64,7 @@ void TestProcInfoRead::Close() { static void dumpProcess(amdsmi_process_info_t *p) { assert(p != nullptr); std::cout << "\t** ProcessID: " << p->process_id << " "; + // TODO remove pasid Not working in ROCm 6.4+, deprecating in 7.0 std::cout << "PASID: " << p->pasid << " "; std::cout << std::endl; }