Usually allocator being a bottleneck only concerns few types in your code. In that case, it's almost always better to use `ptr object` and create a specific scheme like an object pool or memory pool.
A generic solution will likely not address specific use-cases, might be overcomplicated to handle everyone's specific edge cases and be a maintenance nightmare.
