Does HotSpot ever stop profiling?
David Holmes
david.holmes at oracle.com
Mon Sep 16 23:19:48 UTC 2019
On 17/09/2019 9:05 am, Stefan Reich wrote:
> Hey, thanks for your answer.
>
> So a method is normally only once C2-compiled. How does inlining fit into
> the picture? You start from the method body and inline as deeply as
> possible?
>
> I always thought a method would be compiled multiple times while improving
> its inlining. But maybe that makes no sense and you can do it all in a
> single compilation effort.
Not sure how current** it is but there is info on the wiki
https://wiki.openjdk.java.net/display/HotSpot
https://wiki.openjdk.java.net/display/HotSpot/Server+Compiler+Inlining+Messages
** Just because it was written in 2011 doesn't mean it isn't current. :)
David
>
> On Tue, 17 Sep 2019 at 00:47, Vitaly Davidovich <vitalyd at gmail.com> wrote:
>
>>
>>
>> On Mon, Sep 16, 2019 at 6:35 PM Stefan Reich <
>> stefan.reich.maker.of.eye at googlemail.com> wrote:
>>
>>> Here's another thing I would love to have cleared up.
>>>
>>> Once a method is C2-compiled - does it still update its invocation
>>> counters?
>>
>> Nope. C2 compiled methods run profile-free. There can be certain events
>> that trigger a deopt that will toss out the C2 method (with future C2
>> compilations off newly collected profiling possible), but it won’t be
>> counter based.
>>
>>>
>>>
>>> I would assume counting stops at that point since we have done all we
>>> could
>>> for the method. Also the invocation counting overhead is always
>>> embarrassing when fighting some C++ guys over claims on how "slow" Java
>>> is.
>>> :o)
>>>
>>> OTOH, there might be scenarios where it makes sense to have a second look
>>> at "hot" methods, even if they are C2-compiled. Not sure if that scenario
>>> exists in the current infrastructure.
>>
>> That infrastructure is called a process restart :) j/k. There’re some
>> compiler control APIs, but they’re mostly to allow JIT testing (AFAIK). I
>> think it allows manually marking a C2 method for reclaim (ie not entrant),
>> but I don’t recall the details offhand.
>>
>>>
>>>
>>> Which one is it in reality?
>>>
>>> --
>>> Stefan Reich
>>> BotCompany.de // Java-based operating systems
>>>
>> --
>> Sent from my phone
>>
>
>
More information about the hotspot-dev
mailing list