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

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Jan 28 20:22:11 PST 2014

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++;
+            }


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