Integrated: 8338912: CDS: Segmented roots array

Aleksey Shipilev shade at openjdk.org
Mon Sep 16 05:36:13 UTC 2024


On Wed, 4 Sep 2024 18:44:37 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> Attempt to drop the min region alignment with [JDK-8337828](https://bugs.openjdk.org/browse/JDK-8337828) highlights an interesting trouble. The roots array we are creating during the dump time can easily be larger than the min region alignment. We are currently "lucky" none of our tests hit this limit. AFAICS, about 128K classes would be enough to hit the current 1M min region alignment. Dropping the min region alignment to 256K starts to fail the test with "only" 30K classes, [JDK-8338856](https://bugs.openjdk.org/browse/JDK-8338856).
> 
> We can slice that heap root array, and thus untie the roots count from the min region alignment. I am submitting something that works, but this might not be the final form for it. I would like @iklam to poke holes in this approach :)
> 
> Additional testing:
>  - [x] macos-aarch64-server-fastdebug, `runtime/cds`
>  - [x] linux-aarch64-server-fastdebug, `all`
>  - [x] linux-x86_64-server-fastdebug, `all`

This pull request has now been integrated.

Changeset: dc00eb87
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/dc00eb87bc28ed5bf499af6835c3df474c454a41
Stats:     265 lines in 10 files changed: 162 ins; 44 del; 59 mod

8338912: CDS: Segmented roots array

Reviewed-by: ccheung, iklam

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

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


More information about the hotspot-runtime-dev mailing list