yuzu/src/video_core
ReinUsesLisp 5b01f80a12 vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache
The stream buffer before this commit once it was full (no more bytes to
write before looping) waiting for all previous operations to finish.
This was a temporary solution and had a noticeable performance penalty
in performance (from what a profiler showed).

To avoid this mark with fences usages of the stream buffer and once it
loops wait for them to be signaled. On average this will never wait.
Each fence knows where its usage finishes, resulting in a non-paged
stream buffer.

On the other side, the buffer cache is reimplemented using the generic
buffer cache. It makes use of the staging buffer pool and the new
stream buffer.
2020-01-06 18:13:41 -03:00
..
buffer_cache buffer_cache: Remove brace initialized for objects with default constructor 2019-11-20 16:00:40 -03:00
engines yuzu: Remove Maxwell debugger 2020-01-02 23:09:44 -03:00
renderer_opengl Merge pull request #3258 from FernandoS27/shader-amend 2020-01-04 14:05:17 -05:00
renderer_vulkan vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache 2020-01-06 18:13:41 -03:00
shader Merge pull request #3258 from FernandoS27/shader-amend 2020-01-04 14:05:17 -05:00
texture_cache Texture Cache: Improve documentation 2019-12-22 12:29:23 -04:00
textures Texture Cache: Add HLE methods for building 3D textures within the GPU in certain scenarios. 2019-12-22 12:24:34 -04:00
CMakeLists.txt Merge pull request #3264 from ReinUsesLisp/vk-descriptor-pool 2020-01-05 15:54:41 -04:00
dma_pusher.cpp GPU: Flush commands on every dma pusher step. 2019-07-26 16:54:22 -04:00
dma_pusher.h gpu: Rewrite virtual memory manager using PageTable. 2019-03-20 22:36:02 -04:00
gpu.cpp video_core: Block in WaitFence. 2019-12-30 13:04:53 +01:00
gpu.h video_core: Block in WaitFence. 2019-12-30 13:04:53 +01:00
gpu_asynch.cpp Core: Wait for GPU to be idle before shutting down. 2019-10-04 19:59:53 -04:00
gpu_asynch.h Core: Wait for GPU to be idle before shutting down. 2019-10-04 19:59:53 -04:00
gpu_synch.cpp gpu: Change optional<reference_wrapper<T>> to T* for FramebufferConfig 2019-08-21 01:55:25 -03:00
gpu_synch.h Core: Wait for GPU to be idle before shutting down. 2019-10-04 19:59:53 -04:00
gpu_thread.cpp video_core/gpu_thread: Tidy up SwapBuffers() 2019-11-27 17:46:11 -05:00
gpu_thread.h Core: Wait for GPU to be idle before shutting down. 2019-10-04 19:59:53 -04:00
macro_interpreter.cpp video_core/macro_interpreter: Make definitions of most private enums/unions hidden 2019-10-17 17:55:46 -04:00
macro_interpreter.h video_core/macro_interpreter: Make definitions of most private enums/unions hidden 2019-10-17 17:55:46 -04:00
memory_manager.cpp core/memory: Migrate over GetPointer() 2019-11-26 21:55:38 -05:00
memory_manager.h prefer system reference over global accessor 2019-07-09 08:11:35 -07:00
morton.cpp Video_Core: Implement texture format E5B9G9R9_SHAREDEXP. 2019-10-27 16:44:09 -04:00
morton.h renderer_opengl: Use block linear swizzling for CPU framebuffers 2019-08-21 02:17:14 -03:00
rasterizer_accelerated.cpp Added missing include 2019-12-11 18:11:49 +00:00
rasterizer_accelerated.h core: Prepare various classes for memory read/write migration 2019-11-26 21:55:37 -05:00
rasterizer_cache.cpp rasterizer_cache: Add missing virtual destructor to RasterizerCacheObject 2018-11-08 00:31:39 -05:00
rasterizer_cache.h rasterizer_cache: Protect inherited caches from submission level 2019-07-01 04:32:01 -04:00
rasterizer_interface.h Maxwell3D: Corrections and refactors to MME instance refactor 2019-09-22 07:23:13 -04:00
renderer_base.cpp video_core/engines: Remove unnecessary includes 2019-03-05 20:35:32 -05:00
renderer_base.h gpu: Change optional<reference_wrapper<T>> to T* for FramebufferConfig 2019-08-21 01:55:25 -03:00
sampler_cache.cpp video_core: Abstract vk_sampler_cache into a templated class 2019-04-02 15:54:11 -03:00
sampler_cache.h video_core: Abstract vk_sampler_cache into a templated class 2019-04-02 15:54:11 -03:00
surface.cpp texture_cache: Use a table instead of switch for texture formats 2019-11-14 20:57:10 -03:00
surface.h texture_cache: Use a table instead of switch for texture formats 2019-11-14 20:57:10 -03:00
video_core.cpp video_core: Silence implicit conversion warnings 2019-11-08 22:48:50 +00:00
video_core.h video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00