17 * |
17 * |
18 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
18 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
19 * or visit www.oracle.com if you need additional information or have any |
19 * or visit www.oracle.com if you need additional information or have any |
20 * questions. |
20 * questions. |
21 * |
21 * |
|
22 */ |
|
23 |
|
24 /* |
|
25 * @test TestStringDedupStress |
|
26 * @summary Test Shenandoah string deduplication implementation |
|
27 * @key gc |
|
28 * @requires vm.gc.Shenandoah & !vm.graal.enabled |
|
29 * @library /test/lib |
|
30 * @modules java.base/jdk.internal.misc:open |
|
31 * @modules java.base/java.lang:open |
|
32 * java.management |
|
33 * |
|
34 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
35 * -XX:+UseShenandoahGC -XX:ShenandoahGCMode=passive |
|
36 * -XX:+ShenandoahDegeneratedGC |
|
37 * TestStringDedupStress |
|
38 * |
|
39 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
40 * -XX:+UseShenandoahGC -XX:ShenandoahGCMode=passive |
|
41 * -XX:-ShenandoahDegeneratedGC |
|
42 * TestStringDedupStress |
|
43 */ |
|
44 |
|
45 /* |
|
46 * @test TestStringDedupStress |
|
47 * @summary Test Shenandoah string deduplication implementation |
|
48 * @key gc |
|
49 * @requires vm.gc.Shenandoah & !vm.graal.enabled |
|
50 * @library /test/lib |
|
51 * @modules java.base/jdk.internal.misc:open |
|
52 * @modules java.base/java.lang:open |
|
53 * java.management |
|
54 * |
|
55 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
56 * -XX:+UseShenandoahGC |
|
57 * -DtargetStrings=3000000 |
|
58 * TestStringDedupStress |
|
59 * |
|
60 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
61 * -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=aggressive |
|
62 * -DtargetStrings=2000000 |
|
63 * TestStringDedupStress |
|
64 * |
|
65 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
66 * -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=aggressive |
|
67 * -XX:+ShenandoahOOMDuringEvacALot |
|
68 * -DtargetStrings=2000000 |
|
69 * TestStringDedupStress |
|
70 * |
|
71 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
72 * -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=compact |
|
73 * TestStringDedupStress |
|
74 * |
|
75 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
76 * -XX:+UseShenandoahGC |
|
77 * -XX:ShenandoahUpdateRefsEarly=off |
|
78 * -DtargetStrings=3000000 |
|
79 * TestStringDedupStress |
|
80 * |
|
81 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
82 * -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=compact |
|
83 * -XX:ShenandoahUpdateRefsEarly=off |
|
84 * -DtargetStrings=2000000 |
|
85 * TestStringDedupStress |
|
86 * |
|
87 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
88 * -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=aggressive |
|
89 * -XX:ShenandoahUpdateRefsEarly=off |
|
90 * -DtargetStrings=2000000 |
|
91 * TestStringDedupStress |
|
92 * |
|
93 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
|
94 * -XX:+UseShenandoahGC -XX:ShenandoahGCHeuristics=aggressive |
|
95 * -XX:ShenandoahUpdateRefsEarly=off -XX:+ShenandoahOOMDuringEvacALot |
|
96 * -DtargetStrings=2000000 |
|
97 * TestStringDedupStress |
22 */ |
98 */ |
23 |
99 |
24 /* |
100 /* |
25 * @test TestStringDedupStress |
101 * @test TestStringDedupStress |
26 * @summary Test Shenandoah string deduplication implementation |
102 * @summary Test Shenandoah string deduplication implementation |
28 * @requires vm.gc.Shenandoah & !vm.graal.enabled |
104 * @requires vm.gc.Shenandoah & !vm.graal.enabled |
29 * @library /test/lib |
105 * @library /test/lib |
30 * @modules java.base/jdk.internal.misc:open |
106 * @modules java.base/jdk.internal.misc:open |
31 * @modules java.base/java.lang:open |
107 * @modules java.base/java.lang:open |
32 * java.management |
108 * java.management |
33 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
109 * |
34 * -DtargetStrings=3000000 |
110 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
35 * -Xlog:gc |
111 * -XX:+UseShenandoahGC -XX:ShenandoahGCMode=traversal |
36 * TestStringDedupStress |
112 * TestStringDedupStress |
37 * |
113 * |
38 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
114 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
39 * -XX:ShenandoahGCHeuristics=aggressive -DtargetStrings=2000000 |
115 * -XX:+UseShenandoahGC -XX:ShenandoahGCMode=traversal -XX:ShenandoahGCHeuristics=aggressive |
40 * -Xlog:gc |
116 * -DtargetStrings=2000000 |
41 * TestStringDedupStress |
117 * TestStringDedupStress |
42 * |
118 * |
43 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
119 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
44 * -XX:ShenandoahGCHeuristics=aggressive -XX:+ShenandoahOOMDuringEvacALot -DtargetStrings=2000000 |
120 * -XX:+UseShenandoahGC -XX:ShenandoahGCMode=traversal |
45 * -Xlog:gc |
121 * -XX:+ShenandoahOOMDuringEvacALot |
46 * TestStringDedupStress |
122 * -DtargetStrings=2000000 |
47 * |
123 * TestStringDedupStress |
48 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
124 * |
49 * -XX:ShenandoahGCHeuristics=static -DtargetStrings=4000000 |
125 * @run main/othervm -Xmx1g -Xlog:gc+stats -Xlog:gc -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication |
50 * -Xlog:gc |
126 * -XX:+UseShenandoahGC -XX:ShenandoahGCMode=traversal -XX:ShenandoahGCHeuristics=aggressive |
51 * TestStringDedupStress |
127 * -XX:+ShenandoahOOMDuringEvacALot |
52 * |
128 * -DtargetStrings=2000000 |
53 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
129 * TestStringDedupStress |
54 * -XX:ShenandoahGCHeuristics=compact |
|
55 * -Xlog:gc |
|
56 * TestStringDedupStress |
|
57 * |
|
58 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
59 * -XX:ShenandoahGCMode=passive -XX:+ShenandoahDegeneratedGC |
|
60 * -Xlog:gc |
|
61 * TestStringDedupStress |
|
62 * |
|
63 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
64 * -XX:ShenandoahGCMode=passive -XX:-ShenandoahDegeneratedGC |
|
65 * -Xlog:gc |
|
66 * TestStringDedupStress |
|
67 * |
|
68 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
69 * -XX:ShenandoahGCMode=traversal |
|
70 * -Xlog:gc |
|
71 * TestStringDedupStress |
|
72 * |
|
73 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
74 * -XX:ShenandoahGCMode=traversal -XX:ShenandoahGCHeuristics=aggressive -DtargetStrings=2000000 |
|
75 * -Xlog:gc |
|
76 * TestStringDedupStress |
|
77 * |
|
78 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
79 * -XX:ShenandoahGCMode=traversal -XX:ShenandoahGCHeuristics=aggressive -XX:+ShenandoahOOMDuringEvacALot -DtargetStrings=2000000 |
|
80 * -Xlog:gc |
|
81 * TestStringDedupStress |
|
82 * |
|
83 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
84 * -XX:ShenandoahUpdateRefsEarly=off -DtargetStrings=3000000 |
|
85 * -Xlog:gc |
|
86 * TestStringDedupStress |
|
87 * |
|
88 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
89 * -XX:ShenandoahGCHeuristics=compact -XX:ShenandoahUpdateRefsEarly=off -DtargetStrings=2000000 |
|
90 * -Xlog:gc |
|
91 * TestStringDedupStress |
|
92 * |
|
93 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
94 * -XX:ShenandoahGCHeuristics=aggressive -XX:ShenandoahUpdateRefsEarly=off -DtargetStrings=2000000 |
|
95 * -Xlog:gc |
|
96 * TestStringDedupStress |
|
97 * |
|
98 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
99 * -XX:ShenandoahGCHeuristics=static -XX:ShenandoahUpdateRefsEarly=off |
|
100 * -Xlog:gc |
|
101 * TestStringDedupStress |
|
102 * |
|
103 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
104 * -XX:ShenandoahGCHeuristics=aggressive -XX:ShenandoahUpdateRefsEarly=off -XX:+ShenandoahOOMDuringEvacALot -DtargetStrings=2000000 |
|
105 * -Xlog:gc |
|
106 * TestStringDedupStress |
|
107 * |
|
108 * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+UseStringDeduplication -Xmx1g -Xlog:gc+stats |
|
109 * -XX:ShenandoahGCMode=traversal -XX:+ShenandoahOOMDuringEvacALot -DtargetStrings=2000000 |
|
110 * -Xlog:gc |
|
111 * TestStringDedupStress |
|
112 */ |
130 */ |
113 |
131 |
114 import java.lang.management.*; |
132 import java.lang.management.*; |
115 import java.lang.reflect.*; |
133 import java.lang.reflect.*; |
116 import java.util.*; |
134 import java.util.*; |