This API is used by MPI/UCX for efficiently sharing VRAM between MPI ranks on the same node. It has been part of the ROCm DKMS branch for a long time. This code is refactored to be less invasive for upstreaming. As a result struct kfd_bo and the associated interval tree is not needed upstream.
The introduction of this API upstream bumps the KFD API version to 1.4. The corresponding Thunk change that goes with the proposed upstreaming of this API can be found here: https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/commit/682922bd405caaab64887e8e702b7d996ba9e2a8 Felix Kuehling (1): drm/amdkfd: Add IPC API drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 5 + .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 56 +++- drivers/gpu/drm/amd/amdkfd/Makefile | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 74 ++--- drivers/gpu/drm/amd/amdkfd/kfd_ipc.c | 263 ++++++++++++++++++ drivers/gpu/drm/amd/amdkfd/kfd_ipc.h | 55 ++++ drivers/gpu/drm/amd/amdkfd/kfd_module.c | 5 + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 5 + include/uapi/linux/kfd_ioctl.h | 62 ++++- 9 files changed, 488 insertions(+), 40 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_ipc.c create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_ipc.h -- 2.27.0 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx