aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/buffer_cache/buffer_base.h
diff options
context:
space:
mode:
authorTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-29 05:46:58 -0400
committerTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-29 20:49:47 -0400
commit544977c085fe912818022acc36b6e4c05015a727 (patch)
tree4c5baeead627569f79bf8838ba89859ada99345d /src/video_core/buffer_cache/buffer_base.h
parent1c2ed2a072ba24a3d21a25dfa6cfcce1bf1ae905 (diff)
video_core: release already-signaled fences together
The fencing thread now takes every fence the host GPU has already passed (up to 64) and pops their texture and buffer downloads under one lock acquisition per cache, instead of one per fence (title 1 signals 5,000-7,000 a second; the GPU thread spun, slept and woke the fencing thread for each). Queries and operations keep their per-fence order. In the sampler, the GPU thread's spinning on the cache locks went from 7.0% to 5.5%; frame times are within the attract loop's run-to-run noise. EDEN_NX2_FENCE_BATCH=0 releases one fence at a time.
Diffstat (limited to 'src/video_core/buffer_cache/buffer_base.h')
0 files changed, 0 insertions, 0 deletions