[FEA] Improve performance of Java pinned memory pool at scale
Open
feature request
Java
Spark
- Dominant language
- C++
- Stars
- 9.8k
- Forks
- 1.1k
- Avg merge
- 3d 6m
- Merged PRs (30d)
- 278
Description
**Is your feature request related to a problem? Please describe.**
We have seen cases where allocating many thousands of pinned memory buffers causes very poor performance in the Java `PinnedMemoryPool` allocator. That allocator currently performs a linear coalesce scan on free which performs decently when there aren't many allocations but does not scale well.
**Describe the solution you'd like**
The pinned memory pool should minimally use a logarithmic, heap-like algorithm for managing the address space, or possibly a bucketing technique with hashing.
Contributor guide
Assessment
This issue has not been assessed yet.