RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v5]

Thomas Stuefe stuefe at openjdk.org
Fri Aug 30 07:45:20 UTC 2024


On Fri, 30 Aug 2024 07:27:45 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:

>> src/hotspot/share/gc/shared/gcForwarding.cpp line 37:
>> 
>>> 35:   size_t max_narrow_heap_size = right_n_bits(NumLowBitsNarrow - Shift);
>>> 36:   if (UseCompactObjectHeaders && max_heap_size > max_narrow_heap_size * HeapWordSize) {
>>> 37:     FLAG_SET_DEFAULT(UseCompactObjectHeaders, false);
>> 
>> Maybe a log-info/warning would be nice.
>
> Yes. This silent setting of UseCompactObjectHeaders ended up hiding why we got CDS failures. I would also suggest that we change this to FLAG_SET_ERGO.

Seems we run all into the same thoughts :)

I added

Suggestion:

    FLAG_SET_DEFAULT(UseCompactObjectHeaders, false);
    warning("Compact object headers require a java heap size smaller than %zu (given: %zu). "
                 "Disabling compact object headers.", max_narrow_heap_size * HeapWordSize, max_heap_size);

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20677#discussion_r1738127194


More information about the serviceability-dev mailing list