Integrated: 8328744: Parallel: Parallel GC throws OOM before heap is fully expanded

Zhengyu Gu zgu at openjdk.org
Mon Mar 25 13:07:27 UTC 2024


On Sat, 23 Mar 2024 14:10:45 GMT, Zhengyu Gu <zgu at openjdk.org> wrote:

> Parallel Scavenge may give up if it determines that current old gen does not have enough free space to accommodate estimated promotion size, and fall back to compact GC.
> 
> If compact GC can not reclaim enough space, this vicious cycle continues until OOM, without any intentions to expand old gen. We saw our production instances running hundreds compact GCs, while heaps were not fully utilized.
> 
> I believe when Scavenge determines if there is enough old space for the promotion, it should also consider the free space may be created by expanding the old gen.
> 
> Tests:
>    hotspot_gc, tier1 and tier2 with Parallel GC (fastdebug and release) on x86_64 and MacOSX

This pull request has now been integrated.

Changeset: 142c311e
Author:    Zhengyu Gu <zgu at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/142c311e3b9bd3f00edaa6ba7bcbc9fc285ee9b9
Stats:     5 lines in 1 file changed: 2 ins; 0 del; 3 mod

8328744: Parallel: Parallel GC throws OOM before heap is fully expanded

Reviewed-by: ayang, tschatzl

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

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


More information about the hotspot-gc-dev mailing list