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

Filipp Zhinkin filipp.zhinkin at oracle.com
Tue Dec 23 14:10:25 UTC 2014


On 12/23/2014 06:01 PM, Filipp Zhinkin wrote:
> 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.
Actually, it should work:

http://hg.openjdk.java.net/jdk9/jdk9/hotspot/file/7f062b70a344/src/share/vm/prims/jvm.cpp#l366

Thanks,
Filipp.
>
> 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