RFR[XS] 8210040 [TESTBUG] TestOptionsWithRanges is very slow
Ioi Lam
ioi.lam at oracle.com
Tue Aug 28 19:59:11 UTC 2018
Hi Vladimir,
Thank you so much for the tip. I've updated the patch
http://cr.openjdk.java.net/~iklam/jdk12/8210040-TestOptionsWithRanges-slow.v03/
I verified that the separate @test blocks can be executed in parallel.
Thanks
- Ioi
On 8/28/18 12:37 PM, Vladimir Kozlov wrote:
> Ioi,
>
> You don't need separate files. You can have several @test ... @run
> instructions in one file. Jtreg will run them as separate (but
> sequential tests). Example:
>
> runtime//appcds/sharedStrings/FlagCombo.java
>
> Thanks,
> Vladimir
>
> On 8/28/18 9:03 AM, Ioi Lam wrote:
>> Hi Coleen,
>>
>> Thanks for the review.
>>
>> Splitting the test is a good suggestion. I've updated the webrev to
>> split it into 10 parts. Now fastdebug finishes in less than 2 minutes
>> on my machines with 10 parallel tests.
>>
>> http://cr.openjdk.java.net/~iklam/jdk12/8210040-TestOptionsWithRanges-slow.v02/
>>
>>
>> I split it by sorting the options and divide them up. I added some
>> debug logs to make sure my splitting code doesn't have arithmetic
>> errors:
>>
>> TestOptionsWithRanges_01.jtr:Generating subset [0 ... 32) of 32 tests
>> out of 323 total tests
>> TestOptionsWithRanges_02.jtr:Generating subset [32 ... 64) of 32
>> tests out of 323 total tests
>> TestOptionsWithRanges_03.jtr:Generating subset [64 ... 96) of 32
>> tests out of 323 total tests
>> TestOptionsWithRanges_04.jtr:Generating subset [96 ... 129) of 33
>> tests out of 323 total tests
>> TestOptionsWithRanges_05.jtr:Generating subset [129 ... 161) of 32
>> tests out of 323 total tests
>> TestOptionsWithRanges_06.jtr:Generating subset [161 ... 193) of 32
>> tests out of 323 total tests
>> TestOptionsWithRanges_07.jtr:Generating subset [193 ... 226) of 33
>> tests out of 323 total tests
>> TestOptionsWithRanges_08.jtr:Generating subset [226 ... 258) of 32
>> tests out of 323 total tests
>> TestOptionsWithRanges_09.jtr:Generating subset [258 ... 290) of 32
>> tests out of 323 total tests
>> TestOptionsWithRanges_10.jtr:Generating subset [290 ... 323) of 33
>> tests out of 323 total tests
>>
>> Thanks
>>
>> - Ioi
>>
>>
>> On 8/28/18 5:25 AM, coleen.phillimore at oracle.com wrote:
>>>
>>> Thank you for doing this. I ran into this test yesterday. Is there
>>> any way to split this test into multiple tests? I had a look at it
>>> and couldn't think of a way, since it parses the output of
>>> -XX:+PrintFlagsRanges, I believe. Maybe alphabetically though,
>>> include/exclude some groups of flags? Or maybe stop testing all the
>>> CMS flags. Possibly another RFE.
>>>
>>> Your change looks good though. It will help.
>>>
>>> Thanks,
>>> Coleen
>>>
>>>
>>> On 8/28/18 2:27 AM, Ioi Lam wrote:
>>>> https://bugs.openjdk.java.net/browse/JDK-8210040
>>>> http://cr.openjdk.java.net/~iklam/jdk12/8210040-TestOptionsWithRanges-slow.v01/
>>>>
>>>>
>>>> TestOptionsWithRanges spawns over 1000 JVM processes that try to
>>>> force GC.
>>>> This scales very poorly on machines with lots of RAM. It timed out
>>>> on my machine
>>>> with 64GB RAM after an hour.
>>>>
>>>> The fix is to add -Xmx1024m to the command-line of the child
>>>> processes. Also add
>>>> -XX:-ZapUnusedHeapArea for fastdebug builds.
>>>>
>>>>
>>>>
>>>
>>
More information about the hotspot-runtime-dev
mailing list