RFR (S): 8049341: Parallelize clearing the next mark bitmap

Marcus Larsson marcus.larsson at oracle.com
Mon Oct 13 09:10:19 UTC 2014


On 01/09/14 10:53, Thomas Schatzl wrote:
> Hi Marcus,


>    I would prefer if the parallel iteration over the heap regions used
> the available G1CollectedHeap::heap_region_par_iterate_chunked()
> mechanism. Using it avoids imbalance of work due to not all regions
> being available.


> For this, the per-region claim value (HeapRegion::_claim) should
> probably be extracted from the HeapRegion (where it imo does not belong
> in the first place) because the concurrent bitmap clear may be
> interrupted by young GCs that use it too. Please add a separate
> refactoring CR for that.
> Then the pattern established by other parallel gc tasks that use
> heap_region_par_iterate_chunked() can be reused.

Fixed in separate issue [1].

> With the recent changes I asked this change to be updated with, this
> task unfortunately also got a lot harder - it includes JDK-8038423 that
> allows arbitrary regions to be not committed - including the
> corresponding bitmaps.


> Please use the vm.gc.compact.* tests from UTE. They are also included in
> the vm.gc.* testlists.

Tested without problems.

> Thanks,
>    Thomas

Thank you for looking into this!

New webrev:


[1]: https://bugs.openjdk.java.net/browse/JDK-8058298

More information about the hotspot-gc-dev mailing list