RFR: 8374622: StressIncrementalInlining should also randomize the processing order
Marc Chevalier
mchevalier at openjdk.org
Fri Jan 9 08:41:54 UTC 2026
On Thu, 8 Jan 2026 18:41:45 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:
>> As it says: randomize the order the late inlines are processed, and slightly factor it with macro nodes.
>>
>> I didn't add shuffle to the `GrowableArray` class since it seems a bit method specialized method (and it seems it'd be a controversial change to a widely use class), it would make `GrowableArray` depends on `Compile` for random number generation (or require a callback, for instance, giving a non-trivial signature and usage), I couldn't find other shuffling of such an object.
>> There is also shuffling of `UniqueNodeList` (for `StressIGVN`), but it seems hard to unify: access and length are not written quite the same, it would probably be not simpler than duplicating the implem (which is simple, so it's fine in my opinion).
>>
>> Thanks,
>> Marc
>
> src/hotspot/share/opto/compile.cpp line 2196:
>
>> 2194:
>> 2195: if (StressIncrementalInlining) {
>> 2196: shuffle_late_inlines();
>
> It shuffles initial list, but doesn't have any effects on elements added during incremental inlining. Do we want to shuffle them as well?
Good point. I don't see why we wouldn't want that.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/29110#discussion_r2675322174
More information about the hotspot-compiler-dev
mailing list