diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-11-01 08:43:42 -0500 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-11-01 08:43:42 -0500 |
| commit | 6d4c595634f85376e0600f67162347426e74944d (patch) | |
| tree | 990258f195208415d7658787d898f2b15ddf444f /src/video_core/buffer_cache/buffer_base.h | |
| parent | adae7635708e155d967e84d7ad84bf63c5203409 (diff) | |
vulkan: reuse ASTC transcode decode images
The RGBA8 image an ASTC texture is decoded into before BC1/BC3
compression was made for each texture (263 us) and freed once the GPU
was past it. Once the GPU is done with one it now decodes the next
texture of the same shape: title 1's title screen decodes dozens of
textures a frame, mostly of a few shapes. Free ones are kept up to
256 MiB and destroyed after 60 unused frames.
Taking them from VMA's shared blocks instead was faster (90 us), but
freeing dozens a frame there left ~1 GB of those blocks unused. Against
that, Mario Kart World's title screen over 10 minutes: VRAM in use 6.34
-> 5.90 GB on average, peak 6.99 -> 6.45 GB.
Diffstat (limited to 'src/video_core/buffer_cache/buffer_base.h')
0 files changed, 0 insertions, 0 deletions
