20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 import java.io.PrintStream;
25 import java.util.ArrayList;
26 import java.util.List;
27 import java.util.Map;
28 import java.util.Random;
29 import sun.hotspot.WhiteBox;
30
31 /*
32 * @test TestMultiThreadStressRSet.java
33 * @key stress
34 * @requires vm.gc.G1
35 * @requires os.maxMemory > 2G
36 * @requires vm.opt.MaxGCPauseMillis == "null"
37 *
38 * @summary Stress G1 Remembered Set using multiple threads
39 * @modules java.base/jdk.internal.misc
40 * @library /test/lib /testlibrary
41 * @build sun.hotspot.WhiteBox
42 * @run main ClassFileInstaller sun.hotspot.WhiteBox
43 * sun.hotspot.WhiteBox$WhiteBoxPermission
44 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
45 * -XX:+UseG1GC -XX:G1SummarizeRSetStatsPeriod=1 -Xlog:gc
46 * -Xmx500m -XX:G1HeapRegionSize=1m -XX:MaxGCPauseMillis=1000 TestMultiThreadStressRSet 10 4
47 *
48 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
49 * -XX:+UseG1GC -XX:G1SummarizeRSetStatsPeriod=100 -Xlog:gc
50 * -Xmx1G -XX:G1HeapRegionSize=8m -XX:MaxGCPauseMillis=1000 TestMultiThreadStressRSet 60 16
51 *
52 * @run main/othervm/timeout=700 -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
53 * -XX:+UseG1GC -XX:G1SummarizeRSetStatsPeriod=100 -Xlog:gc
54 * -Xmx500m -XX:G1HeapRegionSize=1m -XX:MaxGCPauseMillis=1000 TestMultiThreadStressRSet 600 32
55 */
56 public class TestMultiThreadStressRSet {
57
58 private static final Random RND = new Random(2015 * 2016);
59 private static final WhiteBox WB = WhiteBox.getWhiteBox();
60 private static final int REF_SIZE = WB.getHeapOopSize();
|
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 import java.io.PrintStream;
25 import java.util.ArrayList;
26 import java.util.List;
27 import java.util.Map;
28 import java.util.Random;
29 import sun.hotspot.WhiteBox;
30
31 /*
32 * @test TestMultiThreadStressRSet.java
33 * @key stress
34 * @requires vm.gc.G1
35 * @requires os.maxMemory > 2G
36 * @requires vm.opt.MaxGCPauseMillis == "null"
37 *
38 * @summary Stress G1 Remembered Set using multiple threads
39 * @modules java.base/jdk.internal.misc
40 * @library /test/lib
41 * @build sun.hotspot.WhiteBox
42 * @run main ClassFileInstaller sun.hotspot.WhiteBox
43 * sun.hotspot.WhiteBox$WhiteBoxPermission
44 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
45 * -XX:+UseG1GC -XX:G1SummarizeRSetStatsPeriod=1 -Xlog:gc
46 * -Xmx500m -XX:G1HeapRegionSize=1m -XX:MaxGCPauseMillis=1000 TestMultiThreadStressRSet 10 4
47 *
48 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
49 * -XX:+UseG1GC -XX:G1SummarizeRSetStatsPeriod=100 -Xlog:gc
50 * -Xmx1G -XX:G1HeapRegionSize=8m -XX:MaxGCPauseMillis=1000 TestMultiThreadStressRSet 60 16
51 *
52 * @run main/othervm/timeout=700 -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
53 * -XX:+UseG1GC -XX:G1SummarizeRSetStatsPeriod=100 -Xlog:gc
54 * -Xmx500m -XX:G1HeapRegionSize=1m -XX:MaxGCPauseMillis=1000 TestMultiThreadStressRSet 600 32
55 */
56 public class TestMultiThreadStressRSet {
57
58 private static final Random RND = new Random(2015 * 2016);
59 private static final WhiteBox WB = WhiteBox.getWhiteBox();
60 private static final int REF_SIZE = WB.getHeapOopSize();
|