RFR: 8294850: Make rs length/pending card predictors dependent on gc phase [v2]

Thomas Schatzl tschatzl at openjdk.org
Wed Oct 12 10:44:15 UTC 2022


On Wed, 12 Oct 2022 09:32:22 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

> `diff/pending_cards/rs_length` are more or less duplicated for young/mixed. I wonder if it's cleaner to encapsulate them in one data structure.

I also considered this, but `rs_length_diff` will go away completely with other changes after the refinement ones, not sure if `pending_cards` separation will stay with Kim's changes. Then only `rs_length` is left.

There are a few others though already. What about doing that separately as cleanup?

> src/hotspot/share/gc/g1/g1Analytics.cpp line 328:
> 
>> 326: 
>> 327: size_t G1Analytics::predict_pending_cards(bool for_young_gc) const {
>> 328:   if (for_young_gc || !enough_samples_available(_young_pending_cards_seq)) {
> 
> Why `_young_pending_cards_seq`? I'd expect `_mixed_rs_length_seq` just to match its neighbor.

Typo from breaking up the big patch I had. Good catch! The correct sequence is `_mixed_pending_cards_seq` though.

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

PR: https://git.openjdk.org/jdk/pull/10650



More information about the hotspot-gc-dev mailing list