57
58 testSurvivorRatio(3, options);
59 testSurvivorRatio(6, options);
60 testSurvivorRatio(10, options);
61 testSurvivorRatio(15, options);
62 testSurvivorRatio(20, options);
63 }
64
65 /**
66 * Verify that actual survivor ratio equal to specified.
67 *
68 * @param ratio survivor ratio that be verified
69 * @param options additional options to JVM
70 */
71 public static void testSurvivorRatio(int ratio, LinkedList<String> options) throws Exception {
72
73 LinkedList<String> vmOptions = new LinkedList<>(options);
74
75 Collections.addAll(vmOptions,
76 "-Xbootclasspath/a:.",
77 "-XaddExports:java.base/jdk.internal.misc=ALL-UNNAMED",
78 "-XX:+UnlockDiagnosticVMOptions",
79 "-XX:+WhiteBoxAPI",
80 "-XX:GCLockerEdenExpansionPercent=0",
81 "-XX:MaxNewSize=" + NEW_SIZE,
82 "-XX:NewSize=" + NEW_SIZE,
83 "-Xmx" + HEAP_SIZE,
84 "-Xms" + HEAP_SIZE,
85 "-XX:SurvivorRatio=" + ratio,
86 SurvivorRatioVerifier.class.getName(),
87 Integer.toString(ratio)
88 );
89
90 ProcessBuilder procBuilder = ProcessTools.createJavaProcessBuilder(vmOptions.toArray(new String[vmOptions.size()]));
91 OutputAnalyzer analyzer = new OutputAnalyzer(procBuilder.start());
92 analyzer.shouldHaveExitValue(0);
93 }
94
95 /**
96 * Class that verifies survivor ratio.
97 */
|
57
58 testSurvivorRatio(3, options);
59 testSurvivorRatio(6, options);
60 testSurvivorRatio(10, options);
61 testSurvivorRatio(15, options);
62 testSurvivorRatio(20, options);
63 }
64
65 /**
66 * Verify that actual survivor ratio equal to specified.
67 *
68 * @param ratio survivor ratio that be verified
69 * @param options additional options to JVM
70 */
71 public static void testSurvivorRatio(int ratio, LinkedList<String> options) throws Exception {
72
73 LinkedList<String> vmOptions = new LinkedList<>(options);
74
75 Collections.addAll(vmOptions,
76 "-Xbootclasspath/a:.",
77 "--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED",
78 "-XX:+UnlockDiagnosticVMOptions",
79 "-XX:+WhiteBoxAPI",
80 "-XX:GCLockerEdenExpansionPercent=0",
81 "-XX:MaxNewSize=" + NEW_SIZE,
82 "-XX:NewSize=" + NEW_SIZE,
83 "-Xmx" + HEAP_SIZE,
84 "-Xms" + HEAP_SIZE,
85 "-XX:SurvivorRatio=" + ratio,
86 SurvivorRatioVerifier.class.getName(),
87 Integer.toString(ratio)
88 );
89
90 ProcessBuilder procBuilder = ProcessTools.createJavaProcessBuilder(vmOptions.toArray(new String[vmOptions.size()]));
91 OutputAnalyzer analyzer = new OutputAnalyzer(procBuilder.start());
92 analyzer.shouldHaveExitValue(0);
93 }
94
95 /**
96 * Class that verifies survivor ratio.
97 */
|