diff options
| author | Morph <39850852+Morph1984@users.noreply.github.com> | 2022-03-25 12:09:40 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-25 12:09:40 -0400 |
| commit | da46d924e9953a6934c43e33e068023b405ecbcb (patch) | |
| tree | 2a5ad33409771c951997186c5665b60a96fa4205 /src/video_core/renderer_opengl | |
| parent | ab6a5784fa991016b5d8c097471fbda88853ba5d (diff) | |
| parent | a2d7b2f905eef379f6412ef043100a98845aefb1 (diff) | |
Merge pull request #8080 from FernandoS27/yo-momma-so-fat-that
Memory GPU <-> CPU: reduce infighting in the texture cache by adding CPU Cached memory.
Diffstat (limited to 'src/video_core/renderer_opengl')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp index 4d632d211..7e06d0069 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp @@ -352,7 +352,7 @@ void RasterizerOpenGL::OnCPUWrite(VAddr addr, u64 size) { shader_cache.OnCPUWrite(addr, size); { std::scoped_lock lock{texture_cache.mutex}; - texture_cache.WriteMemory(addr, size); + texture_cache.CachedWriteMemory(addr, size); } { std::scoped_lock lock{buffer_cache.mutex}; @@ -364,6 +364,10 @@ void RasterizerOpenGL::SyncGuestHost() { MICROPROFILE_SCOPE(OpenGL_CacheManagement); shader_cache.SyncGuestHost(); { + std::scoped_lock lock{texture_cache.mutex}; + texture_cache.FlushCachedWrites(); + } + { std::scoped_lock lock{buffer_cache.mutex}; buffer_cache.FlushCachedWrites(); } |
