--- 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 " \