RFR[XS] 8210040 [TESTBUG] TestOptionsWithRanges is very slow
vladimir.kozlov at oracle.com
Tue Aug 28 19:37:52 UTC 2018
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:
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.
> 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
> - 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.
>> On 8/28/18 2:27 AM, Ioi Lam wrote:
>>> 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