RFR: Add generations to freeset [v5]

Kelvin Nilsen kdnilsen at openjdk.org
Tue Apr 18 23:21:37 UTC 2023


On Thu, 13 Apr 2023 16:19:15 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:

>> src/hotspot/share/gc/shenandoah/shenandoahFreeSet.hpp line 48:
>> 
>>> 46:   size_t _mutator_leftmost, _mutator_rightmost;
>>> 47:   size_t _collector_leftmost, _collector_rightmost;
>>> 48:   size_t _old_collector_leftmost, _old_collector_rightmost;
>> 
>> Would suggest encapsulation in an interval struct with left & right for each of the three intervals.
>> 
>> At that point, it would make sense to talk about whether these intervals can overlap (because of interspersing of the range of indices in a specific subset), and whether there are invariants/properties of the union of the intervals that can be checked as invariants after these sub-intervals are adjusted.
>
> I see that some invariants are checked in `assert_bounds` method. A high-level articulation of those invariants before that method would be useful.

I'm adding comments to clarify the invariants.

-------------

PR Review Comment: https://git.openjdk.org/shenandoah/pull/250#discussion_r1170657172


More information about the shenandoah-dev mailing list