Making PrintEscapeAnalysis a diagnostic option on product VM?

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Fri Jun 19 12:10:08 UTC 2015


> What do you think the next step is?
>
> I'm not a committer but I'd be happy to submit a patch/webrev that outputs
> LogCompilation XML for the kind of EA info I think would be useful.
Go for it. If you are a Contributor (signed OCA), we'll review and 
accept your patch with gratitude. Keep in mind, that when you touch 
LogCompilation output format, you should update logc tool 
(src/share/tools/LogCompilation/ [1]) as well.

> I've just seen Vitaly's post and I agree a tty 1-liner for each
> elimination would also be nice.
Feel free to enhance -XX:+PrintEscapeAnalysis output as well, if you 
find it useful.

Best regards,
Vladimir Ivanov

[1] 
http://hg.openjdk.java.net/jdk9/jdk9/hotspot/file/tip/src/share/tools/LogCompilation
>
> Thanks,
>
> Chris
>
> On Fri, June 19, 2015 12:03, Vladimir Ivanov wrote:
>> Chris,
>>
>>
>> I'd suggest to look into enhancing LogCompilation output instead of
>> parsing VM output. It doesn't require any flag changes and fits nicely into
>> existing LogCompilation functionality, so we can integrate it into the
>> product, relieving you and JITWatch users from building a companion VM.
>>
>> Best regards,
>> Vladimir Ivanov
>>
>>
>> On 6/19/15 1:16 PM, Chris Newland wrote:
>>
>>> Hi, hope this is the correct list (perhaps serviceability?)
>>>
>>>
>>> I'm experimenting with some HotSpot changes that log escape analysis
>>> decisions so that I can visualise eliminated allocations at the source
>>> and bytecode levels in JITWatch[1].
>>>
>>> My plan was to build a companion VM for JITWatch based on the product
>>> VM
>>> that would allow users to inspect some of the deeper workings such as EA
>>>   and DCE that are not present in the LogCompilation output.
>>>
>>> I mentioned this to some performance guys at Devoxx and they didn't
>>> like the custom VM idea and suggested I put in a request to consider
>>> making -XX:+PrintEscapeAnalysis available under
>>> -XX:+UnlockDiagnosticVMOptions on
>>> the product VM (it's currently a notproduct option).
>>>
>>> If this is something you would consider than could I also request
>>> consideration of -XX:+PrintEliminateAllocations.
>>>
>>> All I would need is the class, method, and bci of each NoEscape
>>> detected.
>>>
>>> Kind regards,
>>>
>>>
>>> Chris
>>>
>>>
>>> [1] https://github.com/AdoptOpenJDK/jitwatch
>>>
>>>
>>
>
>


More information about the hotspot-compiler-dev mailing list