RFR: 8282024: add EscapeAnalysis statistics under PrintOptoStatistics [v14]

Xin Liu xliu at openjdk.java.net
Fri May 20 23:37:58 UTC 2022


On Fri, 20 May 2022 19:51:37 GMT, aamarsh <duke at openjdk.java.net> wrote:

>> Escape Analysis and Scalar Replacement statistics were added when the -XX:+PrintOptoStatistics flag is set. All code is placed in `#ifndef Product` block, so this code is only run when creating a debug build. Using renaissance benchmark I ran a few tests to confirm that numbers were printing correctly. Below is an example run:
>> 
>> 
>> No escape = 337, Arg escape = 125, Global escape = 2025
>> Objects scalar replaced = 217, Monitor objects removed = 29, GC barriers removed = 33, Memory barriers removed = 246
>
> aamarsh has updated the pull request incrementally with one additional commit since the last revision:
> 
>   make count_MemBar static

src/hotspot/share/opto/escape.cpp line 3756:

> 3754: 
> 3755: void ConnectionGraph::print_statistics() {
> 3756:   // EA stats might be slightly off since objects might be double counted due to iterative EA

I don't understand. your approach almost worked in last revision. you all need to do is to adjust for the last iteration. 

This revision drop it. I don't think it would be "slightly" off, even double counted is optimistic.  A java object will be counted repeat if iterEA iterates N times.   my concern is the final statistical counters become incomparable. 

Why did you drop snapshot approach in https://github.com/openjdk/jdk/pull/8019/commits/0805514aec4c3d0bd5ec935c089e315e4b37c7fa?

-------------

PR: https://git.openjdk.java.net/jdk/pull/8019


More information about the hotspot-compiler-dev mailing list