RFR: 8234863: Increase default value of MaxInlineLevel
Volker Simonis
volker.simonis at gmail.com
Wed Feb 19 09:25:40 UTC 2020
Hi Claes,
we've been experimenting with the increased MaxInlineLevel and seen
performance improvements on a variety of benchmarks. Unfortunately
we've also seen some considerable performance regressions on single
benchmarks. While we still have to analyze these outliers in more
detail, one assumption is that they may be caused because we are
running into the MaxNodeLimit earlier now.
Have you seen such effects during your experiments and have you
experimented with increasing MaxNodeLimit along with MaxInlineLevel?
I just saw that we already increase MaxNodeLimit by a factor of 3 if
we encounter an invokedynamic bytecode [1] and Shenandoah also
increases it globally by a factor of 3 [3]. So this means that when
running with Shenandoah and compiling a method with invokedynamic
we'll already use nine times the default of MaxNodeLimit (which is
80000).
Thank you and best regards,
Volker
[1] http://hg.openjdk.java.net/jdk/jdk/file/b0417eb55b11/src/hotspot/share/opto/doCall.cpp#l494
[2] http://hg.openjdk.java.net/jdk/jdk/file/b0417eb55b11/src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp#l199
On Sun, Dec 8, 2019 at 10:42 PM Claes Redestad
<claes.redestad at oracle.com> wrote:
>
> Hi,
>
> increasing MaxInlineLevel can substantially improve performance in some
> benchmarks[1], and has been reported to help applications implemented in
> scala in particular.
>
> There is always some risk of regressions when tweaking the default
> inlining settings. I've done a number of experiments to ascertain that
> the effect of increasing this on a wide array of benchmarks. With 15 all
> benchmarks tested are show either neutral or positive results, with no
> observed regression w.r.t. compilation speed or code cache usage.
>
> Webrev: http://cr.openjdk.java.net/~redestad/8234863/open.00/
>
> Thanks!
>
> /Claes
>
> [1] One http://renaissance.dev sub-benchmark improve by almost 3x with
> an increase from 9 to 15.
More information about the hotspot-compiler-dev
mailing list