From 72b3f1f925c078e6cb508e98203f87ee412e69af Mon Sep 17 00:00:00 2001 From: wildcard Date: Sat, 13 Sep 2025 18:21:32 +0200 Subject: [PATCH] [VMA] Use Host cached and Host coherent for Download operations Increase read speeds by using appropriate usage flags --- src/video_core/vulkan_common/vulkan_memory_allocator.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/video_core/vulkan_common/vulkan_memory_allocator.cpp b/src/video_core/vulkan_common/vulkan_memory_allocator.cpp index 675dede61c..119b4be1c8 100644 --- a/src/video_core/vulkan_common/vulkan_memory_allocator.cpp +++ b/src/video_core/vulkan_common/vulkan_memory_allocator.cpp @@ -49,6 +49,9 @@ namespace Vulkan { } [[nodiscard]] VkMemoryPropertyFlags MemoryUsagePreferredVmaFlags(MemoryUsage usage) { + if (usage == MemoryUsage::Download) { + return VK_MEMORY_PROPERTY_HOST_CACHED_BIT | VK_MEMORY_PROPERTY_HOST_COHERENT_BIT; + } return usage != MemoryUsage::DeviceLocal ? VK_MEMORY_PROPERTY_HOST_COHERENT_BIT : VkMemoryPropertyFlagBits{}; }