Remove double allocations for types registry in domain
Open
@iboB is already working on this.
Since Apr 13, 2023.
performance
- Dominant language
- C++
- Stars
- 693
- Forks
- 49
- PR merge metrics
- No merged PRs in 30d
Description
Currently the types registry in the domain is a std::set<unique_ptr<type>>. Types are allocated as a single buffer of variable width, and thus cannot be stored by value. So, since, every node in std::set is allocated, we make two allocations per type.
The solution is to implement a custom set of type (BST or RBT) which would allow the type to also hold node information inside. Then there would be a single allocation per type.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.