24
25 /* @test TestAllocateOldGenAt.java
26 * @key gc
27 * @summary Test to check allocation of Java Heap with AllocateOldGenAt option
28 * @requires vm.gc=="null" & os.family != "aix"
29 * @library /test/lib
30 * @modules java.base/jdk.internal.misc
31 * @run main gc.nvdimm.TestAllocateOldGenAt
32 */
33
34 import jdk.test.lib.JDKToolFinder;
35 import jdk.test.lib.process.ProcessTools;
36 import jdk.test.lib.process.OutputAnalyzer;
37 import java.util.ArrayList;
38 import java.util.Collections;
39
40 public class TestAllocateOldGenAt {
41 private static ArrayList<String> commonOpts;
42
43 public static void main(String args[]) throws Exception {
44 commonOpts = new ArrayList();
45
46 String testVmOptsStr = System.getProperty("test.java.opts");
47 if (!testVmOptsStr.isEmpty()) {
48 String[] testVmOpts = testVmOptsStr.split(" ");
49 Collections.addAll(commonOpts, testVmOpts);
50 }
51 String test_dir = System.getProperty("test.dir", ".");
52 Collections.addAll(commonOpts, new String[] {"-XX:+UnlockExperimentalVMOptions",
53 "-XX:AllocateOldGenAt=" + test_dir,
54 "-Xmx32m",
55 "-Xms32m",
56 "-version"});
57
58 runTest("-XX:+UseG1GC");
59 runTest("-XX:+UseParallelOldGC -XX:-UseAdaptiveGCBoundary");
60 runTest("-XX:+UseParallelOldGC -XX:+UseAdaptiveGCBoundary");
61 }
62
63 private static void runTest(String... extraFlags) throws Exception {
64 ArrayList<String> testOpts = new ArrayList();
65 Collections.addAll(testOpts, commonOpts.toArray(new String[commonOpts.size()]));
66 Collections.addAll(testOpts, extraFlags);
67
68 System.out.print("Testing:\n" + JDKToolFinder.getJDKTool("java"));
69 for (int i = 0; i < testOpts.size(); i += 1) {
70 System.out.print(" " + testOpts.get(i));
71 }
72 System.out.println();
73
74 ProcessBuilder pb =
75 ProcessTools.createJavaProcessBuilder(testOpts.toArray(new String[testOpts.size()]));
76 OutputAnalyzer output = new OutputAnalyzer(pb.start());
77
78 output.shouldHaveExitValue(0);
79
80 }
81 }
|
24
25 /* @test TestAllocateOldGenAt.java
26 * @key gc
27 * @summary Test to check allocation of Java Heap with AllocateOldGenAt option
28 * @requires vm.gc=="null" & os.family != "aix"
29 * @library /test/lib
30 * @modules java.base/jdk.internal.misc
31 * @run main gc.nvdimm.TestAllocateOldGenAt
32 */
33
34 import jdk.test.lib.JDKToolFinder;
35 import jdk.test.lib.process.ProcessTools;
36 import jdk.test.lib.process.OutputAnalyzer;
37 import java.util.ArrayList;
38 import java.util.Collections;
39
40 public class TestAllocateOldGenAt {
41 private static ArrayList<String> commonOpts;
42
43 public static void main(String args[]) throws Exception {
44 commonOpts = new ArrayList<>();
45
46 String testVmOptsStr = System.getProperty("test.java.opts");
47 if (!testVmOptsStr.isEmpty()) {
48 String[] testVmOpts = testVmOptsStr.split(" ");
49 Collections.addAll(commonOpts, testVmOpts);
50 }
51 String test_dir = System.getProperty("test.dir", ".");
52 Collections.addAll(commonOpts, new String[] {"-XX:+UnlockExperimentalVMOptions",
53 "-XX:AllocateOldGenAt=" + test_dir,
54 "-Xmx32m",
55 "-Xms32m",
56 "-version"});
57
58 runTest("-XX:+UseG1GC");
59 runTest("-XX:+UseParallelOldGC -XX:-UseAdaptiveGCBoundary");
60 runTest("-XX:+UseParallelOldGC -XX:+UseAdaptiveGCBoundary");
61 }
62
63 private static void runTest(String... extraFlags) throws Exception {
64 ArrayList<String> testOpts = new ArrayList<>();
65 Collections.addAll(testOpts, commonOpts.toArray(new String[commonOpts.size()]));
66 Collections.addAll(testOpts, extraFlags);
67
68 System.out.print("Testing:\n" + JDKToolFinder.getJDKTool("java"));
69 for (int i = 0; i < testOpts.size(); i += 1) {
70 System.out.print(" " + testOpts.get(i));
71 }
72 System.out.println();
73
74 ProcessBuilder pb =
75 ProcessTools.createJavaProcessBuilder(testOpts.toArray(new String[testOpts.size()]));
76 OutputAnalyzer output = new OutputAnalyzer(pb.start());
77
78 output.shouldHaveExitValue(0);
79
80 }
81 }
|