Per-cluster GPU data allocation
Categories
(Core :: Graphics: WebRender, enhancement, P3)
Tracking
()
People
(Reporter: nical, Unassigned)
References
(Blocks 1 open bug)
Details
Currently each primitive requests some data to be allocated independently. We manage the requests and expiration of these on a per-primitive basis.
Instead we could for each cluster compute the amount of GPU data we need, bulk-request/invalidate at that level, and sub-allocate primitive data within a cluster's gpu data with a simple bump allocator. We would still be able to send fine-grained updates for primitive data within a cluster.
The main motivation behind this is to reduce the overhead of managing gpu data lifetime during frame building.
A nice side-effect is that we'd probably be able to process primitives during frame building without needing mutable access to the GPU cache which currently prevents parallelization.
Updated•2 years ago
|
Reporter | ||
Comment 1•5 months ago
|
||
This makes less sense now that we are moving away from the gpu cache.
Description
•