< prev index next >

src/hotspot/share/runtime/globals.hpp

Print this page

 108 // Default and minimum StringTable and SymbolTable size values
 109 // Must be powers of 2
 110 const size_t defaultStringTableSize = NOT_LP64(1024) LP64_ONLY(65536);
 111 const size_t minimumStringTableSize = 128;
 112 const size_t defaultSymbolTableSize = 32768; // 2^15
 113 const size_t minimumSymbolTableSize = 1024;
 114 
 115 #ifdef _LP64
 116 #define LP64_RUNTIME_FLAGS(develop,                                         \
 117                            develop_pd,                                      \
 118                            product,                                         \
 119                            product_pd,                                      \
 120                            notproduct,                                      \
 121                            range,                                           \
 122                            constraint)                                      \
 123                                                                             \
 124   product(bool, UseCompressedOops, false,                                   \
 125           "Use 32-bit object references in 64-bit VM. "                     \
 126           "lp64_product means flag is always constant in 32 bit VM")        \
 127                                                                             \
 128   product(bool, UseCompressedClassPointers, false,                          \
 129           "Use 32-bit class pointers in 64-bit VM. "                        \
 130           "lp64_product means flag is always constant in 32 bit VM")        \
 131                                                                             \
 132   product(int, ObjectAlignmentInBytes, 8,                                   \
 133           "Default object alignment in bytes, 8 is minimum")                \
 134           range(8, 256)                                                     \
 135           constraint(ObjectAlignmentInBytesConstraintFunc, AtParse)
 136 
 137 #else
 138 // !_LP64
 139 
 140 #define LP64_RUNTIME_FLAGS(develop,                                         \
 141                            develop_pd,                                      \
 142                            product,                                         \
 143                            product_pd,                                      \
 144                            notproduct,                                      \
 145                            range,                                           \
 146                            constraint)
 147 const bool UseCompressedOops = false;
 148 const bool UseCompressedClassPointers = false;

1049   product(ccstr, ErrorFile, NULL,                                           \
1050           "If an error occurs, save the error data to this file "           \
1051           "[default: ./hs_err_pid%p.log] (%p replaced with pid)")           \
1052                                                                             \
1053   product(bool, ExtensiveErrorReports,                                      \
1054           PRODUCT_ONLY(false) NOT_PRODUCT(true),                            \
1055           "Error reports are more extensive.")                              \
1056                                                                             \
1057   product(bool, DisplayVMOutputToStderr, false,                             \
1058           "If DisplayVMOutput is true, display all VM output to stderr")    \
1059                                                                             \
1060   product(bool, DisplayVMOutputToStdout, false,                             \
1061           "If DisplayVMOutput is true, display all VM output to stdout")    \
1062                                                                             \
1063   product(bool, ErrorFileToStderr, false,                                   \
1064           "If true, error data is printed to stderr instead of a file")     \
1065                                                                             \
1066   product(bool, ErrorFileToStdout, false,                                   \
1067           "If true, error data is printed to stdout instead of a file")     \
1068                                                                             \
1069   develop(bool, UseHeavyMonitors, false,                                    \
1070           "(Deprecated) Use heavyweight instead of lightweight Java "       \
1071           "monitors")                                                       \
1072                                                                             \
1073   develop(bool, VerifyHeavyMonitors, false,                                 \
1074           "Checks that no stack locking happens when using "                \
1075           "+UseHeavyMonitors")                                              \
1076                                                                             \
1077   product(bool, PrintStringTableStatistics, false,                          \
1078           "print statistics about the StringTable and SymbolTable")         \
1079                                                                             \
1080   product(bool, VerifyStringTableAtExit, false, DIAGNOSTIC,                 \
1081           "verify StringTable contents at exit")                            \
1082                                                                             \
1083   notproduct(bool, PrintSymbolTableSizeHistogram, false,                    \
1084           "print histogram of the symbol table")                            \
1085                                                                             \
1086   product(ccstr, AbortVMOnException, NULL, DIAGNOSTIC,                      \
1087           "Call fatal if this exception is thrown.  Example: "              \
1088           "java -XX:AbortVMOnException=java.lang.NullPointerException Foo") \
1089                                                                             \

1406   develop(intx, InlineThrowCount,    50,                                    \
1407           "Force inlining of interpreted methods that throw this often")    \
1408           range(0, max_jint)                                                \
1409                                                                             \
1410   develop(intx, InlineThrowMaxSize,   200,                                  \
1411           "Force inlining of throwing methods smaller than this")           \
1412           range(0, max_jint)                                                \
1413                                                                             \
1414   product(size_t, MetaspaceSize, NOT_LP64(16 * M) LP64_ONLY(21 * M),        \
1415           "Initial threshold (in bytes) at which a garbage collection "     \
1416           "is done to reduce Metaspace usage")                              \
1417           constraint(MetaspaceSizeConstraintFunc,AfterErgo)                 \
1418                                                                             \
1419   product(size_t, MaxMetaspaceSize, max_uintx,                              \
1420           "Maximum size of Metaspaces (in bytes)")                          \
1421           constraint(MaxMetaspaceSizeConstraintFunc,AfterErgo)              \
1422                                                                             \
1423   product(size_t, CompressedClassSpaceSize, 1*G,                            \
1424           "Maximum size of class area in Metaspace when compressed "        \
1425           "class pointers are used")                                        \
1426           range(1*M, 3*G)                                                   \
1427                                                                             \
1428   develop(size_t, CompressedClassSpaceBaseAddress, 0,                       \
1429           "Force the class space to be allocated at this address or "       \
1430           "fails VM initialization (requires -Xshare=off.")                 \
1431                                                                             \
1432   product(ccstr, MetaspaceReclaimPolicy, "balanced",                        \
1433           "options: balanced, aggressive, none")                            \
1434                                                                             \
1435   product(bool, PrintMetaspaceStatisticsAtExit, false, DIAGNOSTIC,          \
1436           "Print metaspace statistics upon VM exit.")                       \
1437                                                                             \
1438   develop(bool, MetaspaceGuardAllocations, false,                           \
1439           "Metapace allocations are guarded.")                              \
1440                                                                             \
1441   product(uintx, MinHeapFreeRatio, 40, MANAGEABLE,                          \
1442           "The minimum percentage of heap free after GC to avoid expansion."\
1443           " For most GCs this applies to the old generation. In G1 and"     \
1444           " ParallelGC it applies to the whole heap.")                      \
1445           range(0, 100)                                                     \
1446           constraint(MinHeapFreeRatioConstraintFunc,AfterErgo)              \
1447                                                                             \
1448   product(uintx, MaxHeapFreeRatio, 70, MANAGEABLE,                          \

2039   JFR_ONLY(product(ccstr, FlightRecorderOptions, NULL,                      \
2040           "Flight Recorder options"))                                       \
2041                                                                             \
2042   JFR_ONLY(product(ccstr, StartFlightRecording, NULL,                       \
2043           "Start flight recording with options"))                           \
2044                                                                             \
2045   product(bool, UseFastUnorderedTimeStamps, false, EXPERIMENTAL,            \
2046           "Use platform unstable time where supported for timestamps only") \
2047                                                                             \
2048   product(bool, UseEmptySlotsInSupers, true,                                \
2049                 "Allow allocating fields in empty slots of super-classes")  \
2050                                                                             \
2051   product(bool, DeoptimizeNMethodBarriersALot, false, DIAGNOSTIC,           \
2052                 "Make nmethod barriers deoptimise a lot.")                  \
2053                                                                             \
2054   develop(bool, VerifyCrossModifyFence,                                     \
2055           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
2056              "Mark all threads after a safepoint, and clear on a modify "   \
2057              "fence. Add cleanliness checks.")                              \
2058                                                                             \






2059   develop(bool, TraceOptimizedUpcallStubs, false,                           \
2060                 "Trace optimized upcall stub generation")                   \
2061 
2062 // end of RUNTIME_FLAGS
2063 
2064 DECLARE_FLAGS(LP64_RUNTIME_FLAGS)
2065 DECLARE_ARCH_FLAGS(ARCH_FLAGS)
2066 DECLARE_FLAGS(RUNTIME_FLAGS)
2067 DECLARE_FLAGS(RUNTIME_OS_FLAGS)
2068 
2069 #endif // SHARE_RUNTIME_GLOBALS_HPP

 108 // Default and minimum StringTable and SymbolTable size values
 109 // Must be powers of 2
 110 const size_t defaultStringTableSize = NOT_LP64(1024) LP64_ONLY(65536);
 111 const size_t minimumStringTableSize = 128;
 112 const size_t defaultSymbolTableSize = 32768; // 2^15
 113 const size_t minimumSymbolTableSize = 1024;
 114 
 115 #ifdef _LP64
 116 #define LP64_RUNTIME_FLAGS(develop,                                         \
 117                            develop_pd,                                      \
 118                            product,                                         \
 119                            product_pd,                                      \
 120                            notproduct,                                      \
 121                            range,                                           \
 122                            constraint)                                      \
 123                                                                             \
 124   product(bool, UseCompressedOops, false,                                   \
 125           "Use 32-bit object references in 64-bit VM. "                     \
 126           "lp64_product means flag is always constant in 32 bit VM")        \
 127                                                                             \
 128   product(bool, UseCompressedClassPointers, true,                           \
 129           "Use 32-bit class pointers in 64-bit VM. "                        \
 130           "lp64_product means flag is always constant in 32 bit VM")        \
 131                                                                             \
 132   product(int, ObjectAlignmentInBytes, 8,                                   \
 133           "Default object alignment in bytes, 8 is minimum")                \
 134           range(8, 256)                                                     \
 135           constraint(ObjectAlignmentInBytesConstraintFunc, AtParse)
 136 
 137 #else
 138 // !_LP64
 139 
 140 #define LP64_RUNTIME_FLAGS(develop,                                         \
 141                            develop_pd,                                      \
 142                            product,                                         \
 143                            product_pd,                                      \
 144                            notproduct,                                      \
 145                            range,                                           \
 146                            constraint)
 147 const bool UseCompressedOops = false;
 148 const bool UseCompressedClassPointers = false;

1049   product(ccstr, ErrorFile, NULL,                                           \
1050           "If an error occurs, save the error data to this file "           \
1051           "[default: ./hs_err_pid%p.log] (%p replaced with pid)")           \
1052                                                                             \
1053   product(bool, ExtensiveErrorReports,                                      \
1054           PRODUCT_ONLY(false) NOT_PRODUCT(true),                            \
1055           "Error reports are more extensive.")                              \
1056                                                                             \
1057   product(bool, DisplayVMOutputToStderr, false,                             \
1058           "If DisplayVMOutput is true, display all VM output to stderr")    \
1059                                                                             \
1060   product(bool, DisplayVMOutputToStdout, false,                             \
1061           "If DisplayVMOutput is true, display all VM output to stdout")    \
1062                                                                             \
1063   product(bool, ErrorFileToStderr, false,                                   \
1064           "If true, error data is printed to stderr instead of a file")     \
1065                                                                             \
1066   product(bool, ErrorFileToStdout, false,                                   \
1067           "If true, error data is printed to stdout instead of a file")     \
1068                                                                             \
1069   product(bool, UseHeavyMonitors, false, DIAGNOSTIC,                        \
1070           "(Deprecated) Use heavyweight instead of lightweight Java "       \
1071           "monitors")                                                       \
1072                                                                             \
1073   develop(bool, VerifyHeavyMonitors, false,                                 \
1074           "Checks that no stack locking happens when using "                \
1075           "+UseHeavyMonitors")                                              \
1076                                                                             \
1077   product(bool, PrintStringTableStatistics, false,                          \
1078           "print statistics about the StringTable and SymbolTable")         \
1079                                                                             \
1080   product(bool, VerifyStringTableAtExit, false, DIAGNOSTIC,                 \
1081           "verify StringTable contents at exit")                            \
1082                                                                             \
1083   notproduct(bool, PrintSymbolTableSizeHistogram, false,                    \
1084           "print histogram of the symbol table")                            \
1085                                                                             \
1086   product(ccstr, AbortVMOnException, NULL, DIAGNOSTIC,                      \
1087           "Call fatal if this exception is thrown.  Example: "              \
1088           "java -XX:AbortVMOnException=java.lang.NullPointerException Foo") \
1089                                                                             \

1406   develop(intx, InlineThrowCount,    50,                                    \
1407           "Force inlining of interpreted methods that throw this often")    \
1408           range(0, max_jint)                                                \
1409                                                                             \
1410   develop(intx, InlineThrowMaxSize,   200,                                  \
1411           "Force inlining of throwing methods smaller than this")           \
1412           range(0, max_jint)                                                \
1413                                                                             \
1414   product(size_t, MetaspaceSize, NOT_LP64(16 * M) LP64_ONLY(21 * M),        \
1415           "Initial threshold (in bytes) at which a garbage collection "     \
1416           "is done to reduce Metaspace usage")                              \
1417           constraint(MetaspaceSizeConstraintFunc,AfterErgo)                 \
1418                                                                             \
1419   product(size_t, MaxMetaspaceSize, max_uintx,                              \
1420           "Maximum size of Metaspaces (in bytes)")                          \
1421           constraint(MaxMetaspaceSizeConstraintFunc,AfterErgo)              \
1422                                                                             \
1423   product(size_t, CompressedClassSpaceSize, 1*G,                            \
1424           "Maximum size of class area in Metaspace when compressed "        \
1425           "class pointers are used")                                        \
1426           constraint(CompressedClassSpaceSizeConstraintFunc,AtParse)        \
1427                                                                             \
1428   product(size_t, CompressedClassSpaceBaseAddress, 0, DIAGNOSTIC,           \
1429           "Force the class space to be allocated at this address or "       \
1430           "fails VM initialization (requires -Xshare=off.")                 \
1431                                                                             \
1432   product(ccstr, MetaspaceReclaimPolicy, "balanced",                        \
1433           "options: balanced, aggressive, none")                            \
1434                                                                             \
1435   product(bool, PrintMetaspaceStatisticsAtExit, false, DIAGNOSTIC,          \
1436           "Print metaspace statistics upon VM exit.")                       \
1437                                                                             \
1438   develop(bool, MetaspaceGuardAllocations, false,                           \
1439           "Metapace allocations are guarded.")                              \
1440                                                                             \
1441   product(uintx, MinHeapFreeRatio, 40, MANAGEABLE,                          \
1442           "The minimum percentage of heap free after GC to avoid expansion."\
1443           " For most GCs this applies to the old generation. In G1 and"     \
1444           " ParallelGC it applies to the whole heap.")                      \
1445           range(0, 100)                                                     \
1446           constraint(MinHeapFreeRatioConstraintFunc,AfterErgo)              \
1447                                                                             \
1448   product(uintx, MaxHeapFreeRatio, 70, MANAGEABLE,                          \

2039   JFR_ONLY(product(ccstr, FlightRecorderOptions, NULL,                      \
2040           "Flight Recorder options"))                                       \
2041                                                                             \
2042   JFR_ONLY(product(ccstr, StartFlightRecording, NULL,                       \
2043           "Start flight recording with options"))                           \
2044                                                                             \
2045   product(bool, UseFastUnorderedTimeStamps, false, EXPERIMENTAL,            \
2046           "Use platform unstable time where supported for timestamps only") \
2047                                                                             \
2048   product(bool, UseEmptySlotsInSupers, true,                                \
2049                 "Allow allocating fields in empty slots of super-classes")  \
2050                                                                             \
2051   product(bool, DeoptimizeNMethodBarriersALot, false, DIAGNOSTIC,           \
2052                 "Make nmethod barriers deoptimise a lot.")                  \
2053                                                                             \
2054   develop(bool, VerifyCrossModifyFence,                                     \
2055           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
2056              "Mark all threads after a safepoint, and clear on a modify "   \
2057              "fence. Add cleanliness checks.")                              \
2058                                                                             \
2059   product(bool, HeapObjectStats, false, DIAGNOSTIC,                         \
2060              "Enable gathering of heap object statistics")                  \
2061                                                                             \
2062   product(size_t, HeapObjectStatsSamplingInterval, 500, DIAGNOSTIC,         \
2063              "Heap object statistics sampling interval (ms)")               \
2064                                                                             \
2065   develop(bool, TraceOptimizedUpcallStubs, false,                           \
2066                 "Trace optimized upcall stub generation")                   \
2067 
2068 // end of RUNTIME_FLAGS
2069 
2070 DECLARE_FLAGS(LP64_RUNTIME_FLAGS)
2071 DECLARE_ARCH_FLAGS(ARCH_FLAGS)
2072 DECLARE_FLAGS(RUNTIME_FLAGS)
2073 DECLARE_FLAGS(RUNTIME_OS_FLAGS)
2074 
2075 #endif // SHARE_RUNTIME_GLOBALS_HPP
< prev index next >