RFR: 8275055: Improve HeapRegionRemSet::split_card() [v2]

Stefan Johansson sjohanss at openjdk.java.net
Wed Oct 13 19:46:47 UTC 2021


On Wed, 13 Oct 2021 19:42:15 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:

>> Hi all,
>> 
>>   can I have reviews for this small change that improves HeapRegionRemSet::split_card() by reducing the number of (direct and indirect) memory accesses for it. It is hard to actually measure improvements because it's only called in concurrent code. So no particular improvements measured.
>> 
>> It also prepares that method for virtualizing the remembered set containers, allowing arbitrarily large heap region sizes [JDK-8275056](https://bugs.openjdk.java.net/browse/JDK-8275056). This change is required then because the splitting of a card index into "region" and "card within region" should not be dependent on *heap regions*.
>> 
>> Testing: gha, gc/g1 local testing.
>> 
>> Thanks,
>>   Thomas
>
> Thomas Schatzl has updated the pull request incrementally with one additional commit since the last revision:
> 
>   sjohanss review

Looks good.

src/hotspot/share/gc/g1/g1CardSetContainers.hpp line 181:

> 179:   }
> 180: 
> 181:   // Maximum size of the entries of any G1CardSetContainer in bits.

This first can be removed now.

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

Marked as reviewed by sjohanss (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/5895



More information about the hotspot-gc-dev mailing list