RFR (S): 8037344: Use the "next" field to iterate over fine remembered instead of using the hash table

Thomas Schatzl thomas.schatzl at oracle.com
Fri Mar 14 16:41:56 UTC 2014


Hi all,

  could I have reviews for this small change that cleans up the
HeapRegionRemSet-iterator?

The reason for this change is that in JDK-7182260 linked together all
PerRegionTable data structure (representing parts of the fine remembered
set) of a fine remembered set for a particular region. However the iterator still walks the hash table.

I took the opportunity to try to slightly improve the documentation of
the HeapRegionRemSetIterator (comments) as the change changes the
HeapRegionRemSetIterator interface already anyway.

A micro-benchmark that does nothing for every card indicates that
iterating of the PRTs got a lot faster (mainly due to the less
complicated check in HeapRegionRemSetIterator::fine_has_next() I assume) and is only a side-effect of the change.

CR:
https://bugs.openjdk.java.net/browse/JDK-8037344

Webrev:
http://cr.openjdk.java.net/~tschatzl/8037344/webrev/

Testing:
jprt, specjbb*, specjvm2008*, dacapo and other benchmarks having large
remembered sets.

Thanks,
  Thomas





More information about the hotspot-gc-dev mailing list