Skip to content

Conversation

@tianleq
Copy link
Collaborator

@tianleq tianleq commented Nov 4, 2021

mmtk-core is ready for review. There is an issue in fast path allocation in the binding and ci failed because of it. I am still looking into that.

Copy link
Member

@qinsoon qinsoon left a comment

Choose a reason for hiding this comment

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

Thanks for the PR. Apart from introducing the mark compact plan, this PR also introduces a few necessary changes for the MC plan. However, I find the design for those needs to be improved.

  • GC header for certain policies/allocators (GC header is applied to plans in the PR).
  • Alloc bit flag for allocators (Alloc bit flag is implemented as a new allocator type in the PR).
  • Two extra methods in the Collection trait (the new methods are unclear in the PR).

I would suggest addressing those issues first. There are also a few changes needed for the mark compact plan itself. I haven't reviewed the binding PR yet. I will review it once the core PR is ready (possibly I will need to update the binding for JikesRVM and V8 as well - depending on the changes in this PR).

Copy link
Member

@qinsoon qinsoon left a comment

Choose a reason for hiding this comment

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

This PR looks much better now. Apart from some minor comments, the only major change I suggest is to possibly remove get_extra_header_bytes() from Plan and remove gc_extra_header from PlanConstarints. Please see the inline comments.

pub moves_objects: bool,
pub gc_header_bits: usize,
pub gc_header_words: usize,
pub gc_extra_header_words: usize,
Copy link
Member

Choose a reason for hiding this comment

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

Please refer to the comments on get_extra_header_bytes().

@qinsoon
Copy link
Member

qinsoon commented Nov 12, 2021

When this PR is ready, I will work on the JikesRVM/V8 change for the PR.

Copy link
Member

@qinsoon qinsoon left a comment

Choose a reason for hiding this comment

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

LGTM. It is a pretty clean implementation for mark compact. Thanks for the PR.

@qinsoon
Copy link
Member

qinsoon commented Nov 25, 2021

@tianleq Can you check and reply to my last two comments for this PR?

I have updated the JikesRVM binding (mmtk/mmtk-jikesrvm#94) and the V8 binding (mmtk/mmtk-v8#48) for this PR. I assume once the comments are resolved, we can merge this PR.

@qinsoon qinsoon merged commit 4bd6ca8 into mmtk:master Nov 29, 2021
@k-sareen k-sareen mentioned this pull request Dec 9, 2021
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.

2 participants