RFR: 8368006: Parallel: Skip full regions in dense prefix during Full GC
Guoxiong Li
gli at openjdk.org
Fri Sep 19 14:40:58 UTC 2025
On Thu, 18 Sep 2025 18:00:18 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:
> Implement skip-full-region optimization for filler related operations on dense-prefix. I constrained the filler-creation task to a single worker for simpler implementation. During the compaction phase, the most expensive part is almost always the non-dense-prefix part, so letting the rest of workers to start with the expensive tasks seems sensible.
>
> Synthetic bms shows good reduction in full-gc time in debug build; perf-neutral for other bms (specjvm2008,specjbb2015) in release build.
>
> Test: tier1-5
Changes requested by gli (Reviewer).
src/hotspot/share/gc/parallel/psParallelCompact.cpp line 1680:
> 1678: if (worker_id == 0) {
> 1679: auto start = Ticks::now();
> 1680: PSParallelCompact::fill_dead_objs_in_dense_prefix(worker_id, _num_workers);
The method `PSParallelCompact::fill_dead_objs_in_dense_prefix` doesn't need the arguments `worker_id` and `num_workers` now.
-------------
PR Review: https://git.openjdk.org/jdk/pull/27369#pullrequestreview-3244908218
PR Review Comment: https://git.openjdk.org/jdk/pull/27369#discussion_r2362920705
More information about the hotspot-gc-dev
mailing list