On Tue, 4 Mar 2025 08:26:10 GMT, Thomas Schatzl <tscha...@openjdk.org> wrote:

>> src/hotspot/share/gc/g1/g1CollectionSet.cpp line 310:
>> 
>>> 308:   verify_young_cset_indices();
>>> 309: 
>>> 310:   size_t card_rs_length = 
>>> _policy->analytics()->predict_card_rs_length(in_young_only_phase);
>> 
>> Why are we using a prediction here? Additionally, won't this prediction also 
>> include cards from the old gen regions in case of mixed gcs? How do we 
>> reconcile that when we are adding old gen regions to c-set?
>
>> Why are we using a prediction here?
> 
> Quickly checking again, do we have the actual count here from somewhere?
> 
>> Additionally, won't this prediction also include cards from the old gen 
>> regions in case of mixed gcs? How do we reconcile that when we are adding 
>> old gen regions to c-set?
> 
> The predictor contents changed to (supposedly) only contain cards containing 
> young gen references. See g1Policy.cpp:934:
> 
>     _analytics->report_card_rs_length(total_cards_scanned - 
> total_non_young_rs_cards, is_young_only_pause);

Fair, I missed that details on young RS have been removed.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23739#discussion_r1979022900

Reply via email to