RFR(S) : 8238049 : TieredCompilation shouldn't be re-enabled if CompilationMode is high-only

Igor Ignatyev igor.ignatyev at oracle.com
Thu Jan 30 03:45:01 UTC 2020


ok... then I'm withdrawing this RFR, closing 8238049 as NAI and will fix 8237953 differently.

-- Igor

> On Jan 29, 2020, at 6:09 PM, Igor Veresov <igor.veresov at oracle.com> wrote:
> 
> No, that’s not the case. -XX:CompilationMode=high-only switches on a mode within the tiered policy that tries to mimic “-XX:-TieredCompilation”.
> So that instead of turning tiered off we can just use -XX:CompilationMode=high-only.  It actually has some tiers, since it supports AOT. 
> 
> Long term goal is to deprecate the non-tiered policy. When that happens -XX:-TieredCompilation will just imply -XX:CompilationMode=high-only and there will be just one compilation policy (tiered). So, in preparation to this (especially with new tests) we should probably start using -XX:CompilationMode=high-only instead of -XX:-TieredCompilation.
> 
> 
> igor
> 
> 
> 
>> On Jan 29, 2020, at 3:52 PM, Igor Ignatyev <igor.ignatyev at oracle.com <mailto:igor.ignatyev at oracle.com>> wrote:
>> 
>> 
>> 
>>> On Jan 29, 2020, at 1:10 PM, Igor Veresov <igor.veresov at oracle.com <mailto:igor.veresov at oracle.com>> wrote:
>>> 
>>> Setting CompilationMode actually requires tiered to be on in order to be meaningful. It's a mode of tiered compilation. 
>> I'd not call 'CompilationMode=high-only' a mode of tiered compilation, as there are no tiers and most of machinery of tiered compilation policies is useless.
>> 
>>> The ultimate goal is to remove the old compilation policies, so long term, assume that tiered is always on.
>>> It seems to me that the command line you quoted is actually working as intended. Does it cause any problems?
>> 
>> in a sense, I was trying to fix 8237953[1,2], where vmTestbase/jit/tiered/Test.java fails w/ graal enabled. the test checks that a tiered only flag has no affect when tiered compilation is disabled, but w/ JVMCI compiler being enabled there is no way to get tiered compilation really disabled, and from end users’ perspective, I’d expect tiered not being reenabled when CompilationMode is high-only and the warning message (Turning on tiered compilation and disabling intermediate compilation levels instead) is irrelevant. 
>> 
>> 
>> [1] https://bugs.openjdk.java.net/browse/JDK-8237953 <https://bugs.openjdk.java.net/browse/JDK-8237953>
>> [2] https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2020-January/036863.html <https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2020-January/036863.html>
>> 
>> — Igor
>> 
>>> 
>>> 
>>> igor
>>> 
>>> 
>>> 
>>>> On Jan 28, 2020, at 2:52 PM, Igor Ignatyev <igor.ignatyev at oracle.com <mailto:igor.ignatyev at oracle.com>> wrote:
>>>> 
>>>> http://cr.openjdk.java.net/~iignatyev/8238049/webrev.00/ <http://cr.openjdk.java.net/~iignatyev/8238049/webrev.00/>
>>>>> 9 lines changed: 3 ins; 2 del; 4 mod;
>>>> 
>>>> 
>>>> Hi all,
>>>> 
>>>> could you please review the small and trivial-ish patch?
>>>> from JBS:
>>>>> currently, if you run java w/ -XX:-TieredCompilation -XX:+UseJVMCICompiler, TieredCompilation will be set back to true and change CompilationMode from "default" to "high-only-quick-internal" (w/o actually changing the value of the flag though). if you run it w/ '-XX:-TieredCompilation -XX:+UseJVMCICompile -XX:CompilationMode=high-only', TieredCompilation will be changed to true, but CompilationMode will remain high-only, so effectively it just needlessly enables TieredCompilation.
>>>> 
>>>> the patch not only leaves TieredCompilation disabled when CompilationMode is high-only, but also changes the actual value of CompilationMode flag, so it will be properly reported.
>>>> 
>>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8238049 <https://bugs.openjdk.java.net/browse/JDK-8238049>
>>>> webrev: http://cr.openjdk.java.net/~iignatyev/8238049/webrev.00/ <http://cr.openjdk.java.net/~iignatyev/8238049/webrev.00/>
>>>> testing: manual by java -XX:+PrintFlagsFinal w/ {-TieredCompilation,+TieredCompilation}x{CompilationMode=default,CompilationMode=high-only,""}
>>>> 
>>>> Thanks,
>>>> -- Igor



More information about the hotspot-compiler-dev mailing list