Have an application that RDMA’s into GPU host-visible memory from external equipment. Is there a means within Vulkan to extract the physical memory address from a host-visible memory allocation? Docs discuss memory allocations and mapping but the mappings are into the calling process’ virtual address space. Would prefer to avoid staging buffers & double copies etc. Any guidance appreciated.
Is there a means within Vulkan to extract the physical memory address from a host-visible memory allocation?
As I’m sure you’re aware, you would need to extract this on a virtual-page-by-virtual-page basis, due to the fact that contiguous addresses in virtual memory do not usually map to contiguous addresses in physical memory.
And no, Vulkan itself provides no such translation. You’ll have to use OS facilities to do so. And you’ll need to pin those pages too.
Thx for the confirmation and caveat