RFR (S): 8148099: Improve memory access to FromCardCache during GC (original) (raw)

Thomas Schatzl thomas.schatzl at oracle.com
Thu Mar 31 10:25:49 UTC 2016


Hi all,

can I have reviews for this change that improves memory access to the from card cache during the GC pauses?

Instead of having an array that is #threads times #regions, use a #regions times #threads layout. This changes the access pattern during clearing the entries for a particular region when it is freed from many single accesses with a large stride to linear memory writes.

This statistically significantly improves performance of the entire affected phase (free cset) on large machines (large # of threads, and particularly many regions in the collection set).

During the mutator phase there is no difference (it is lost in the noise), as all accesses during that time are single-element read/write anyway.

CR: https://bugs.openjdk.java.net/browse/JDK-8148099 Webrev: http://cr.openjdk.java.net/~tschatzl/8148099/webrev/ Testing: jprt, vm.gc, some internal micro-benchmarks. Running for a long time (long before the CR has been filed) on many internal builds and benchmark runs.

Thanks, Thomas



More information about the hotspot-gc-dev mailing list