hotspot/src/share/vm/runtime/globals.hpp
changeset 13728 882756847a04
parent 13521 97a23be06f4e
child 13739 35cd081a64ea
--- a/hotspot/src/share/vm/runtime/globals.hpp	Fri Aug 31 16:39:35 2012 -0700
+++ b/hotspot/src/share/vm/runtime/globals.hpp	Sat Sep 01 13:25:18 2012 -0400
@@ -175,8 +175,7 @@
 define_pd_global(intx, ReservedCodeCacheSize,        32*M);
 define_pd_global(intx, CodeCacheExpansionSize,       32*K);
 define_pd_global(intx, CodeCacheMinBlockLength,      1);
-define_pd_global(uintx,PermSize,    ScaleForWordSize(4*M));
-define_pd_global(uintx,MaxPermSize, ScaleForWordSize(64*M));
+define_pd_global(uintx,MetaspaceSize,    ScaleForWordSize(4*M));
 define_pd_global(bool, NeverActAsServerClassMachine, true);
 define_pd_global(uint64_t,MaxRAM,                    1ULL*G);
 #define CI_COMPILER_COUNT 0
@@ -439,7 +438,11 @@
 #define RUNTIME_FLAGS(develop, develop_pd, product, product_pd, diagnostic, experimental, notproduct, manageable, product_rw, lp64_product) \
                                                                             \
   lp64_product(bool, UseCompressedOops, false,                              \
-            "Use 32-bit object references in 64-bit VM. "                   \
+            "Use 32-bit object references in 64-bit VM  "                   \
+            "lp64_product means flag is always constant in 32 bit VM")      \
+                                                                            \
+  lp64_product(bool, UseCompressedKlassPointers, false,                     \
+            "Use 32-bit klass pointers in 64-bit VM  "                      \
             "lp64_product means flag is always constant in 32 bit VM")      \
                                                                             \
   notproduct(bool, CheckCompressedOops, true,                               \
@@ -1188,11 +1191,6 @@
           "Decay time (in milliseconds) to re-enable bulk rebiasing of a "  \
           "type after previous bulk rebias")                                \
                                                                             \
-  develop(bool, JavaObjectsInPerm, false,                                   \
-          "controls whether Classes and interned Strings are allocated"     \
-          "in perm.  This purely intended to allow debugging issues"        \
-          "in production.")                                                 \
-                                                                            \
   /* tracing */                                                             \
                                                                             \
   notproduct(bool, TraceRuntimeCalls, false,                                \
@@ -1677,9 +1675,6 @@
   product(uintx, CMSConcMarkMultiple, 32,                                   \
           "Size (in cards) of CMS concurrent MT marking task")              \
                                                                             \
-  product(uintx, CMSRevisitStackSize, 1*M,                                  \
-          "Size of CMS KlassKlass revisit stack")                           \
-                                                                            \
   product(bool, CMSAbortSemantics, false,                                   \
           "Whether abort-on-overflow semantics is implemented")             \
                                                                             \
@@ -1697,10 +1692,6 @@
   product(bool, CMSConcurrentMTEnabled, true,                               \
           "Whether multi-threaded concurrent work enabled (if ParNewGC)")   \
                                                                             \
-  product(bool, CMSPermGenPrecleaningEnabled, true,                         \
-          "Whether concurrent precleaning enabled in perm gen"              \
-          " (effective only when CMSPrecleaningEnabled is true)")           \
-                                                                            \
   product(bool, CMSPrecleaningEnabled, true,                                \
           "Whether concurrent precleaning enabled")                         \
                                                                             \
@@ -1816,11 +1807,6 @@
           "Percentage of MinHeapFreeRatio in CMS generation that is "       \
           "allocated before a CMS collection cycle commences")              \
                                                                             \
-  product(intx, CMSTriggerPermRatio, 80,                                    \
-          "Percentage of MinHeapFreeRatio in the CMS perm generation that " \
-          "is allocated before a CMS collection cycle commences, that "     \
-          "also collects the perm generation")                              \
-                                                                            \
   product(uintx, CMSBootstrapOccupancy, 50,                                 \
           "Percentage CMS generation occupancy at which to "                \
           "initiate CMS collection for bootstrapping collection stats")     \
@@ -1836,11 +1822,6 @@
           "not just one of the generations (e.g., G1). A value of 0 "       \
           "denotes 'do constant GC cycles'.")                               \
                                                                             \
-  product(intx, CMSInitiatingPermOccupancyFraction, -1,                     \
-          "Percentage CMS perm generation occupancy to start a "            \
-          "CMScollection cycle. A negative value means that "               \
-          "CMSTriggerPermRatio is used")                                    \
-                                                                            \
   product(bool, UseCMSInitiatingOccupancyOnly, false,                       \
           "Only use occupancy as a crierion for starting a CMS collection") \
                                                                             \
@@ -1900,6 +1881,29 @@
           "Number of ObjArray elements to push onto the marking stack"      \
           "before pushing a continuation entry")                            \
                                                                             \
+  develop(bool, MetadataAllocationFailALot, false,                          \
+          "Fail metadata allocations at intervals controlled by "           \
+          "MetadataAllocationFailALotInterval")                             \
+                                                                            \
+  develop(uintx, MetadataAllocationFailALotInterval, 1000,                  \
+          "metadata allocation failure alot interval")                      \
+                                                                            \
+  develop(bool, MetaDataDeallocateALot, false,                              \
+          "Deallocation bunches of metadata at intervals controlled by "    \
+          "MetaDataAllocateALotInterval")                                   \
+                                                                            \
+  develop(uintx, MetaDataDeallocateALotInterval, 100,                       \
+          "Metadata deallocation alot interval")                            \
+                                                                            \
+  develop(bool, TraceMetadataChunkAllocation, false,                        \
+          "Trace humongous metadata allocations")                           \
+                                                                            \
+  product(bool, TraceMetadataHumongousAllocation, false,                    \
+          "Trace humongous metadata allocations")                           \
+                                                                            \
+  develop(bool, TraceMetavirtualspaceAllocation, false,                     \
+          "Trace humongous metadata allocations")                           \
+                                                                            \
   notproduct(bool, ExecuteInternalVMTests, false,                           \
           "Enable execution of internal VM tests.")                         \
                                                                             \
@@ -1920,9 +1924,6 @@
   product(bool, TLABStats, true,                                            \
           "Print various TLAB related information")                         \
                                                                             \
-  product(bool, PrintRevisitStats, false,                                   \
-          "Print revisit (klass and MDO) stack related information")        \
-                                                                            \
   EMBEDDED_ONLY(product(bool, LowMemoryProtection, true,                    \
           "Enable LowMemoryProtection"))                                    \
                                                                             \
@@ -2023,12 +2024,6 @@
   product(uintx, SurvivorPadding, 3,                                        \
           "How much buffer to keep for survivor overflow")                  \
                                                                             \
-  product(uintx, AdaptivePermSizeWeight, 20,                                \
-          "Weight for perm gen exponential resizing, between 0 and 100")    \
-                                                                            \
-  product(uintx, PermGenPadding, 3,                                         \
-          "How much buffer to keep for perm gen sizing")                    \
-                                                                            \
   product(uintx, ThresholdTolerance, 10,                                    \
           "Allowed collection cost difference between generations")         \
                                                                             \
@@ -2216,6 +2211,12 @@
   product_rw(bool, TraceLoaderConstraints, false,                           \
           "Trace loader constraints")                                       \
                                                                             \
+  develop(bool, TraceClassLoaderData, false,                                \
+          "Trace class loader loader_data lifetime")                        \
+                                                                            \
+  product(uintx, InitialBootClassLoaderMetaspaceSize, 3*M,                  \
+          "Initial size of the boot class loader data metaspace")           \
+                                                                            \
   product(bool, TraceGen0Time, false,                                       \
           "Trace accumulated time for Gen 0 collection")                    \
                                                                             \
@@ -2986,11 +2987,15 @@
           "Additional size added to desired new generation size per "       \
           "non-daemon thread (in bytes)")                                   \
                                                                             \
-  product_pd(uintx, PermSize,                                               \
-          "Initial size of permanent generation (in bytes)")                \
-                                                                            \
-  product_pd(uintx, MaxPermSize,                                            \
-          "Maximum size of permanent generation (in bytes)")                \
+  product_pd(uintx, MetaspaceSize,                                          \
+          "Initial size of Metaspaces (in bytes)")                          \
+                                                                            \
+  product(uintx, MaxMetaspaceSize, max_uintx,                               \
+          "Maximum size of Metaspaces (in bytes)")                          \
+                                                                            \
+  product(uintx, ClassMetaspaceSize, NOT_LP64(1*M) LP64_ONLY(512*M),        \
+          "Maximum size of InstanceKlass area in Metaspace used for "       \
+          "UseCompressedKlassPointers")                                     \
                                                                             \
   product(uintx, MinHeapFreeRatio,    40,                                   \
           "Min percentage of heap free after GC to avoid expansion")        \
@@ -3004,10 +3009,10 @@
   product(uintx, MinHeapDeltaBytes, ScaleForWordSize(128*K),                \
           "Min change in heap space due to GC (in bytes)")                  \
                                                                             \
-  product(uintx, MinPermHeapExpansion, ScaleForWordSize(256*K),             \
+  product(uintx, MinMetaspaceExpansion, ScaleForWordSize(256*K),             \
           "Min expansion of permanent heap (in bytes)")                     \
                                                                             \
-  product(uintx, MaxPermHeapExpansion, ScaleForWordSize(4*M),               \
+  product(uintx, MaxMetaspaceExpansion, ScaleForWordSize(4*M),               \
           "Max expansion of permanent heap without full GC (in bytes)")     \
                                                                             \
   product(intx, QueuedAllocationWarningCount, 0,                            \
@@ -3038,10 +3043,6 @@
           "either completely full or completely empty.  Par compact also"   \
           "has a smaller default value; see arguments.cpp.")                \
                                                                             \
-  product(uintx, PermMarkSweepDeadRatio,    20,                             \
-          "Percentage (0-100) of the perm gen allowed as dead wood."        \
-          "See MarkSweepDeadRatio for collector-specific comments.")        \
-                                                                            \
   product(intx, MarkSweepAlwaysCompactCount,     4,                         \
           "How often should we fully compact the heap (ignoring the dead "  \
           "space parameters)")                                              \
@@ -3523,29 +3524,20 @@
   product(bool, PrintSharedSpaces, false,                                   \
           "Print usage of shared spaces")                                   \
                                                                             \
-  product(uintx, SharedDummyBlockSize, 512*M,                               \
-          "Size of dummy block used to shift heap addresses (in bytes)")    \
-                                                                            \
-  product(uintx, SharedReadWriteSize,  NOT_LP64(12*M) LP64_ONLY(13*M),      \
+  product(uintx, SharedReadWriteSize,  NOT_LP64(12*M) LP64_ONLY(16*M),      \
           "Size of read-write space in permanent generation (in bytes)")    \
                                                                             \
-  product(uintx, SharedReadOnlySize,   10*M,                                \
+  product(uintx, SharedReadOnlySize,  NOT_LP64(12*M) LP64_ONLY(16*M),       \
           "Size of read-only space in permanent generation (in bytes)")     \
                                                                             \
-  product(uintx, SharedMiscDataSize, NOT_LP64(4*M) LP64_ONLY(5*M) NOT_PRODUCT(+1*M),       \
+  product(uintx, SharedMiscDataSize,    NOT_LP64(2*M) LP64_ONLY(4*M),       \
           "Size of the shared data area adjacent to the heap (in bytes)")   \
                                                                             \
-  product(uintx, SharedMiscCodeSize,    4*M,                                \
+  product(uintx, SharedMiscCodeSize,    120*K,                              \
           "Size of the shared code area adjacent to the heap (in bytes)")   \
                                                                             \
-  diagnostic(bool, SharedOptimizeColdStart, true,                           \
-          "At dump time, order shared objects to achieve better "           \
-          "cold startup time.")                                             \
-                                                                            \
-  develop(intx, SharedOptimizeColdStartPolicy, 2,                           \
-          "Reordering policy for SharedOptimizeColdStart "                  \
-          "0=favor classload-time locality, 1=balanced, "                   \
-          "2=favor runtime locality")                                       \
+  product(uintx, SharedDummyBlockSize, 0,                                   \
+          "Size of dummy block used to shift heap addresses (in bytes)")    \
                                                                             \
   diagnostic(bool, SharedSkipVerify, false,                                 \
           "Skip assert() and verify() which page-in unwanted shared "       \