RFR(S) 8007270: Make IsMethodCompilable test work with tiered

Nils Eliasson nils.eliasson at oracle.com
Wed Jan 29 00:29:44 PST 2014


Only to guard that it is the low-tier ramp up and nothing else that is 
compensated for. If some other compiler, policy or compilation level is 
introduced the test will have to be fixed, and this way it will be found 
right away.

Thanks,
//N

On 2014-01-29 05:22, Vladimir Kozlov wrote:
> Hi Nils,
>
> Why only on first iteration and not always increment when C2 is not 
> used? :
>
> +          if (level < COMP_LEVEL_FULL_OPTIMIZATION) {
> +            if (i == 0) {
> +              // Add one if a lower tier is compiled on first iteration
> +              cutoff++;
> +            }
>
> thanks,
> Vladimir
>
> On 1/28/14 7:02 AM, Nils Eliasson wrote:
>> Hi all,
>>
>> I need a review for this change.
>>
>> http://cr.openjdk.java.net/~neliasso/8007270/webrev.01/
>>
>> This test was disabled since it didn't work very well with tiered (or
>> client). It tests the PerMethodRecompilationCutoff that was introduced
>> to disable c2-compilations of a method when it has been deoptimized too
>> many times.  The bug report suggested we should disable c1 compilations
>> as well but I don't think that was the intent of the cutoff feature.
>>
>> I have changed the following in the test
>> * skip test when running client only (not supported by jtreg at the 
>> moment)
>> * check what compilation level was used when compiling so that it can
>> keep track of the number of c2 compiles (and deopts) correctly in tiered
>> mode
>> * compile and deopt up to the cutoff limit only once
>> * added PerMethodRecompilationCutoff=4 flag to commandline to reduce
>> wasted time in test (default 400)
>>
>> Now the test works and the running time has been reduced to seconds
>> instead of minutes.
>>
>> Kind regards,
>> Nils Eliasson
>>
>>



More information about the hotspot-compiler-dev mailing list