[9] RFR (L): 8059623: JEP-JDK-8043304: Test task: command line options tests

Filipp Zhinkin filipp.zhinkin at oracle.com
Tue Dec 23 14:01:22 UTC 2014


Hi Goetz,

On 12/23/2014 05:11 PM, Lindenmaier, Goetz wrote:
> Hi Filipp,
>
> Maybe there should be Platform.implementsTiered() ?
> There was a similar problem in 8067823.
>
> Does the WhiteBox know about the available compilers somehow?
> I didn't find anything.
I was going to run tests with +TieredCompilation and
check that TieredCompilation is "false" using WhiteBox::getBooleanVMFlag.

I agree that it would be nice to have some more direct approach
to check tiered compilation availability, but I didn't find anything expect
"sun.management.compiler" property that has "HotSpot 64-Bit Tiered Compilers"
on my desktop disregard to TieredCompilation value.

I'll dig in that direction and let you know if it is possible to use that property.

Thanks,
Filipp.
>
> Best regards,
>    Goetz.
>
>
>
>
> -----Original Message-----
> From: Filipp Zhinkin [mailto:filipp.zhinkin at oracle.com]
> Sent: Dienstag, 23. Dezember 2014 12:37
> To: Lindenmaier, Goetz; Christian Thalinger
> Cc: hotspot-compiler-dev at openjdk.java.net
> Subject: Re: [9] RFR (L): 8059623: JEP-JDK-8043304: Test task: command line options tests
>
> Thank you for pointing me to this issue.
>
> Each test consist of several test cases and for test cases
> that require TieredCompilation I've only checked that current VM is server one.
>
> Apparently it's not enough, so I'll update tests to check that VM is server and
> TieredCompilation is available.
>
> Thanks,
> Filipp.
>
> On 12/23/2014 03:26 PM, Lindenmaier, Goetz wrote:
>> Hi Filipp,
>>
>> Thanks for pointing me at 8059613.  With that I could run the tests.
>>
>> The ppc64 VM does not implement TieredCompilation, thus the tests fail.
>> Could you please apply something as the patch below?
>>
>> Thanks,
>>     Goetz
>>
>>
>> diff -r c79a7b921a03 test/compiler/codecache/cli/TestSegmentedCodeCacheOption.java
>> --- a/test/compiler/codecache/cli/TestSegmentedCodeCacheOption.java	Sat Dec 13 00:54:22 2014 +0300
>> +++ b/test/compiler/codecache/cli/TestSegmentedCodeCacheOption.java	Tue Dec 23 12:17:26 2014 +0100
>> @@ -170,6 +171,18 @@
>>        }
>>    
>>        public static void main(String args[]) throws Throwable {
>> +
>> +        // Check whether VM supports tiered compilation.
>> +        try {
>> +            CommandLineOptionTest.verifyJVMStartup(CommandLineOptionTest.prepareBooleanFlag(TIERED_COMPILATION, true),
>> +                                                   null,
>> +                                                   new String[]{ "TieredCompilation is disabled in this release." },
>> +                                                   "", "", ExitCode.OK);
>> +        } catch (Throwable e) {
>> +            System.out.println("Skipping the test as TieredCompilation is not implemented in this VM.");
>> +            return;
>> +        }
>> +
>>            for (TestCase testCase : TestCase.values()) {
>>                if (testCase.isApplicable()) {
>>                    System.out.println("Running test case: " + testCase.name());
>> diff -r c79a7b921a03 test/compiler/codecache/cli/codeheapsize/TestCodeHeapSizeOptions.java
>> --- a/test/compiler/codecache/cli/codeheapsize/TestCodeHeapSizeOptions.java	Sat Dec 13 00:54:22 2014 +0300
>> +++ b/test/compiler/codecache/cli/codeheapsize/TestCodeHeapSizeOptions.java	Tue Dec 23 12:17:26 2014 +0100
>> @@ -22,7 +22,9 @@
>>     */
>>    package codeheapsize;
>>    
>> +import com.oracle.java.testlibrary.ExitCode;
>>    import com.oracle.java.testlibrary.Platform;
>> +import com.oracle.java.testlibrary.cli.CommandLineOptionTest;
>>    import common.CodeCacheCLITestBase;
>>    import common.CodeCacheCLITestCase;
>>    import sun.hotspot.code.BlobType;
>> @@ -75,6 +77,18 @@
>>        }
>>    
>>        public static void main(String args[]) throws Throwable {
>> +
>> +        // Check whether VM supports tiered compilation.
>> +        try {
>> +            CommandLineOptionTest.verifyJVMStartup(CommandLineOptionTest.prepareBooleanFlag("TieredCompilation", true),
>> +                                                   null,
>> +                                                   new String[]{ "TieredCompilation is disabled in this release." },
>> +                                                   "", "", ExitCode.OK);
>> +        } catch (Throwable e) {
>> +            System.out.println("Skipping the test as TieredCompilation is not implemented in this VM.");
>> +            return;
>> +        }
>> +
>>            new TestCodeHeapSizeOptions().runTestCases();
>>        }
>>    }
>> diff -r c79a7b921a03 test/compiler/codecache/cli/printcodecache/TestPrintCodeCacheOption.java
>> --- a/test/compiler/codecache/cli/printcodecache/TestPrintCodeCacheOption.java	Sat Dec 13 00:54:22 2014 +0300
>> +++ b/test/compiler/codecache/cli/printcodecache/TestPrintCodeCacheOption.java	Tue Dec 23 12:17:26 2014 +0100
>> @@ -22,6 +22,8 @@
>>     */
>>    package printcodecache;
>>    
>> +import com.oracle.java.testlibrary.ExitCode;
>> +import com.oracle.java.testlibrary.cli.CommandLineOptionTest;
>>    import common.CodeCacheCLITestBase;
>>    import common.CodeCacheCLITestCase;
>>    import sun.hotspot.code.BlobType;
>> @@ -68,6 +70,17 @@
>>        }
>>    
>>        public static void main(String args[]) throws Throwable {
>> +
>> +        // Check whether VM supports tiered compilation.
>> +        try {
>> +            CommandLineOptionTest.verifyJVMStartup(CommandLineOptionTest.prepareBooleanFlag("TieredCompilation", true),
>> +                                                   null,
>> +                                                   new String[]{ "TieredCompilation is disabled in this release." },
>> +                                                   "", "", ExitCode.OK);
>> +        } catch (Throwable e) {
>> +            System.out.println("Skipping the test as TieredCompilation is not implemented in this VM.");
>> +            return;
>> +        }
>>            new TestPrintCodeCacheOption().runTestCases();
>>        }
>>    }



More information about the hotspot-compiler-dev mailing list