Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sparse global order reader: initial memory budget improvements. #2413

Merged

Conversation

KiterLuc
Copy link
Contributor

Add memory management to Fragment Metadata for rtrees and tile offsets
loading. A budget cap is set on the array by the reader, when we reach
it, it fails the operations. Also keep track of how much data is
currently used for future memory budget calculations.

Freeing rtrees and tile overlap after computing relevant tiles if a
subarray is set.

Move away from using a bitset to determine the next tiles to load and
using a list of tile ranges instead. This is better since for most of
our use cases when having a subarray, the number of tiles is low.


TYPE: IMPROVEMENT
DESC: Sparse global order reader: initial memory budget improvements.

@shortcut-integration
Copy link

@KiterLuc KiterLuc force-pushed the lr/sp-global-order-reader-memory-improvements/ch8912 branch from 5b10f51 to f05cd18 Compare July 21, 2021 16:52
Copy link
Member

@stavrospapadopoulos stavrospapadopoulos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor comments.

tiledb/sm/fragment/fragment_metadata.cc Outdated Show resolved Hide resolved
tiledb/sm/storage_manager/storage_manager.cc Show resolved Hide resolved
Add memory management to Fragment Metadata for rtrees and tile offsets
loading. A budget cap is set on the array by the reader, when we reach
it, it fails the operations. Also keep track of how much data is
currently used for future memory budget calculations.

Freeing rtrees and tile overlap after computing relevant tiles if a
subarray is set.

Move away from using a bitset to determine the next tiles to load and
using a list of tile ranges instead. This is better since for most of
our use cases when having a subarray, the number of tiles is low.

---
TYPE: IMPROVEMENT
DESC: Sparse global order reader: initial memory budget improvements.
@KiterLuc KiterLuc force-pushed the lr/sp-global-order-reader-memory-improvements/ch8912 branch from f05cd18 to 60f19ef Compare July 24, 2021 23:10
@stavrospapadopoulos stavrospapadopoulos merged commit 5ba08f6 into dev Jul 25, 2021
@stavrospapadopoulos stavrospapadopoulos deleted the lr/sp-global-order-reader-memory-improvements/ch8912 branch July 25, 2021 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants