Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
Implement mem balancer #724
Implement mem balancer #724
Changes from 24 commits
c31de17
1d5c692
92ce2cf
3f496eb
e3d98b0
cbf398b
05159f8
9053110
1a4d38d
39c038f
d5a9300
9aa0cba
a0dd8f1
1ef4e85
0e23ce0
dd29f39
8431b7a
c34c6b4
9eb4dbf
325e412
c3b0d6a
a55866b
fe3879c
21ac93a
5aa7023
b2f83c7
1b88d90
02d2962
c72eb5e
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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.
Not a problem for now. This is added before the
VMCollection::vm_release()
below, butplan_mut.release
happens afterVMCollection::vm_release()
. It's a bit weird this way, but it doesn't matter if the VM doesn't implementvm_release
.VMCollection::vm_release()
was created for VMs to do what our currentRefEnqueue
does to handle weak references. Existing bindings (except mmtk-openjdk in the lxr branch) do not use it, but with my new weak-ref API, the openjdk binding should use it instead of relying on mmtk-core'sRefEnqueue
work packet. I am considering moving this<C::VM as VMBinding>::VMCollection::vm_release();
statement to a dedicated work packets, because ref-enqueuing work does not depend on thePlan
instance or the release of thePlan
, and can therefore be parallelised.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.
If we can run some code when we open the
Release
bucket, that would be a good timing to run thison_gc_release()
method.