RFR: 8311248: Refactor CodeCache::initialize_heaps to simplify adding new CodeCache segments [v7]

Evgeny Astigeevich eastigeevich at openjdk.org
Mon Feb 19 20:24:54 UTC 2024


On Fri, 16 Feb 2024 10:23:06 GMT, Boris Ulasevich <bulasevich at openjdk.org> wrote:

>> These changes clean up the logic and the code of allocating codecache segments and add more testing of it, to open a door for further optimization of code cache segmentation.  The goal was to keep the behavior as close to the existing behavior as possible, even if it's not quite logical.
>> 
>> Also, these changes better account for alignment - PrintFlagsFinal shows the final aligned segment sizes, and the segments fill the ReservedCodeCacheSize without gaps caused by alignment.
>
> Boris Ulasevich has updated the pull request incrementally with one additional commit since the last revision:
> 
>   minor update. removed helper function as it caused many comments in the review

src/hotspot/share/code/codeCache.cpp line 250:

> 248:   }
> 249: 
> 250:   if (!profiled.set && non_profiled.set) {

I prefer to show explicitly with `else if` that it is an alternative case. This prevents from inserting any code between these two IFs.

src/hotspot/share/code/codeCache.cpp line 255:

> 253: 
> 254:   // Compatibility.
> 255:   // Override Non-NMethod default size if two other segments are set explicitly

I don't think we need this comment because it is obvious from IF.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/17244#discussion_r1494985940
PR Review Comment: https://git.openjdk.org/jdk/pull/17244#discussion_r1494986529


More information about the hotspot-dev mailing list