RFR: 8166790: Add stress test GCBasher

Dmitry Fazunenko dmitry.fazunenko at oracle.com
Thu Oct 6 13:36:09 UTC 2016


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