RFR: 8329203: Parallel: Investigate Mark-Compact for Full GC to decrease memory usage

Roman Kennke rkennke at openjdk.org
Mon May 6 13:58:54 UTC 2024


On Mon, 6 May 2024 10:31:48 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

> Refactor Parallel full-gc to use the same algorithm (mark-compact) as Serial and G1 full-GC. This removes the obj-end bitmap. When GC threads are few, the old implementation can be more efficient because it requires fewer heap iterations. The new full-GC implementation, on the other hand, is more scalable because it introduces more phases (`forward_to_new_addr` and `adjust_pointers`) that can partition work effectively.
> 
> The diff is rather large, so reading the new code directly from `invoke_no_policy` is probably easier.
> 
> Test: tier1-6; some improvement in Dacapo-h2, CacheStresser, but no difference in specjbb2015, specjvm2008.

Ok, I see. That sounds reasonable.

Have you also run the micros` test/micro/org/openjdk/bench/vm/gc/systemgc/` on it?

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

PR Comment: https://git.openjdk.org/jdk/pull/19101#issuecomment-2096080255


More information about the hotspot-gc-dev mailing list