RFR: 8376125: Out of memory in the CDS archive error with lot of classes [v9]
Ioi Lam
iklam at openjdk.org
Wed Feb 18 09:05:11 UTC 2026
On Tue, 17 Feb 2026 21:21:04 GMT, Xue-Lei Andrew Fan <xuelei at openjdk.org> wrote:
>> src/hotspot/share/cds/archiveBuilder.cpp line 327:
>>
>>> 325: // On 32-bit: use 256MB + AOT code size due to limited virtual address space.
>>> 326: size_t buffer_size = LP64_ONLY(AOTCompressedPointers::MaxMetadataOffsetBytes)
>>> 327: NOT_LP64(256 * M + AOTCodeCache::max_aot_code_size());
>>
>> When `CompactObjectHeaders` are enabled, we should reserve a smaller size to avoid assertion.
>
> The AOTCompressedPointers::MaxMetadataOffsetBytes now is set to 3.5GB. I think the size is OK if CompactObjectHeaders is enabled.
I see. I think we should also mention this in aotCompressedPointers.hpp:
// ...to address up to ~32GB on 64-bit platforms. We currently limit the MaxMetadataOffsetBytes
// to about 3.5 GB to be compatible with +CompactObjectHeaders.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/29494#discussion_r2821155717
More information about the serviceability-dev
mailing list