World Garbage Collection / Compaction #4781
Labels
A-ECS
Entities, components, systems, and events
C-Feature
A new feature, making something new possible
C-Performance
A change motivated by improving speed, memory usage or compile times
What problem does this solve or what need does it fill?
Resources allocated to a
World
are currently never reclaimed (exceptEntity
ID space`). This includes memory allocated in BlobVec / Column, empty archetypes, empty tables, etc. These unused resources may add extra work over time. Processes that scale with the number of archetypes, tables, or entities will grow slower as more varied gameplay situations are encountered.What solution would you like?
Either a manual
World::vacuum
that uses exclusive access to reorder and collect unused memory and ID space, or some behind the scenes book-keeping that gradually collects unused resources.What alternative(s) have you considered?
The text was updated successfully, but these errors were encountered: