Proposed Vulkan Extension To Improve Memory Sharing With Apple's Metal
([Vulkan] 6 Hours Ago
VK_EXT_external_memory_metal)
- Reference: 0001486626
- News link: https://www.phoronix.com/news/VK_EXT_external_memory_metal
- Source link:
LunarG engineer Aitor Camacho Larrondo has proposed VK_EXT_external_memory_metal, a new extension for the Vulkan API to allow for more easily sharing memory objects from Vulkan with Apple's Metal.
VK_EXT_external_memory_metal allows for exporting non-Vulkan handles from Vulkan memory objects that can then be referenced outside the scope of the Vulkan device instance that created them. This Metal External Memory support would allow for better memory sharing with Apple Metal drivers. There is already the VK_EXT_metal_objects extension to expose underlying Metal resources, but that currently requires some special handling and semantics that don't align with the more straight-forward VK_EXT_external_memory_metal approach.
VK_EXT_external_memory_metal is similar in nature to VK_KHR_external_memory_win32 for easier memory sharing on Windows platforms such as with Direct3D and VK_ANDROID_external_memory_android_hardware_buffer for native Android hardware buffers. VK_EXT_external_memory_metal may be useful for the likes of the [1]MoltenVK Vulkan implementation built atop the Metal API for macOS/iOS devices.
More details on this proposed Vulkan external memory Metal extension via [2]GitHub .
[1] https://www.phoronix.com/search/MoltenVK
[2] https://github.com/KhronosGroup/Vulkan-Docs/pull/2414
VK_EXT_external_memory_metal allows for exporting non-Vulkan handles from Vulkan memory objects that can then be referenced outside the scope of the Vulkan device instance that created them. This Metal External Memory support would allow for better memory sharing with Apple Metal drivers. There is already the VK_EXT_metal_objects extension to expose underlying Metal resources, but that currently requires some special handling and semantics that don't align with the more straight-forward VK_EXT_external_memory_metal approach.
VK_EXT_external_memory_metal is similar in nature to VK_KHR_external_memory_win32 for easier memory sharing on Windows platforms such as with Direct3D and VK_ANDROID_external_memory_android_hardware_buffer for native Android hardware buffers. VK_EXT_external_memory_metal may be useful for the likes of the [1]MoltenVK Vulkan implementation built atop the Metal API for macOS/iOS devices.
More details on this proposed Vulkan external memory Metal extension via [2]GitHub .
[1] https://www.phoronix.com/search/MoltenVK
[2] https://github.com/KhronosGroup/Vulkan-Docs/pull/2414
Eirikr1848