RFR: 8242038: G1: Lazily initialize RSHashTables

Stefan Johansson stefan.johansson at oracle.com
Mon Apr 6 19:31:06 UTC 2020


Hi Claes,

Thanks for optimizing G1 startup.

On 2020-04-02 18:07, Claes Redestad wrote:
> Hi,
> 
> make RSHashTable initialization lazy by replacing the initial table for
> each region with a shared empty sentinel. Using an empty_table might be
> a bit tricky/"clever", but it ensures logic and lookups behave properly
> before we add a card to a regions RS.
> 
> Initialization to a unique table then piggy-backs on the test that
> checks whether we need to expand the RSHashTable, so GC overhead should
> be neutral (or even an improvement in cases where most PRTs stay empty).
> 
> Webrev: http://cr.openjdk.java.net/~redestad/8242038/open.00/
Looks good,
StefanJ

> Bug:    https://bugs.openjdk.java.net/browse/JDK-8242038
> 
> Testing: tier1-3, verified a small improvement to startup
> 
> Thanks!
> 
> /Claes



More information about the hotspot-gc-dev mailing list