This presentation (https://www.khronos.org/assets/uploads/developers/library/overview/Vulkan-1-1-Presentation_Mar18.pdf) mentions on slide 16 the possibility with Vulkan 1.1 to "Share memory and sync primitives (semaphores and fences) between APIs in a single application, or between multiple applications
- Many applications, e.g. allowing a compositor to present images from Vulkan and OpenGL ES applications to the same display device".
I am looking into sharing memory buffers (textures/images) across OpenCL/Vulkan, specifically on AMD GPUs. Is there any documentation available on how this can be achieved? Say I have a buffer of a 128*128 RGB image/texture in an OpenCL context, how would I access this data from a Vulkan context without sending it to system memory (maintaining the texture data in GPU memory)?
What is the overall interoperability state of interior for data/memory sharing between OpenCL/OpenGL/D3D11/D3D12 and Vulkan?
Are there any code examples out there that demonstrate this type of interoperability between APIs?