[9] RFR(S): 8060215: per-method PrintIdealGraphLevel

Zoltán Majó zoltan.majo at oracle.com
Wed Oct 15 08:54:52 UTC 2014


Thank you Dean, Vladimir, and Tobias for the feedback!

On 10/15/2014 08:04 AM, Tobias Hartmann wrote:
> Hi Zoltan,
>
> this looks good. Just a minor comment (parse.cpp):
>
> 2347   if(printer && printer->should_print(_method)) {
>
> I prefer having a whitespace after the 'if' because it is more readable.

I corrected that.

Thank you and best regards,


Zoltan

>
> Best,
> Tobias
>
> On 14.10.2014 20:44, Zoltán Majó wrote:
>> Hi,
>>
>>
>> please review the following patch.
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8060215
>>
>> Problem: Currently, printing the Ideal Graph can be only enabled for 
>> *all*
>> methods compiled by the VM (by setting the PrintIdealGraphLevel 
>> flag). The
>> overhead of printing the graph can be too high when a VM is debugged 
>> in a
>> resource-constrained environment (e.g., limited network bandwidth, 
>> limited disk
>> space, or a slow CPU is available). To reduce the overhed, it can be 
>> useful to
>> produce the Ideal Graph only for a subset of all methods compiled. By 
>> doing that
>> the size of the output file, the amount of data transferred on the 
>> network, and
>> also the overhead of printing the graph is reduced.
>>
>> Solution:
>>
>> - Use CompileCommand=option to set PrintIdealGraphLevel on a 
>> per-method level.
>> - PrintIdealGraphLevel sets the level of detail for printing all 
>> other methods.
>> - Introduce a new develop flag PrintIdealGraph to control/check if 
>> printing the
>> graph is enabled for any method. The old way of checking if 
>> PrintIdealGraphLevel
>>  > 0 to see if printing is enabled is not good enough, because
>> PrintIdealGraphLevel flag can be 0 while PrintIdealGraphLevel can be 
>> set for
>> some method.
>>
>> Webrev: http://cr.openjdk.java.net/~zmajo/8060215/webrev.00/
>>
>> Testing: JPRT, manual testing.
>>
>> Thank you and best regards,
>>
>>
>> Zoltan
>>



More information about the hotspot-compiler-dev mailing list