[vk] Introduce Ring Buffers for Uniform Buffer #2698

Open
Shinmegumi wants to merge 2 commits from buffercache into master
Owner

Create 3 ring buffers which rotates between buffers each frame to avoid GPU/CPU conflicts
BindMappedUniformBuffer first tries to allocate from the ring buffer and falls back to staging pool only if allocation is too large.
Note to testers:- please test the performance since it is primarily a performance optimization and also look for visual bugs.

Create 3 ring buffers which rotates between buffers each frame to avoid GPU/CPU conflicts BindMappedUniformBuffer first tries to allocate from the ring buffer and falls back to staging pool only if allocation is too large. Note to testers:- please test the performance since it is primarily a performance optimization and also look for visual bugs.
Shinmegumi added 2 commits 2025-10-08 19:12:12 +02:00
Create 3 ring buffers which rotates between buffers each frame to avoid GPU/CPU conflicts
BindMappedUniformBuffer first tries to allocate from the ring buffer and falls back to staging pool only if allocation is too large.
Note to testers:- please test the performance since it is primarily a performance optimization and also look for visual bugs.
Update src/video_core/renderer_vulkan/vk_buffer_cache.cpp
Some checks failed
eden-license / license-header (pull_request) Failing after 28s
4f9f90d9b4
MaranBr force-pushed buffercache from 4f9f90d9b4 to 8f11ce89e3 2025-10-10 02:09:09 +02:00 Compare
Shinmegumi changed title from WIP: [vk] Introduce Ring Buffers for Uniform Buffer to [vk] Introduce Ring Buffers for Uniform Buffer 2025-10-10 02:22:35 +02:00
requested reviews from CamilleLaVey, Maufeat, crueter, MrPurple666, MaranBr, Lizzie 2025-10-10 02:22:35 +02:00
Some checks failed
eden-license / license-header (pull_request) Failing after 29s
Required
Details
This pull request doesn't have enough approvals yet. 0 of 2 approvals granted.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin buffercache:buffercache
git checkout buffercache
Sign in to join this conversation.
No description provided.