RFR: 8166790: Add stress test GCBasher

Erik Helin erik.helin at oracle.com
Thu Oct 6 14:38:11 UTC 2016


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