RADV Vulkan Driver Lands Support For External Fences
Even with AMD open-sourcing their official Vulkan driver any day now, David Airlie, Bas Nieuwenhuizen, and others independently continue to advance the dissenting RADV Vulkan driver.
The latest to report on RADV is that it now supports external fences and the associated VK_KHR_external_fence_fd extension. External fences for Vulkan is about allowing synchronized access to external memory using fences. Vulkan external memory in turn is about memory outside of the scope of the logical device and can be used for multi-process/device handling and among the current use-cases for Vulkan external memory is SteamVR on Linux.
Initial support for DRM sync objects was added in Linux 4.13 and further improved in Linux 4.14. The just-released libdrm 2.4.89 supports the "syncobj" API for synchronization objects and now RADV builds off this synchronization object API for its external memory fencing implementation.
So if you are using Mesa 17.4-dev Git with the latest libdrm and on the latest Linux kernel, you can have external fences working, including the fence_fd extension. VK_KHR_external_fence_fd is for exporting the fence payload to/from POSIX file descriptors.
The latest to report on RADV is that it now supports external fences and the associated VK_KHR_external_fence_fd extension. External fences for Vulkan is about allowing synchronized access to external memory using fences. Vulkan external memory in turn is about memory outside of the scope of the logical device and can be used for multi-process/device handling and among the current use-cases for Vulkan external memory is SteamVR on Linux.
Initial support for DRM sync objects was added in Linux 4.13 and further improved in Linux 4.14. The just-released libdrm 2.4.89 supports the "syncobj" API for synchronization objects and now RADV builds off this synchronization object API for its external memory fencing implementation.
So if you are using Mesa 17.4-dev Git with the latest libdrm and on the latest Linux kernel, you can have external fences working, including the fence_fd extension. VK_KHR_external_fence_fd is for exporting the fence payload to/from POSIX file descriptors.
9 Comments