-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Labels
kind: refactorMaking existing function faster or nicerMaking existing function faster or nicertype: enhancementNew feature or requestNew feature or requesttype: tracking
Description
This is a meta issue to describe the long-ish term vision for wgpu-core's resource management and track the steps towards it.
Registries and IDs
Internally, all wgpu-core resources are stored behind Arc
s. Externally, they are exposed as non-clonable structs containing an ID which conceptually corresponds to a single reference to the Arc
of a resource.
The goal
Instead of having wgpu public types wrap a non-clonabe ID, we would like them to wrap the Arc
to the internal resource directly (and be clonable).
TODO
- Resolve cycles in wgpu-core using weak references #5120
- (Firefox): Move the
wgpu-core
part of command recording out of the content process - Remove remaining internal use of the IDs.
- Make wgpu-core less generic (brainstorm) #5124
- (Firefox): Stop providing the IDs during resource creation and do ID mapping in the gecko-side bindings.
- Move logic present in the
Global
's methods into methods on wgpu-core objects - Rewrite the record-reply functionality Add back support for tracing (
trace
feature) towgpu
#5974 - Remove the registries
Other Related Issues
teoxoy, rajveermalviya, kocsis1david, NyxAlexandra, Vecvec and 3 moreudoprog, Imberflur, NyxAlexandra, lvyitian and reneleonhardt
Metadata
Metadata
Assignees
Labels
kind: refactorMaking existing function faster or nicerMaking existing function faster or nicertype: enhancementNew feature or requestNew feature or requesttype: tracking
Type
Projects
Status
Todo