Skip to content

[JAVA] Reduce heap usage(Phase 2) - memory footprint in AllocationManager.BufferLedger #17638

@asfimport

Description

@asfimport

Currently we instantiate IdentityHashMap while creating an instance of AllocationManager which is in turn is part of BufferLedger

By default IdentityHashMap allocates an array of 64 objects which is 272 bytes of heap from the start. In reality a lot of ArrowBuf(s) will not need that many entries in the map, since they want share BufferAllocators with many other BufferLedgers.

Suggestion is to come up with different collection to save heap w/o sacrificing much of the performance (if any).

I have a suggestion in mind that I will share via a doc. later today

Reporter: Yuliya Feldman / @yufeldman
Assignee: Yuliya Feldman / @yufeldman

Related issues:

PRs and other links:

Note: This issue was originally created as ARROW-1627. Please see the migration documentation for further details.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions