Mon, 29 Sep 2014 09:59:23 +0200
8043766: CMM Testing: 8u40 Decommit auxiliary data structures
Summary: Check that native memory is returned to the system when decommiting memory within the heap with G1.
Reviewed-by: tschatzl, jwilhelm
Contributed-by: Andrey Zakharov <andrey.x.zakharov@oracle.com>
1 #
2 # Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # This code is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation.
8 #
9 # This code is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 # version 2 for more details (a copy is included in the LICENSE file that
13 # accompanied this code).
14 #
15 # You should have received a copy of the GNU General Public License version
16 # 2 along with this work; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 #
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 # or visit www.oracle.com if you need additional information or have any
21 # questions.
22 #
24 # Profile-based Test Group Definitions
25 #
26 # These groups define the tests that cover the different possible runtimes:
27 # - compact1, compact2, compact3, full JRE, JDK
28 #
29 # In addition they support testing of the minimal VM on compact1 and compact2.
30 # Essentially this defines groups based around the specified API's and VM
31 # services available in the runtime.
32 #
33 # The groups are defined hierarchically in two forms:
34 # - The need_xxx groups list all the tests that have a dependency on
35 # a specific profile. This is either because it tests a feature in
36 # that profile, or the test infrastructure uses a feature in that
37 # profile.
38 # - The primary groups are defined in terms of the other primary groups
39 # combined with the needs_xxx groups (including and excluding them as
40 # appropriate). For example the jre can run all tests from compact3, plus
41 # those from needs_jre, but excluding those from need_jdk.
42 #
43 # The bottom group defines all the actual tests to be considered, simply
44 # by listing the top-level test directories.
45 #
46 # To use a group simply list it on the jtreg command line eg:
47 # jtreg :jdk
48 # runs all tests. While
49 # jtreg :compact2
50 # runs those tests that only require compact1 and compact2 API's.
51 #
53 # Full JDK can run all tests
54 #
55 jdk = \
56 :jre \
57 :needs_jdk
59 # Tests that require a full JDK to execute. Either they test a feature
60 # only in the JDK or they use tools that are only in the JDK. The latter
61 # can be resolved in some cases by using tools from the compile-jdk.
62 #
63 needs_jdk = \
64 gc/TestG1ZeroPGCTJcmdThreadPrint.java \
65 gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java \
66 gc/metaspace/TestMetaspacePerfCounters.java \
67 gc/metaspace/TestPerfCountersAndMemoryPools.java \
68 runtime/6819213/TestBootNativeLibraryPath.java \
69 runtime/6925573/SortMethodsTest.java \
70 runtime/7107135/Test7107135.sh \
71 runtime/7158988/FieldMonitor.java \
72 runtime/7194254/Test7194254.java \
73 runtime/jsig/Test8017498.sh \
74 runtime/Metaspace/FragmentMetaspace.java \
75 runtime/NMT/BaselineWithParameter.java \
76 runtime/NMT/JcmdBaselineDetail.java \
77 runtime/NMT/JcmdDetailDiff.java \
78 runtime/NMT/JcmdScaleDetail.java \
79 runtime/NMT/JcmdScale.java \
80 runtime/NMT/JcmdWithNMTDisabled.java \
81 runtime/NMT/MallocRoundingReportTest.java \
82 runtime/NMT/MallocSiteHashOverflow.java \
83 runtime/NMT/MallocStressTest.java \
84 runtime/NMT/MallocTestType.java \
85 runtime/NMT/MallocTrackingVerify.java \
86 runtime/NMT/ReleaseCommittedMemory.java \
87 runtime/NMT/ReleaseNoCommit.java \
88 runtime/NMT/ShutdownTwice.java \
89 runtime/NMT/SummaryAfterShutdown.java \
90 runtime/NMT/SummarySanityCheck.java \
91 runtime/NMT/ThreadedMallocTestType.java \
92 runtime/NMT/ThreadedVirtualAllocTestType.java \
93 runtime/NMT/UnsafeMallocLimit.java \
94 runtime/NMT/VirtualAllocCommitUncommitRecommit.java \
95 runtime/NMT/VirtualAllocTestType.java \
96 runtime/RedefineObject/TestRedefineObject.java \
97 runtime/Thread/TestThreadDumpMonitorContention.java \
98 runtime/XCheckJniJsig/XCheckJSig.java \
99 serviceability/attach/AttachWithStalePidFile.java \
100 serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java
103 # JRE adds further tests to compact3
104 #
105 jre = \
106 :compact3 \
107 :needs_jre \
108 -:needs_jdk
110 # Tests that require the full JRE
111 #
112 needs_jre = \
113 compiler/6852078/Test6852078.java \
114 compiler/7047069/Test7047069.java \
115 runtime/6294277/SourceDebugExtension.java \
116 runtime/ClassFile/JsrRewriting.java \
117 runtime/ClassFile/OomWhileParsingRepeatedJsr.java
119 # Compact 3 adds further tests to compact2
120 #
121 compact3 = \
122 :compact2 \
123 :needs_compact3 \
124 -:needs_jre \
125 -:needs_jdk
128 # Tests that require compact3 API's
129 #
130 needs_compact3 = \
131 compiler/whitebox/DeoptimizeMethodTest.java \
132 compiler/whitebox/SetForceInlineMethodTest.java \
133 compiler/whitebox/SetDontInlineMethodTest.java \
134 compiler/whitebox/DeoptimizeAllTest.java \
135 compiler/whitebox/MakeMethodNotCompilableTest.java \
136 compiler/whitebox/ClearMethodStateTest.java \
137 compiler/whitebox/EnqueueMethodForCompilationTest.java \
138 compiler/whitebox/IsMethodCompilableTest.java \
139 gc/6581734/Test6581734.java \
140 gc/7072527/TestFullGCCount.java \
141 gc/g1/TestHumongousAllocInitialMark.java \
142 gc/g1/TestHumongousShrinkHeap.java \
143 gc/arguments/TestG1HeapRegionSize.java \
144 gc/metaspace/TestMetaspaceMemoryPool.java \
145 gc/arguments/TestDynMinHeapFreeRatio.java \
146 gc/arguments/TestDynMaxHeapFreeRatio.java \
147 gc/g1/TestShrinkAuxiliaryData00.java \
148 gc/g1/TestShrinkAuxiliaryData05.java \
149 gc/g1/TestShrinkAuxiliaryData10.java \
150 gc/g1/TestShrinkAuxiliaryData15.java \
151 gc/g1/TestShrinkAuxiliaryData20.java \
152 gc/g1/TestShrinkAuxiliaryData25.java \
153 gc/g1/TestShrinkAuxiliaryData30.java \
154 runtime/InternalApi/ThreadCpuTimesDeadlock.java \
155 serviceability/threads/TestFalseDeadLock.java \
156 serviceability/jvmti/GetObjectSizeOverflow.java \
157 serviceability/jvmti/TestRedefineWithUnresolvedClass.java \
158 compiler/tiered/NonTieredLevelsTest.java \
159 compiler/tiered/TieredLevelsTest.java \
160 compiler/intrinsics/bmi/verifycode
162 # Compact 2 adds full VM tests
163 compact2 = \
164 :compact2_minimal \
165 :compact1 \
166 :needs_full_vm_compact2 \
167 -:needs_compact3 \
168 -:needs_jre \
169 -:needs_jdk
171 # Tests that require compact2 API's and a full VM
172 #
173 needs_full_vm_compact2 =
175 # Compact 1 adds full VM tests
176 #
177 compact1 = \
178 :compact1_minimal \
179 :needs_full_vm_compact1 \
180 -:needs_compact2 \
181 -:needs_full_vm_compact2 \
182 -:needs_compact3 \
183 -:needs_jre \
184 -:needs_jdk
186 # Tests that require compact1 API's and a full VM
187 #
188 needs_full_vm_compact1 = \
189 runtime/NMT \
190 gc/class_unloading/TestCMSClassUnloadingEnabledHWM.java \
191 gc/class_unloading/TestG1ClassUnloadingHWM.java \
192 gc/g1/TestRegionAlignment.java \
193 gc/g1/TestShrinkToOneRegion.java \
194 gc/metaspace/G1AddMetaspaceDependency.java \
195 gc/startup_warnings/TestCMS.java \
196 gc/startup_warnings/TestCMSIncrementalMode.java \
197 gc/startup_warnings/TestCMSNoIncrementalMode.java \
198 gc/startup_warnings/TestDefaultMaxRAMFraction.java \
199 gc/startup_warnings/TestDefNewCMS.java \
200 gc/startup_warnings/TestIncGC.java \
201 gc/startup_warnings/TestParallelGC.java \
202 gc/startup_warnings/TestParallelScavengeSerialOld.java \
203 gc/startup_warnings/TestParNewCMS.java \
204 gc/startup_warnings/TestParNewSerialOld.java \
205 runtime/6929067/Test6929067.sh \
206 runtime/SharedArchiveFile/SharedArchiveFile.java
208 # Minimal VM on Compact 2 adds in some compact2 tests
209 #
210 compact2_minimal = \
211 :compact1_minimal \
212 :needs_compact2 \
213 -:needs_full_vm_compact2 \
214 -:needs_compact3 \
215 -:needs_jre \
216 -:needs_jdk
218 # Tests that require compact2 API's
219 #
220 needs_compact2 = \
221 compiler/6589834/Test_ia32.java
223 # All tests that run on the most minimal configuration: Minimal VM on Compact 1
224 compact1_minimal = \
225 serviceability/ \
226 compiler/ \
227 testlibrary/ \
228 testlibrary_tests/ \
229 sanity/ \
230 runtime/ \
231 gc/ \
232 -:needs_full_vm_compact1 \
233 -:needs_full_vm_compact2 \
234 -:needs_compact2 \
235 -:needs_compact3 \
236 -:needs_jre \
237 -:needs_jdk