From 793ba944d634406b9d09c0f4f8e7d769b1b449a0 Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Tue, 25 Jan 2022 21:15:17 +1000 Subject: [PATCH] GS/Vulkan: Prefer coherent for upload and cached for download buffers --- common/Vulkan/StreamBuffer.cpp | 1 + pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/common/Vulkan/StreamBuffer.cpp b/common/Vulkan/StreamBuffer.cpp index 939932dac0..b17508ca0e 100644 --- a/common/Vulkan/StreamBuffer.cpp +++ b/common/Vulkan/StreamBuffer.cpp @@ -73,6 +73,7 @@ namespace Vulkan VmaAllocationCreateInfo aci = {}; aci.flags = VMA_ALLOCATION_CREATE_MAPPED_BIT; aci.usage = VMA_MEMORY_USAGE_CPU_TO_GPU; + aci.preferredFlags = VK_MEMORY_PROPERTY_HOST_COHERENT_BIT; VmaAllocationInfo ai = {}; VkBuffer new_buffer = VK_NULL_HANDLE; diff --git a/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp b/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp index 655339b21e..581cd5bb0b 100644 --- a/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp +++ b/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp @@ -1617,6 +1617,7 @@ bool GSDeviceVK::CheckStagingBufferSize(u32 required_size) VmaAllocationCreateInfo aci = {}; aci.usage = VMA_MEMORY_USAGE_GPU_TO_CPU; aci.flags = VMA_ALLOCATION_CREATE_MAPPED_BIT; + aci.preferredFlags = VK_MEMORY_PROPERTY_HOST_CACHED_BIT; VmaAllocationInfo ai = {}; VkResult res = vmaCreateBuffer(