-
Notifications
You must be signed in to change notification settings - Fork 334
Transfer BoolStorage between dual JVMs off-heap
#14459
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
Transfer BoolStorage between dual JVMs off-heap
#14459
Conversation
BoolStorage between dual JVMs off-heap
…sOfBoolStorage14449
| ImmutableBitSet validityMap, | ||
| int size, | ||
| boolean negated, | ||
| ColumnStorage<?> other) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| ColumnStorage<?> other) { | |
| ColumnStorage<?> proxy) { |
to make it clear?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| private static ColumnStorage<?> applyBoolStorage( | ||
| boolean keepValue, BoolStorage boolStorage, int checkedSize) { | ||
| BitSet values = boolStorage.getValues(); | ||
| BitSet values = boolStorage.getValues().cloneBitSet(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why do we need to clone here - I assume because it is an ImmutableBitSet now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Yes, to get a
BitSetfromImmutableBitSetone callscloneBitSet()which does a clone/copy. - that way we can guarantee consistency of
ImmutableBitSetinstances - we'll see if such a change has a detrimental effect on the performance later
- and then we can think of optimizing these additional copyings
|
Jaroslav Tulach reports a new STANDUP for yesterday (2025-12-10): Progress: .
|
|
Jaroslav Tulach reports a new STANDUP for yesterday (2025-12-11): Progress: .
|
- addresses #13804 by enabling _dual JVM mode_ for `Standard.Microsoft` library - with the help of #14459 - and #14471 - and #13851 - and #14436 - we shall be ready to try the _dual JVM mode_ for real! - needs f63430e changes in `Environment.get` to work in _dual JVM mode_ - removes most of no longer necessary #14037 changes - the size of `enso` goes down by **60MB** to 344MB - to be verified by #14475

Pull Request Description
Builder.makeLocal#14449 discovers thatBoolStorageis often crossing the dual JVM boundaryaddressOfData()andaddressOfValidity()toBoolStorageto speed the transfer upChecklist
Please ensure that the following checklist has been satisfied before submitting the PR:
Java,