RFR: 8166790: Add stress test GCBasher

Dmitry Fazunenko dmitry.fazunenko at oracle.com
Thu Oct 6 15:00:32 UTC 2016


Erik,

Looks to me.
Thanks for addressing my notes.

-- Dima

On 06.10.2016 17:38, Erik Helin wrote:
> David, Dmitry,
>
> below you will find new patches:
> - incremental: http://cr.openjdk.java.net/~ehelin/8166790/hotspot/02-03/
> - full: http://cr.openjdk.java.net/~ehelin/8166790/hotspot/03/
>
> I've fixed the indentation of the comments of the GPL header in all
> files. I also removed '| vm.gc=="null"' from all @requires lines. I also
> filed an enhancement to investigate if we can remove -server option [0].
>
> Thanks,
> Erik
>
> [0]: https://bugs.openjdk.java.net/browse/JDK-8167290
>
> On 2016-10-06, Dmitry Fazunenko wrote:
>> Hi Erik,
>>
>> 1) Would you update:
>>
>> @requires vm.gc.X | vm.gc=="null"
>> -->
>> @requires vm.gc.X
>>
>> vm.gc.X means that X GC could be set, i.e. X is supported by VM and no other GC is set via command line.
>>
>>
>> 2) @requires for -server
>> is this test server specific?
>> If not, will it make sense to remove "-server" from @run instead?
>>
>> Thanks,
>> Dima
>>
>>
>>
>>
>> On 06.10.2016 15:57, Erik Helin wrote:
>>> On 2016-10-06, David Holmes wrote:
>>>> On 4/10/2016 7:42 PM, Erik Helin wrote:
>>>>> On 2016-09-30, Leonid Mesnik wrote:
>>>>>> Hi
>>>>>>
>>>>>> I think that it would be better to split this test into 4 tests. Currently
>>>>>> this test is going to be skipped if any specific GCare set. Or it could even
>>>>>> fail if any G1 specific options is set without setting G1 explicitly.
>>>>>>
>>>>>> So there is no way to run this with additional G1/CMS/ParGC specific options
>>>>>> now.
>>>>> Ok, I've split the test into four "tests" (they just run GCBasher with
>>>>> different GCs). Please see new patches:
>>>>>
>>>>> - incremental: http://cr.openjdk.java.net/~ehelin/8166790/hotspot/00-01/
>>>>> - full: http://cr.openjdk.java.net/~ehelin/8166790/hotspot/01/
>>>> That seems fine to me too.
>>>>
>>>> One minor issue - all the copyright notices in the new files are slightly
>>>> wrong (and we have a big patch in the pipeline that is fixing all the
>>>> existing tests that have errors). In the copyright notice you have:
>>>>
>>>>     1 /*
>>>>     2 * Copyright (c) 2016, Oracle and/or its affiliates. All rights
>>>> reserved.
>>>>     3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
>>>>    ...
>>>>    21 * questions.
>>>>    22 */
>>>>
>>>> but the correct format requires that all the asterisks line up:
>>>>
>>>>     1 /*
>>>>     2  * Copyright (c) 2016, Oracle and/or its affiliates. All rights
>>>> reserved.
>>>>     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
>>>>    ...
>>>>    21  * questions.
>>>>    22  */
>>> Ok, no problem. You can find updated patches below (I also added an
>>> @requires for -server):
>>> - incremental: http://cr.openjdk.java.net/~ehelin/8166790/hotspot/01-02/
>>> - full: http://cr.openjdk.java.net/~ehelin/8166790/hotspot/02/
>>>
>>> Thanks,
>>> Erik
>>>
>>>> Thanks,
>>>> David
>>>>
>>>>> Thanks,
>>>>> Erik
>>>>>
>>>>>> Leonid
>>>>>>
>>>>>>
>>>>>> On 28.09.2016 18:01, Erik Helin wrote:
>>>>>>> Hi all,
>>>>>>>
>>>>>>> this patch adds a new GC stress test called GCBasher. GCBasher builds up
>>>>>>> large (well, for some definiton of large) object graphs by figuring out
>>>>>>> the relations between classes in the JDK. The test usually stresses the
>>>>>>> GC quite a lot, especially when run with a smaller heap.
>>>>>>>
>>>>>>> The changes in the top-level repository are for JPRT. JPRT will now run
>>>>>>> the jtreg test GCBasher instead of the old version.
>>>>>>>
>>>>>>> Enhancement:
>>>>>>> https://bugs.openjdk.java.net/browse/JDK-8166790
>>>>>>>
>>>>>>> Webrev:
>>>>>>> - hotspot: http://cr.openjdk.java.net/~ehelin/8166790/hotspot/00/
>>>>>>> - top: http://cr.openjdk.java.net/~ehelin/8166790/top/00/
>>>>>>>
>>>>>>> Testing:
>>>>>>> - Running the new jtreg test locally on Linux x86-64:
>>>>>>>   $ jtreg -jdk:build/fastdebug/jdk hotspot/test/gc/stress/TestGCBasher.java
>>>>>>>
>>>>>>>   (can also be run via: $ make test TEST=hotspot_fast_gc_gcbasher)
>>>>>>> - JPRT
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Erik



More information about the hotspot-dev mailing list