yuzu-mainline/src/video_core/renderer_vulkan
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
..
shaders renderer_vulkan/shader: Add helper GLSL shaders 2019-12-16 17:59:08 -03:00
declarations.h externals: Update Vulkan-Headers 2019-12-08 22:08:19 -03:00
fixed_pipeline_state.cpp fixed_pipeline_state: Define symetric operator!= and mark as noexcept 2019-12-24 18:24:08 -03:00
fixed_pipeline_state.h fixed_pipeline_state: Define symetric operator!= and mark as noexcept 2019-12-24 18:24:08 -03:00
maxwell_to_vk.cpp maxwell_to_vk: Improve image format table and add more formats 2019-12-13 03:12:29 -03:00
maxwell_to_vk.h maxwell_to_vk: Improve image format table and add more formats 2019-12-13 03:12:29 -03:00
vk_buffer_cache.cpp vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache 2020-01-06 18:13:41 -03:00
vk_buffer_cache.h vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache 2020-01-06 18:13:41 -03:00
vk_descriptor_pool.cpp Update src/video_core/renderer_vulkan/vk_descriptor_pool.cpp 2020-01-03 17:34:30 -03:00
vk_descriptor_pool.h vk_descriptor_pool: Initial implementation 2020-01-01 16:44:06 -03:00
vk_device.cpp vk_device: Add entry to catch device losses 2019-12-19 16:31:33 -03:00
vk_device.h vk_device: Add entry to catch device losses 2019-12-19 16:31:33 -03:00
vk_image.cpp vk_image: Add an image object abstraction 2019-12-25 18:00:16 -03:00
vk_image.h vk_image: Avoid unnecesary equals 2019-12-30 13:28:23 -03:00
vk_memory_manager.cpp vk_memory_manager: Misc changes 2020-01-06 18:13:41 -03:00
vk_memory_manager.h vk_memory_manager: Misc changes 2020-01-06 18:13:41 -03:00
vk_resource_manager.cpp vk_reosurce_manager: Add assert for releasing fences 2019-12-19 16:31:34 -03:00
vk_resource_manager.h vk_resource_manager: Add entry to VKFence to test its usage 2019-12-19 16:31:34 -03:00
vk_sampler_cache.cpp maxwell_to_vk: Approach GL_CLAMP closer to the GL spec 2019-12-13 03:12:28 -03:00
vk_sampler_cache.h vk_sampler_cache: Remove unused includes 2019-07-07 13:40:36 -04:00
vk_scheduler.cpp vk_scheduler: Delegate commands to a worker thread and state track 2019-12-13 02:24:48 -03:00
vk_scheduler.h vk_scheduler: Delegate commands to a worker thread and state track 2019-12-13 02:24:48 -03:00
vk_shader_decompiler.cpp Shader_IR: Address Feedback 2020-01-04 14:40:57 -04:00
vk_shader_decompiler.h vk_shader_decompiler: Skip NDC correction when it is native 2019-12-19 16:24:45 -03:00
vk_staging_buffer_pool.cpp vk_staging_buffer_pool: Add a staging pool for temporary operations 2019-12-25 18:12:17 -03:00
vk_staging_buffer_pool.h vk_staging_buffer_pool: Initialize last epoch to zero 2019-12-29 19:19:43 -03:00
vk_stream_buffer.cpp vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache 2020-01-06 18:13:41 -03:00
vk_stream_buffer.h vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache 2020-01-06 18:13:41 -03:00
vk_swapchain.cpp vk_swapchain: Add support for swapping sRGB 2019-12-06 22:42:08 -03:00
vk_swapchain.h vk_swapchain: Add support for swapping sRGB 2019-12-06 22:42:08 -03:00