[9] RFR(S/M): 8166377: is_compiled_by_jvmci hot in some profiles - improve nmethod compiler type detection
Nils Eliasson
nils.eliasson at oracle.com
Thu Oct 6 08:11:51 UTC 2016
sure,
webrev: http://cr.openjdk.java.net/~neliasso/8166377/webrev.04/
Regards,
Nils
On 2016-10-05 17:46, Vladimir Kozlov wrote:
> Can you place new files in vm/compiler/ directory?
>
> Thanks,
> Vladimir
>
> On 10/5/16 3:30 AM, Nils Eliasson wrote:
>> Hi,
>>
>> I have moved compilerType and compLevel to a new
>> compilerDefinitions.hpp/cpp files.
>>
>> http://cr.openjdk.java.net/~neliasso/8166377/webrev.03/
>>
>> Regards,
>> Nils Eliasson
>>
>> On 2016-10-05 09:43, Nils Eliasson wrote:
>>> Putting them in abstract compiler caused an include hell, and all the
>>> comp level defintions where already in globalDefinitions (probably by
>>> the same reason).
>>>
>>> I'll give it a second try putting them in abstractCompiler. One other
>>> alternative is having a separate compilerDefinitions file.
>>>
>>> Regards,
>>> Nils
>>>
>>> On 2016-10-04 19:11, Christian Thalinger wrote:
>>>>
>>>>> On Oct 4, 2016, at 3:54 AM, Nils Eliasson <nils.eliasson at oracle.com>
>>>>> wrote:
>>>>>
>>>>>
>>>>> Hi,
>>>>>
>>>>> Please review this change. It touches many files but is not complex.
>>>>>
>>>>> Description:
>>>>> We have seen a performance regression in some benchmarks where
>>>>> nmethod::is_compiled_by_jvmci() has been hot. That method is used is
>>>>> a workaround in CompiledMethod::is_deopt_entry(). The workaround
>>>>> remains for the moment, this fix makes it less costly.
>>>>>
>>>>> Summary:
>>>>> This fix removes the compiler reference from the codeblobs and
>>>>> instead performs the compiler type check on a constant, this removes
>>>>> a double dereference when checking the compiler. I also took the
>>>>> time to properly add the compiler types to the constructors.
>>>>>
>>>>>
>>>>> bugs: https://bugs.openjdk.java.net/browse/JDK-8166377
>>>>> webrev: http://cr.openjdk.java.net/~neliasso/8166377/
>>>>> <http://cr.openjdk.java.net/%7Eneliasso/8166377/>
>>>>
>>>> I don’t like that all the CompilerType stuff is now in
>>>> globalDefinitions. Why did you move it there?
>>>>
>>>>>
>>>>> Regards,
>>>>> Nils Eliasson
>>>>
>>>
>>
More information about the hotspot-compiler-dev
mailing list