From 59ee74a2757d3ea3640db58905c7fa76e85addfe Mon Sep 17 00:00:00 2001 From: kd-11 Date: Mon, 17 Jun 2019 23:08:17 +0300 Subject: [PATCH] rsx: Disable vertex cache if multithreaded memory access is enabled - When multithreaded RSX is enabled, the vertex cache just lowers performance - The small cost of upload is paid by the asynchronous thread, allowing RSX to work optimally --- rpcs3/Emu/RSX/GL/GLGSRender.cpp | 2 +- rpcs3/Emu/RSX/VK/VKGSRender.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/RSX/GL/GLGSRender.cpp b/rpcs3/Emu/RSX/GL/GLGSRender.cpp index 57e233bb67..e91f71dab6 100644 --- a/rpcs3/Emu/RSX/GL/GLGSRender.cpp +++ b/rpcs3/Emu/RSX/GL/GLGSRender.cpp @@ -31,7 +31,7 @@ GLGSRender::GLGSRender() : GSRender() { m_shaders_cache = std::make_unique(m_prog_buffer, "opengl", "v1.6"); - if (g_cfg.video.disable_vertex_cache) + if (g_cfg.video.disable_vertex_cache || g_cfg.video.multithreaded_rsx) m_vertex_cache = std::make_unique(); else m_vertex_cache = std::make_unique(); diff --git a/rpcs3/Emu/RSX/VK/VKGSRender.cpp b/rpcs3/Emu/RSX/VK/VKGSRender.cpp index cf85cbf507..cdc66f5ae6 100644 --- a/rpcs3/Emu/RSX/VK/VKGSRender.cpp +++ b/rpcs3/Emu/RSX/VK/VKGSRender.cpp @@ -534,7 +534,7 @@ VKGSRender::VKGSRender() : GSRender() m_prog_buffer = std::make_unique(); - if (g_cfg.video.disable_vertex_cache) + if (g_cfg.video.disable_vertex_cache || g_cfg.video.multithreaded_rsx) m_vertex_cache = std::make_unique(); else m_vertex_cache = std::make_unique();