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

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

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.


More information about the hotspot-gc-dev mailing list