RFR: 8309404: Parallel: Process class loader data graph in parallel in young gc

Guoxiong Li gli at openjdk.org
Sat Jun 3 10:04:34 UTC 2023


Hi all,

This patch parallelizes the process of the class loader data graph in young gc.

The class `ClassLoaderData` has a field `_claim` to avoid applying oop closure more than once 
and the method `ClassLoaderData::oops_do` can check if the CLD had been claimed.
The parallel full gc has already used them in `MarkFromRootsTask::work` and `PSAdjustTask::work`.

But I don't have experience to test/verify the performance improvement of the GC.
If this patch needs such test data before integrating, please guide and help me here.

Thanks for the review and guidance.

Best Regards,
-- Guoxiong

-------------

Commit messages:
 - JDK-8309404

Changes: https://git.openjdk.org/jdk/pull/14297/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14297&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8309404
  Stats: 21 lines in 3 files changed: 11 ins; 9 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/14297.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14297/head:pull/14297

PR: https://git.openjdk.org/jdk/pull/14297


More information about the hotspot-gc-dev mailing list