Open
Description
In Vulkan, it is valid to keep certain objects (like textures) in memory and let them run out of date. The driver might then re-allocate the memory and move it from the VRAM to the DRAM. Vulkan Memory Allocator has builtin support for this scenario. So instead of relying on custom streaming, we should implement support for lost allocations. Instead of counting active references, a streaming-implementation could then be a chain of fallbacks:
- When required, transfer a resource to the VRAM.
- When not required any longer, VMA may move the resource out of VRAM.
- If the resource is requested again, try to transfer it back to the VRAM (fail if not possible)
- If the DRAM pressure is too high, release lost allocations.
Metadata
Metadata
Assignees
Projects
Status
Backlog