comparison src/share/vm/runtime/globals.hpp @ 6948:e522a00b91aa

Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/ after NPG - C++ build works
author Doug Simon <doug.simon@oracle.com>
date Mon, 12 Nov 2012 23:14:12 +0100
parents c38f13903fdf ec204374e626
children 2cb439954abf
comparison
equal deleted inserted replaced
6711:ae13cc658b80 6948:e522a00b91aa
173 define_pd_global(intx, InlineUnsafeOps, true); 173 define_pd_global(intx, InlineUnsafeOps, true);
174 define_pd_global(intx, InitialCodeCacheSize, 160*K); 174 define_pd_global(intx, InitialCodeCacheSize, 160*K);
175 define_pd_global(intx, ReservedCodeCacheSize, 32*M); 175 define_pd_global(intx, ReservedCodeCacheSize, 32*M);
176 define_pd_global(intx, CodeCacheExpansionSize, 32*K); 176 define_pd_global(intx, CodeCacheExpansionSize, 32*K);
177 define_pd_global(intx, CodeCacheMinBlockLength, 1); 177 define_pd_global(intx, CodeCacheMinBlockLength, 1);
178 define_pd_global(uintx,PermSize, ScaleForWordSize(4*M)); 178 define_pd_global(uintx,MetaspaceSize, ScaleForWordSize(4*M));
179 define_pd_global(uintx,MaxPermSize, ScaleForWordSize(64*M));
180 define_pd_global(bool, NeverActAsServerClassMachine, true); 179 define_pd_global(bool, NeverActAsServerClassMachine, true);
181 define_pd_global(uint64_t,MaxRAM, 1ULL*G); 180 define_pd_global(uint64_t,MaxRAM, 1ULL*G);
182 #define CI_COMPILER_COUNT 0 181 #define CI_COMPILER_COUNT 0
183 #else 182 #else
184 183
437 // it can be done in the same way as product_rw. 436 // it can be done in the same way as product_rw.
438 437
439 #define RUNTIME_FLAGS(develop, develop_pd, product, product_pd, diagnostic, experimental, notproduct, manageable, product_rw, lp64_product) \ 438 #define RUNTIME_FLAGS(develop, develop_pd, product, product_pd, diagnostic, experimental, notproduct, manageable, product_rw, lp64_product) \
440 \ 439 \
441 lp64_product(bool, UseCompressedOops, false, \ 440 lp64_product(bool, UseCompressedOops, false, \
442 "Use 32-bit object references in 64-bit VM. " \ 441 "Use 32-bit object references in 64-bit VM " \
442 "lp64_product means flag is always constant in 32 bit VM") \
443 \
444 lp64_product(bool, UseCompressedKlassPointers, false, \
445 "Use 32-bit klass pointers in 64-bit VM " \
443 "lp64_product means flag is always constant in 32 bit VM") \ 446 "lp64_product means flag is always constant in 32 bit VM") \
444 \ 447 \
445 notproduct(bool, CheckCompressedOops, true, \ 448 notproduct(bool, CheckCompressedOops, true, \
446 "generate checks in encoding/decoding code in debug VM") \ 449 "generate checks in encoding/decoding code in debug VM") \
447 \ 450 \
468 "Use lwsync instruction if true, else use slower sync") \ 471 "Use lwsync instruction if true, else use slower sync") \
469 \ 472 \
470 develop(bool, CleanChunkPoolAsync, falseInEmbedded, \ 473 develop(bool, CleanChunkPoolAsync, falseInEmbedded, \
471 "Whether to clean the chunk pool asynchronously") \ 474 "Whether to clean the chunk pool asynchronously") \
472 \ 475 \
473 /* Temporary: See 6948537 */ \ 476 /* Temporary: See 6948537 */ \
474 experimental(bool, UseMemSetInBOT, true, \ 477 experimental(bool, UseMemSetInBOT, true, \
475 "(Unstable) uses memset in BOT updates in GC code") \ 478 "(Unstable) uses memset in BOT updates in GC code") \
476 \ 479 \
477 diagnostic(bool, UnlockDiagnosticVMOptions, trueInDebug, \ 480 diagnostic(bool, UnlockDiagnosticVMOptions, trueInDebug, \
478 "Enable normal processing of flags relating to field diagnostics")\ 481 "Enable normal processing of flags relating to field diagnostics")\
528 "True for register window machines (sparc/ia64)") \ 531 "True for register window machines (sparc/ia64)") \
529 \ 532 \
530 product(intx, UseSSE, 99, \ 533 product(intx, UseSSE, 99, \
531 "Highest supported SSE instructions set on x86/x64") \ 534 "Highest supported SSE instructions set on x86/x64") \
532 \ 535 \
536 product(bool, UseAES, false, \
537 "Control whether AES instructions can be used on x86/x64") \
538 \
533 product(uintx, LargePageSizeInBytes, 0, \ 539 product(uintx, LargePageSizeInBytes, 0, \
534 "Large page size (0 to let VM choose the page size") \ 540 "Large page size (0 to let VM choose the page size") \
535 \ 541 \
536 product(uintx, LargePageHeapSizeThreshold, 128*M, \ 542 product(uintx, LargePageHeapSizeThreshold, 128*M, \
537 "Use large pages if max heap is at least this big") \ 543 "Use large pages if max heap is at least this big") \
638 notproduct(bool, StressCriticalJNINatives, false, \ 644 notproduct(bool, StressCriticalJNINatives, false, \
639 "Exercise register saving code in critical natives") \ 645 "Exercise register saving code in critical natives") \
640 \ 646 \
641 product(bool, UseSSE42Intrinsics, false, \ 647 product(bool, UseSSE42Intrinsics, false, \
642 "SSE4.2 versions of intrinsics") \ 648 "SSE4.2 versions of intrinsics") \
649 \
650 product(bool, UseAESIntrinsics, false, \
651 "use intrinsics for AES versions of crypto") \
643 \ 652 \
644 develop(bool, TraceCallFixup, false, \ 653 develop(bool, TraceCallFixup, false, \
645 "traces all call fixups") \ 654 "traces all call fixups") \
646 \ 655 \
647 product(bool, DeoptimizeALot, false, \ 656 product(bool, DeoptimizeALot, false, \
855 "Approximate segment size when generating a segmented heap dump") \ 864 "Approximate segment size when generating a segmented heap dump") \
856 \ 865 \
857 develop(bool, BreakAtWarning, false, \ 866 develop(bool, BreakAtWarning, false, \
858 "Execute breakpoint upon encountering VM warning") \ 867 "Execute breakpoint upon encountering VM warning") \
859 \ 868 \
860 product_pd(bool, UseVectoredExceptions, \
861 "Temp Flag - Use Vectored Exceptions rather than SEH (Windows Only)") \
862 \
863 develop(bool, TraceVMOperation, false, \ 869 develop(bool, TraceVMOperation, false, \
864 "Trace vm operations") \ 870 "Trace vm operations") \
865 \ 871 \
866 develop(bool, UseFakeTimers, false, \ 872 develop(bool, UseFakeTimers, false, \
867 "Tells whether the VM should use system time or a fake timer") \ 873 "Tells whether the VM should use system time or a fake timer") \
868 \ 874 \
869 product(ccstr, NativeMemoryTracking, "off", \ 875 product(ccstr, NativeMemoryTracking, "off", \
870 "Native memory tracking options") \ 876 "Native memory tracking options") \
877 \
878 diagnostic(bool, PrintNMTStatistics, false, \
879 "Print native memory tracking summary data if it is on") \
871 \ 880 \
872 diagnostic(bool, LogCompilation, false, \ 881 diagnostic(bool, LogCompilation, false, \
873 "Log compilation activity in detail to hotspot.log or LogFile") \ 882 "Log compilation activity in detail to hotspot.log or LogFile") \
874 \ 883 \
875 product(bool, PrintCompilation, false, \ 884 product(bool, PrintCompilation, false, \
1004 "dictionary") \ 1013 "dictionary") \
1005 \ 1014 \
1006 product(bool, ClassUnloading, true, \ 1015 product(bool, ClassUnloading, true, \
1007 "Do unloading of classes") \ 1016 "Do unloading of classes") \
1008 \ 1017 \
1009 diagnostic(bool, LinkWellKnownClasses, false, \
1010 "Resolve a well known class as soon as its name is seen") \
1011 \
1012 develop(bool, DisableStartThread, false, \ 1018 develop(bool, DisableStartThread, false, \
1013 "Disable starting of additional Java threads " \ 1019 "Disable starting of additional Java threads " \
1014 "(for debugging only)") \ 1020 "(for debugging only)") \
1015 \ 1021 \
1016 develop(bool, MemProfiling, false, \ 1022 develop(bool, MemProfiling, false, \
1070 \ 1076 \
1071 product(intx, MonitorBound, 0, "Bound Monitor population") \ 1077 product(intx, MonitorBound, 0, "Bound Monitor population") \
1072 \ 1078 \
1073 product(bool, MonitorInUseLists, false, "Track Monitors for Deflation") \ 1079 product(bool, MonitorInUseLists, false, "Track Monitors for Deflation") \
1074 \ 1080 \
1075 product(intx, Atomics, 0, \
1076 "(Unsafe,Unstable) Diagnostic - Controls emission of atomics") \
1077 \
1078 product(intx, SyncFlags, 0, "(Unsafe,Unstable) Experimental Sync flags" ) \ 1081 product(intx, SyncFlags, 0, "(Unsafe,Unstable) Experimental Sync flags" ) \
1079 \ 1082 \
1080 product(intx, SyncVerbose, 0, "(Unstable)" ) \ 1083 product(intx, SyncVerbose, 0, "(Unstable)" ) \
1081 \ 1084 \
1082 product(intx, ClearFPUAtPark, 0, "(Unsafe,Unstable)" ) \ 1085 product(intx, ClearFPUAtPark, 0, "(Unsafe,Unstable)" ) \
1197 "revoke biases of all objects in the heap of that type") \ 1200 "revoke biases of all objects in the heap of that type") \
1198 \ 1201 \
1199 product(intx, BiasedLockingDecayTime, 25000, \ 1202 product(intx, BiasedLockingDecayTime, 25000, \
1200 "Decay time (in milliseconds) to re-enable bulk rebiasing of a " \ 1203 "Decay time (in milliseconds) to re-enable bulk rebiasing of a " \
1201 "type after previous bulk rebias") \ 1204 "type after previous bulk rebias") \
1202 \
1203 develop(bool, JavaObjectsInPerm, false, \
1204 "controls whether Classes and interned Strings are allocated" \
1205 "in perm. This purely intended to allow debugging issues" \
1206 "in production.") \
1207 \ 1205 \
1208 /* tracing */ \ 1206 /* tracing */ \
1209 \ 1207 \
1210 notproduct(bool, TraceRuntimeCalls, false, \ 1208 notproduct(bool, TraceRuntimeCalls, false, \
1211 "Trace run-time calls") \ 1209 "Trace run-time calls") \
1635 \ 1633 \
1636 develop(intx, CMSDictionaryChoice, 0, \ 1634 develop(intx, CMSDictionaryChoice, 0, \
1637 "Use BinaryTreeDictionary as default in the CMS generation") \ 1635 "Use BinaryTreeDictionary as default in the CMS generation") \
1638 \ 1636 \
1639 product(uintx, CMSIndexedFreeListReplenish, 4, \ 1637 product(uintx, CMSIndexedFreeListReplenish, 4, \
1640 "Replenish an indexed free list with this number of chunks") \ 1638 "Replenish an indexed free list with this number of chunks") \
1641 \ 1639 \
1642 product(bool, CMSReplenishIntermediate, true, \ 1640 product(bool, CMSReplenishIntermediate, true, \
1643 "Replenish all intermediate free-list caches") \ 1641 "Replenish all intermediate free-list caches") \
1644 \ 1642 \
1645 product(bool, CMSSplitIndexedFreeListBlocks, true, \ 1643 product(bool, CMSSplitIndexedFreeListBlocks, true, \
1687 "Size (in cards) of CMS parallel rescan task") \ 1685 "Size (in cards) of CMS parallel rescan task") \
1688 \ 1686 \
1689 product(uintx, CMSConcMarkMultiple, 32, \ 1687 product(uintx, CMSConcMarkMultiple, 32, \
1690 "Size (in cards) of CMS concurrent MT marking task") \ 1688 "Size (in cards) of CMS concurrent MT marking task") \
1691 \ 1689 \
1692 product(uintx, CMSRevisitStackSize, 1*M, \
1693 "Size of CMS KlassKlass revisit stack") \
1694 \
1695 product(bool, CMSAbortSemantics, false, \ 1690 product(bool, CMSAbortSemantics, false, \
1696 "Whether abort-on-overflow semantics is implemented") \ 1691 "Whether abort-on-overflow semantics is implemented") \
1697 \ 1692 \
1698 product(bool, CMSParallelRemarkEnabled, true, \ 1693 product(bool, CMSParallelRemarkEnabled, true, \
1699 "Whether parallel remark enabled (only if ParNewGC)") \ 1694 "Whether parallel remark enabled (only if ParNewGC)") \
1707 " (effective only if CMSParallelSurvivorRemarkEnabled)") \ 1702 " (effective only if CMSParallelSurvivorRemarkEnabled)") \
1708 \ 1703 \
1709 product(bool, CMSConcurrentMTEnabled, true, \ 1704 product(bool, CMSConcurrentMTEnabled, true, \
1710 "Whether multi-threaded concurrent work enabled (if ParNewGC)") \ 1705 "Whether multi-threaded concurrent work enabled (if ParNewGC)") \
1711 \ 1706 \
1712 product(bool, CMSPermGenPrecleaningEnabled, true, \
1713 "Whether concurrent precleaning enabled in perm gen" \
1714 " (effective only when CMSPrecleaningEnabled is true)") \
1715 \
1716 product(bool, CMSPrecleaningEnabled, true, \ 1707 product(bool, CMSPrecleaningEnabled, true, \
1717 "Whether concurrent precleaning enabled") \ 1708 "Whether concurrent precleaning enabled") \
1718 \ 1709 \
1719 product(uintx, CMSPrecleanIter, 3, \ 1710 product(uintx, CMSPrecleanIter, 3, \
1720 "Maximum number of precleaning iteration passes") \ 1711 "Maximum number of precleaning iteration passes") \
1825 "Enable balancing of reference processing queues") \ 1816 "Enable balancing of reference processing queues") \
1826 \ 1817 \
1827 product(intx, CMSTriggerRatio, 80, \ 1818 product(intx, CMSTriggerRatio, 80, \
1828 "Percentage of MinHeapFreeRatio in CMS generation that is " \ 1819 "Percentage of MinHeapFreeRatio in CMS generation that is " \
1829 "allocated before a CMS collection cycle commences") \ 1820 "allocated before a CMS collection cycle commences") \
1830 \
1831 product(intx, CMSTriggerPermRatio, 80, \
1832 "Percentage of MinHeapFreeRatio in the CMS perm generation that " \
1833 "is allocated before a CMS collection cycle commences, that " \
1834 "also collects the perm generation") \
1835 \ 1821 \
1836 product(uintx, CMSBootstrapOccupancy, 50, \ 1822 product(uintx, CMSBootstrapOccupancy, 50, \
1837 "Percentage CMS generation occupancy at which to " \ 1823 "Percentage CMS generation occupancy at which to " \
1838 "initiate CMS collection for bootstrapping collection stats") \ 1824 "initiate CMS collection for bootstrapping collection stats") \
1839 \ 1825 \
1846 "concurrent GC cycle. It us used by GCs that trigger a " \ 1832 "concurrent GC cycle. It us used by GCs that trigger a " \
1847 "concurrent GC cycle based on the occupancy of the entire heap, " \ 1833 "concurrent GC cycle based on the occupancy of the entire heap, " \
1848 "not just one of the generations (e.g., G1). A value of 0 " \ 1834 "not just one of the generations (e.g., G1). A value of 0 " \
1849 "denotes 'do constant GC cycles'.") \ 1835 "denotes 'do constant GC cycles'.") \
1850 \ 1836 \
1851 product(intx, CMSInitiatingPermOccupancyFraction, -1, \
1852 "Percentage CMS perm generation occupancy to start a " \
1853 "CMScollection cycle. A negative value means that " \
1854 "CMSTriggerPermRatio is used") \
1855 \
1856 product(bool, UseCMSInitiatingOccupancyOnly, false, \ 1837 product(bool, UseCMSInitiatingOccupancyOnly, false, \
1857 "Only use occupancy as a crierion for starting a CMS collection") \ 1838 "Only use occupancy as a crierion for starting a CMS collection") \
1858 \ 1839 \
1859 product(intx, CMSIsTooFullPercentage, 98, \ 1840 product(intx, CMSIsTooFullPercentage, 98, \
1860 "An absolute ceiling above which CMS will always consider the " \ 1841 "An absolute ceiling above which CMS will always consider the " \
1910 \ 1891 \
1911 develop(uintx, ObjArrayMarkingStride, 512, \ 1892 develop(uintx, ObjArrayMarkingStride, 512, \
1912 "Number of ObjArray elements to push onto the marking stack" \ 1893 "Number of ObjArray elements to push onto the marking stack" \
1913 "before pushing a continuation entry") \ 1894 "before pushing a continuation entry") \
1914 \ 1895 \
1896 develop(bool, MetadataAllocationFailALot, false, \
1897 "Fail metadata allocations at intervals controlled by " \
1898 "MetadataAllocationFailALotInterval") \
1899 \
1900 develop(uintx, MetadataAllocationFailALotInterval, 1000, \
1901 "metadata allocation failure alot interval") \
1902 \
1903 develop(bool, MetaDataDeallocateALot, false, \
1904 "Deallocation bunches of metadata at intervals controlled by " \
1905 "MetaDataAllocateALotInterval") \
1906 \
1907 develop(uintx, MetaDataDeallocateALotInterval, 100, \
1908 "Metadata deallocation alot interval") \
1909 \
1910 develop(bool, TraceMetadataChunkAllocation, false, \
1911 "Trace humongous metadata allocations") \
1912 \
1913 product(bool, TraceMetadataHumongousAllocation, false, \
1914 "Trace humongous metadata allocations") \
1915 \
1916 develop(bool, TraceMetavirtualspaceAllocation, false, \
1917 "Trace humongous metadata allocations") \
1918 \
1915 notproduct(bool, ExecuteInternalVMTests, false, \ 1919 notproduct(bool, ExecuteInternalVMTests, false, \
1916 "Enable execution of internal VM tests.") \ 1920 "Enable execution of internal VM tests.") \
1917 \ 1921 \
1918 product_pd(bool, UseTLAB, "Use thread-local object allocation") \ 1922 product_pd(bool, UseTLAB, "Use thread-local object allocation") \
1919 \ 1923 \
1929 product(bool, PrintTLAB, false, \ 1933 product(bool, PrintTLAB, false, \
1930 "Print various TLAB related information") \ 1934 "Print various TLAB related information") \
1931 \ 1935 \
1932 product(bool, TLABStats, true, \ 1936 product(bool, TLABStats, true, \
1933 "Print various TLAB related information") \ 1937 "Print various TLAB related information") \
1934 \
1935 product(bool, PrintRevisitStats, false, \
1936 "Print revisit (klass and MDO) stack related information") \
1937 \ 1938 \
1938 EMBEDDED_ONLY(product(bool, LowMemoryProtection, true, \ 1939 EMBEDDED_ONLY(product(bool, LowMemoryProtection, true, \
1939 "Enable LowMemoryProtection")) \ 1940 "Enable LowMemoryProtection")) \
1940 \ 1941 \
1941 product_pd(bool, NeverActAsServerClassMachine, \ 1942 product_pd(bool, NeverActAsServerClassMachine, \
2033 "How much buffer to keep for promotion failure") \ 2034 "How much buffer to keep for promotion failure") \
2034 \ 2035 \
2035 product(uintx, SurvivorPadding, 3, \ 2036 product(uintx, SurvivorPadding, 3, \
2036 "How much buffer to keep for survivor overflow") \ 2037 "How much buffer to keep for survivor overflow") \
2037 \ 2038 \
2038 product(uintx, AdaptivePermSizeWeight, 20, \
2039 "Weight for perm gen exponential resizing, between 0 and 100") \
2040 \
2041 product(uintx, PermGenPadding, 3, \
2042 "How much buffer to keep for perm gen sizing") \
2043 \
2044 product(uintx, ThresholdTolerance, 10, \ 2039 product(uintx, ThresholdTolerance, 10, \
2045 "Allowed collection cost difference between generations") \ 2040 "Allowed collection cost difference between generations") \
2046 \ 2041 \
2047 product(uintx, AdaptiveSizePolicyCollectionCostMargin, 50, \ 2042 product(uintx, AdaptiveSizePolicyCollectionCostMargin, 50, \
2048 "If collection costs are within margin, reduce both by full " \ 2043 "If collection costs are within margin, reduce both by full " \
2064 "Supplement to TenuredGenerationSizeIncrement used at startup") \ 2059 "Supplement to TenuredGenerationSizeIncrement used at startup") \
2065 \ 2060 \
2066 product(uintx, TenuredGenerationSizeSupplementDecay, 2, \ 2061 product(uintx, TenuredGenerationSizeSupplementDecay, 2, \
2067 "Decay factor to TenuredGenerationSizeIncrement") \ 2062 "Decay factor to TenuredGenerationSizeIncrement") \
2068 \ 2063 \
2069 product(uintx, MaxGCPauseMillis, max_uintx, \ 2064 product(uintx, MaxGCPauseMillis, max_uintx, \
2070 "Adaptive size policy maximum GC pause time goal in msec, " \ 2065 "Adaptive size policy maximum GC pause time goal in msec, " \
2071 "or (G1 Only) the max. GC time per MMU time slice") \ 2066 "or (G1 Only) the max. GC time per MMU time slice") \
2072 \ 2067 \
2073 product(uintx, GCPauseIntervalMillis, 0, \ 2068 product(uintx, GCPauseIntervalMillis, 0, \
2074 "Time slice for MMU specification") \ 2069 "Time slice for MMU specification") \
2226 "Trace unloading of classes") \ 2221 "Trace unloading of classes") \
2227 \ 2222 \
2228 product_rw(bool, TraceLoaderConstraints, false, \ 2223 product_rw(bool, TraceLoaderConstraints, false, \
2229 "Trace loader constraints") \ 2224 "Trace loader constraints") \
2230 \ 2225 \
2226 develop(bool, TraceClassLoaderData, false, \
2227 "Trace class loader loader_data lifetime") \
2228 \
2229 product(uintx, InitialBootClassLoaderMetaspaceSize, 3*M, \
2230 "Initial size of the boot class loader data metaspace") \
2231 \
2231 product(bool, TraceGen0Time, false, \ 2232 product(bool, TraceGen0Time, false, \
2232 "Trace accumulated time for Gen 0 collection") \ 2233 "Trace accumulated time for Gen 0 collection") \
2233 \ 2234 \
2234 product(bool, TraceGen1Time, false, \ 2235 product(bool, TraceGen1Time, false, \
2235 "Trace accumulated time for Gen 1 collection") \ 2236 "Trace accumulated time for Gen 1 collection") \
2272 "Trace actions of the GC task manager") \ 2273 "Trace actions of the GC task manager") \
2273 \ 2274 \
2274 develop(bool, TraceGCTaskQueue, false, \ 2275 develop(bool, TraceGCTaskQueue, false, \
2275 "Trace actions of the GC task queues") \ 2276 "Trace actions of the GC task queues") \
2276 \ 2277 \
2277 diagnostic(bool, TraceGCTaskThread, false, \ 2278 diagnostic(bool, TraceGCTaskThread, false, \
2278 "Trace actions of the GC task threads") \ 2279 "Trace actions of the GC task threads") \
2279 \ 2280 \
2280 product(bool, PrintParallelOldGCPhaseTimes, false, \ 2281 product(bool, PrintParallelOldGCPhaseTimes, false, \
2281 "Print the time taken by each parallel old gc phase." \ 2282 "Print the time taken by each parallel old gc phase." \
2282 "PrintGCDetails must also be enabled.") \ 2283 "PrintGCDetails must also be enabled.") \
2338 "collect timing information for compilation") \ 2339 "collect timing information for compilation") \
2339 \ 2340 \
2340 develop(bool, CITimeEach, false, \ 2341 develop(bool, CITimeEach, false, \
2341 "display timing information after each successful compilation") \ 2342 "display timing information after each successful compilation") \
2342 \ 2343 \
2343 develop(bool, CICountOSR, true, \ 2344 develop(bool, CICountOSR, false, \
2344 "use a separate counter when assigning ids to osr compilations") \ 2345 "use a separate counter when assigning ids to osr compilations") \
2345 \ 2346 \
2346 develop(bool, CICompileNatives, true, \ 2347 develop(bool, CICompileNatives, true, \
2347 "compile native methods if supported by the compiler") \ 2348 "compile native methods if supported by the compiler") \
2348 \ 2349 \
2790 "(0 means none)")) \ 2791 "(0 means none)")) \
2791 \ 2792 \
2792 product(intx, SafepointTimeoutDelay, 10000, \ 2793 product(intx, SafepointTimeoutDelay, 10000, \
2793 "Delay in milliseconds for option SafepointTimeout") \ 2794 "Delay in milliseconds for option SafepointTimeout") \
2794 \ 2795 \
2795 product(intx, NmethodSweepFraction, 16, \ 2796 product(intx, NmethodSweepFraction, 16, \
2796 "Number of invocations of sweeper to cover all nmethods") \ 2797 "Number of invocations of sweeper to cover all nmethods") \
2797 \ 2798 \
2798 product(intx, NmethodSweepCheckInterval, 5, \ 2799 product(intx, NmethodSweepCheckInterval, 5, \
2799 "Compilers wake up every n seconds to possibly sweep nmethods") \ 2800 "Compilers wake up every n seconds to possibly sweep nmethods") \
2800 \ 2801 \
2913 \ 2914 \
2914 diagnostic(intx, MallocVerifyStart, 0, \ 2915 diagnostic(intx, MallocVerifyStart, 0, \
2915 "if non-zero, start verifying C heap after Nth call to " \ 2916 "if non-zero, start verifying C heap after Nth call to " \
2916 "malloc/realloc/free") \ 2917 "malloc/realloc/free") \
2917 \ 2918 \
2918 product_pd(intx, TypeProfileWidth, \ 2919 product(intx, TypeProfileWidth, 2, \
2919 "number of receiver types to record in call/cast profile") \ 2920 "number of receiver types to record in call/cast profile") \
2920 \ 2921 \
2921 develop(intx, BciProfileWidth, 2, \ 2922 develop(intx, BciProfileWidth, 2, \
2922 "number of return bci's to record in ret profile") \ 2923 "number of return bci's to record in ret profile") \
2923 \ 2924 \
2999 \ 3000 \
3000 product_pd(uintx, NewSizeThreadIncrease, \ 3001 product_pd(uintx, NewSizeThreadIncrease, \
3001 "Additional size added to desired new generation size per " \ 3002 "Additional size added to desired new generation size per " \
3002 "non-daemon thread (in bytes)") \ 3003 "non-daemon thread (in bytes)") \
3003 \ 3004 \
3004 product_pd(uintx, PermSize, \ 3005 product_pd(uintx, MetaspaceSize, \
3005 "Initial size of permanent generation (in bytes)") \ 3006 "Initial size of Metaspaces (in bytes)") \
3006 \ 3007 \
3007 product_pd(uintx, MaxPermSize, \ 3008 product(uintx, MaxMetaspaceSize, max_uintx, \
3008 "Maximum size of permanent generation (in bytes)") \ 3009 "Maximum size of Metaspaces (in bytes)") \
3010 \
3011 product(uintx, ClassMetaspaceSize, 2*M, \
3012 "Maximum size of InstanceKlass area in Metaspace used for " \
3013 "UseCompressedKlassPointers") \
3009 \ 3014 \
3010 product(uintx, MinHeapFreeRatio, 40, \ 3015 product(uintx, MinHeapFreeRatio, 40, \
3011 "Min percentage of heap free after GC to avoid expansion") \ 3016 "Min percentage of heap free after GC to avoid expansion") \
3012 \ 3017 \
3013 product(uintx, MaxHeapFreeRatio, 70, \ 3018 product(uintx, MaxHeapFreeRatio, 70, \
3017 "Number of milliseconds per MB of free space in the heap") \ 3022 "Number of milliseconds per MB of free space in the heap") \
3018 \ 3023 \
3019 product(uintx, MinHeapDeltaBytes, ScaleForWordSize(128*K), \ 3024 product(uintx, MinHeapDeltaBytes, ScaleForWordSize(128*K), \
3020 "Min change in heap space due to GC (in bytes)") \ 3025 "Min change in heap space due to GC (in bytes)") \
3021 \ 3026 \
3022 product(uintx, MinPermHeapExpansion, ScaleForWordSize(256*K), \ 3027 product(uintx, MinMetaspaceExpansion, ScaleForWordSize(256*K), \
3023 "Min expansion of permanent heap (in bytes)") \ 3028 "Min expansion of permanent heap (in bytes)") \
3024 \ 3029 \
3025 product(uintx, MaxPermHeapExpansion, ScaleForWordSize(4*M), \ 3030 product(uintx, MaxMetaspaceExpansion, ScaleForWordSize(4*M), \
3026 "Max expansion of permanent heap without full GC (in bytes)") \ 3031 "Max expansion of permanent heap without full GC (in bytes)") \
3027 \ 3032 \
3028 product(intx, QueuedAllocationWarningCount, 0, \ 3033 product(intx, QueuedAllocationWarningCount, 0, \
3029 "Number of times an allocation that queues behind a GC " \ 3034 "Number of times an allocation that queues behind a GC " \
3030 "will retry before printing a warning") \ 3035 "will retry before printing a warning") \
3033 "GC invoke count where +VerifyBefore/AfterGC kicks in") \ 3038 "GC invoke count where +VerifyBefore/AfterGC kicks in") \
3034 \ 3039 \
3035 diagnostic(intx, VerifyGCLevel, 0, \ 3040 diagnostic(intx, VerifyGCLevel, 0, \
3036 "Generation level at which to start +VerifyBefore/AfterGC") \ 3041 "Generation level at which to start +VerifyBefore/AfterGC") \
3037 \ 3042 \
3038 product(intx, MaxTenuringThreshold, 15, \ 3043 product(uintx, MaxTenuringThreshold, 15, \
3039 "Maximum value for tenuring threshold") \ 3044 "Maximum value for tenuring threshold") \
3040 \ 3045 \
3041 product(intx, InitialTenuringThreshold, 7, \ 3046 product(uintx, InitialTenuringThreshold, 7, \
3042 "Initial value for tenuring threshold") \ 3047 "Initial value for tenuring threshold") \
3043 \ 3048 \
3044 product(intx, TargetSurvivorRatio, 50, \ 3049 product(intx, TargetSurvivorRatio, 50, \
3045 "Desired percentage of survivor space used after scavenge") \ 3050 "Desired percentage of survivor space used after scavenge") \
3046 \ 3051 \
3051 "Par compact uses a variable scale based on the density of the" \ 3056 "Par compact uses a variable scale based on the density of the" \
3052 "generation and treats this as the max value when the heap is" \ 3057 "generation and treats this as the max value when the heap is" \
3053 "either completely full or completely empty. Par compact also" \ 3058 "either completely full or completely empty. Par compact also" \
3054 "has a smaller default value; see arguments.cpp.") \ 3059 "has a smaller default value; see arguments.cpp.") \
3055 \ 3060 \
3056 product(uintx, PermMarkSweepDeadRatio, 20, \
3057 "Percentage (0-100) of the perm gen allowed as dead wood." \
3058 "See MarkSweepDeadRatio for collector-specific comments.") \
3059 \
3060 product(intx, MarkSweepAlwaysCompactCount, 4, \ 3061 product(intx, MarkSweepAlwaysCompactCount, 4, \
3061 "How often should we fully compact the heap (ignoring the dead " \ 3062 "How often should we fully compact the heap (ignoring the dead " \
3062 "space parameters)") \ 3063 "space parameters)") \
3063 \ 3064 \
3064 product(intx, PrintCMSStatistics, 0, \ 3065 product(intx, PrintCMSStatistics, 0, \
3073 product(intx, PrintFLSCensus, 0, \ 3074 product(intx, PrintFLSCensus, 0, \
3074 "Census for CMS' FreeListSpace") \ 3075 "Census for CMS' FreeListSpace") \
3075 \ 3076 \
3076 develop(uintx, GCExpandToAllocateDelayMillis, 0, \ 3077 develop(uintx, GCExpandToAllocateDelayMillis, 0, \
3077 "Delay in ms between expansion and allocation") \ 3078 "Delay in ms between expansion and allocation") \
3079 \
3080 develop(uintx, GCWorkerDelayMillis, 0, \
3081 "Delay in ms in scheduling GC workers") \
3078 \ 3082 \
3079 product(intx, DeferThrSuspendLoopCount, 4000, \ 3083 product(intx, DeferThrSuspendLoopCount, 4000, \
3080 "(Unstable) Number of times to iterate in safepoint loop " \ 3084 "(Unstable) Number of times to iterate in safepoint loop " \
3081 " before blocking VM threads ") \ 3085 " before blocking VM threads ") \
3082 \ 3086 \
3536 "used in future JVM runs.") \ 3540 "used in future JVM runs.") \
3537 \ 3541 \
3538 product(bool, PrintSharedSpaces, false, \ 3542 product(bool, PrintSharedSpaces, false, \
3539 "Print usage of shared spaces") \ 3543 "Print usage of shared spaces") \
3540 \ 3544 \
3541 product(uintx, SharedDummyBlockSize, 512*M, \ 3545 product(uintx, SharedReadWriteSize, NOT_LP64(12*M) LP64_ONLY(16*M), \
3546 "Size of read-write space in permanent generation (in bytes)") \
3547 \
3548 product(uintx, SharedReadOnlySize, NOT_LP64(12*M) LP64_ONLY(16*M), \
3549 "Size of read-only space in permanent generation (in bytes)") \
3550 \
3551 product(uintx, SharedMiscDataSize, NOT_LP64(2*M) LP64_ONLY(4*M), \
3552 "Size of the shared data area adjacent to the heap (in bytes)") \
3553 \
3554 product(uintx, SharedMiscCodeSize, 120*K, \
3555 "Size of the shared code area adjacent to the heap (in bytes)") \
3556 \
3557 product(uintx, SharedDummyBlockSize, 0, \
3542 "Size of dummy block used to shift heap addresses (in bytes)") \ 3558 "Size of dummy block used to shift heap addresses (in bytes)") \
3543 \
3544 product(uintx, SharedReadWriteSize, NOT_LP64(12*M) LP64_ONLY(13*M), \
3545 "Size of read-write space in permanent generation (in bytes)") \
3546 \
3547 product(uintx, SharedReadOnlySize, 10*M, \
3548 "Size of read-only space in permanent generation (in bytes)") \
3549 \
3550 product(uintx, SharedMiscDataSize, NOT_LP64(4*M) LP64_ONLY(5*M) NOT_PRODUCT(+1*M), \
3551 "Size of the shared data area adjacent to the heap (in bytes)") \
3552 \
3553 product(uintx, SharedMiscCodeSize, 4*M, \
3554 "Size of the shared code area adjacent to the heap (in bytes)") \
3555 \
3556 diagnostic(bool, SharedOptimizeColdStart, true, \
3557 "At dump time, order shared objects to achieve better " \
3558 "cold startup time.") \
3559 \
3560 develop(intx, SharedOptimizeColdStartPolicy, 2, \
3561 "Reordering policy for SharedOptimizeColdStart " \
3562 "0=favor classload-time locality, 1=balanced, " \
3563 "2=favor runtime locality") \
3564 \
3565 diagnostic(bool, SharedSkipVerify, false, \
3566 "Skip assert() and verify() which page-in unwanted shared " \
3567 "objects. ") \
3568 \ 3559 \
3569 diagnostic(bool, EnableInvokeDynamic, false, \ 3560 diagnostic(bool, EnableInvokeDynamic, false, \
3570 "support JSR 292 (method handles, invokedynamic, " \ 3561 "support JSR 292 (method handles, invokedynamic, " \
3571 "anonymous classes") \ 3562 "anonymous classes") \
3572 \ 3563 \
3617 diagnostic(bool, PrintDTraceDOF, false, \ 3608 diagnostic(bool, PrintDTraceDOF, false, \
3618 "Print the DTrace DOF passed to the system for JSDT probes") \ 3609 "Print the DTrace DOF passed to the system for JSDT probes") \
3619 \ 3610 \
3620 product(uintx, StringTableSize, 1009, \ 3611 product(uintx, StringTableSize, 1009, \
3621 "Number of buckets in the interned String table") \ 3612 "Number of buckets in the interned String table") \
3613 \
3614 develop(bool, TraceDefaultMethods, false, \
3615 "Trace the default method processing steps") \
3616 \
3617 develop(bool, ParseAllGenericSignatures, false, \
3618 "Parse all generic signatures while classloading") \
3619 \
3620 develop(bool, VerifyGenericSignatures, false, \
3621 "Abort VM on erroneous or inconsistent generic signatures") \
3622 \ 3622 \
3623 product(bool, UseVMInterruptibleIO, false, \ 3623 product(bool, UseVMInterruptibleIO, false, \
3624 "(Unstable, Solaris-specific) Thread interrupt before or with " \ 3624 "(Unstable, Solaris-specific) Thread interrupt before or with " \
3625 "EINTR for I/O operations results in OS_INTRPT. The default value"\ 3625 "EINTR for I/O operations results in OS_INTRPT. The default value"\
3626 " of this flag is true for JDK 6 and earlier") \ 3626 " of this flag is true for JDK 6 and earlier") \