Conditionally utilize `VK_EXT_external_memory_host` to optimize bandwidth
This is something I've already done before in my other personal plugins, where rather than copying data into a staging ring-buffer to upload/download onto the GPU, VK_EXT_external_memory_host allows arbitrary pointers to be imported directly. This would remove an entire copy from the upload/download path by allowing vulkan to directly write into host-memory.

This would also have to introduce the concept of "trivially importable memory", where minImportedHostPointerAlignment is the same as the operating system's page-size (4096 bytes) allowing practically any pointer to be imported.
MoltenVK support is tracked over at https://github.com/KhronosGroup/MoltenVK/issues/794.
MacOS dependency on https://github.com/KhronosGroup/MoltenVK/issues/794 and https://github.com/KhronosGroup/MoltenVK/pull/1854