2066 product(intx, Tier3AOTBackEdgeThreshold, 120000, \ |
2066 product(intx, Tier3AOTBackEdgeThreshold, 120000, \ |
2067 "Back edge threshold at which tier 3 OSR compilation is invoked " \ |
2067 "Back edge threshold at which tier 3 OSR compilation is invoked " \ |
2068 "if coming from AOT") \ |
2068 "if coming from AOT") \ |
2069 range(0, max_jint) \ |
2069 range(0, max_jint) \ |
2070 \ |
2070 \ |
|
2071 diagnostic(intx, Tier0AOTInvocationThreshold, 200, \ |
|
2072 "Switch to interpreter to profile if the number of method " \ |
|
2073 "invocations crosses this threshold if coming from AOT " \ |
|
2074 "(applicable only with " \ |
|
2075 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2076 range(0, max_jint) \ |
|
2077 \ |
|
2078 diagnostic(intx, Tier0AOTMinInvocationThreshold, 100, \ |
|
2079 "Minimum number of invocations to switch to interpreter " \ |
|
2080 "to profile if coming from AOT " \ |
|
2081 "(applicable only with " \ |
|
2082 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2083 range(0, max_jint) \ |
|
2084 \ |
|
2085 diagnostic(intx, Tier0AOTCompileThreshold, 2000, \ |
|
2086 "Threshold at which to switch to interpreter to profile " \ |
|
2087 "if coming from AOT " \ |
|
2088 "(invocation minimum must be satisfied, " \ |
|
2089 "applicable only with " \ |
|
2090 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2091 range(0, max_jint) \ |
|
2092 \ |
|
2093 diagnostic(intx, Tier0AOTBackEdgeThreshold, 60000, \ |
|
2094 "Back edge threshold at which to switch to interpreter " \ |
|
2095 "to profile if coming from AOT " \ |
|
2096 "(applicable only with " \ |
|
2097 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2098 range(0, max_jint) \ |
|
2099 \ |
2071 product(intx, Tier4InvocationThreshold, 5000, \ |
2100 product(intx, Tier4InvocationThreshold, 5000, \ |
2072 "Compile if number of method invocations crosses this " \ |
2101 "Compile if number of method invocations crosses this " \ |
2073 "threshold") \ |
2102 "threshold") \ |
2074 range(0, max_jint) \ |
2103 range(0, max_jint) \ |
2075 \ |
2104 \ |
2077 "Minimum invocation to compile at tier 4") \ |
2106 "Minimum invocation to compile at tier 4") \ |
2078 range(0, max_jint) \ |
2107 range(0, max_jint) \ |
2079 \ |
2108 \ |
2080 product(intx, Tier4CompileThreshold, 15000, \ |
2109 product(intx, Tier4CompileThreshold, 15000, \ |
2081 "Threshold at which tier 4 compilation is invoked (invocation " \ |
2110 "Threshold at which tier 4 compilation is invoked (invocation " \ |
2082 "minimum must be satisfied") \ |
2111 "minimum must be satisfied)") \ |
2083 range(0, max_jint) \ |
2112 range(0, max_jint) \ |
2084 \ |
2113 \ |
2085 product(intx, Tier4BackEdgeThreshold, 40000, \ |
2114 product(intx, Tier4BackEdgeThreshold, 40000, \ |
2086 "Back edge threshold at which tier 4 OSR compilation is invoked") \ |
2115 "Back edge threshold at which tier 4 OSR compilation is invoked") \ |
|
2116 range(0, max_jint) \ |
|
2117 \ |
|
2118 diagnostic(intx, Tier40InvocationThreshold, 5000, \ |
|
2119 "Compile if number of method invocations crosses this " \ |
|
2120 "threshold (applicable only with " \ |
|
2121 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2122 range(0, max_jint) \ |
|
2123 \ |
|
2124 diagnostic(intx, Tier40MinInvocationThreshold, 600, \ |
|
2125 "Minimum number of invocations to compile at tier 4 " \ |
|
2126 "(applicable only with " \ |
|
2127 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2128 range(0, max_jint) \ |
|
2129 \ |
|
2130 diagnostic(intx, Tier40CompileThreshold, 10000, \ |
|
2131 "Threshold at which tier 4 compilation is invoked (invocation " \ |
|
2132 "minimum must be satisfied, applicable only with " \ |
|
2133 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2134 range(0, max_jint) \ |
|
2135 \ |
|
2136 diagnostic(intx, Tier40BackEdgeThreshold, 15000, \ |
|
2137 "Back edge threshold at which tier 4 OSR compilation is invoked " \ |
|
2138 "(applicable only with " \ |
|
2139 "CompilationMode=high-only|high-only-quick-internal)") \ |
|
2140 range(0, max_jint) \ |
|
2141 \ |
|
2142 diagnostic(intx, Tier0Delay, 5, \ |
|
2143 "If C2 queue size grows over this amount per compiler thread " \ |
|
2144 "do not start profiling in the interpreter " \ |
|
2145 "(applicable only with " \ |
|
2146 "CompilationMode=high-only|high-only-quick-internal)") \ |
2087 range(0, max_jint) \ |
2147 range(0, max_jint) \ |
2088 \ |
2148 \ |
2089 product(intx, Tier3DelayOn, 5, \ |
2149 product(intx, Tier3DelayOn, 5, \ |
2090 "If C2 queue size grows over this amount per compiler thread " \ |
2150 "If C2 queue size grows over this amount per compiler thread " \ |
2091 "stop compiling at tier 3 and start compiling at tier 2") \ |
2151 "stop compiling at tier 3 and start compiling at tier 2") \ |
2115 "Stop at given compilation level") \ |
2175 "Stop at given compilation level") \ |
2116 range(0, 4) \ |
2176 range(0, 4) \ |
2117 \ |
2177 \ |
2118 product(intx, Tier0ProfilingStartPercentage, 200, \ |
2178 product(intx, Tier0ProfilingStartPercentage, 200, \ |
2119 "Start profiling in interpreter if the counters exceed tier 3 " \ |
2179 "Start profiling in interpreter if the counters exceed tier 3 " \ |
2120 "thresholds by the specified percentage") \ |
2180 "thresholds (tier 4 thresholds with " \ |
|
2181 "CompilationMode=high-only|high-only-quick-internal)" \ |
|
2182 "by the specified percentage") \ |
2121 range(0, max_jint) \ |
2183 range(0, max_jint) \ |
2122 \ |
2184 \ |
2123 product(uintx, IncreaseFirstTierCompileThresholdAt, 50, \ |
2185 product(uintx, IncreaseFirstTierCompileThresholdAt, 50, \ |
2124 "Increase the compile threshold for C1 compilation if the code " \ |
2186 "Increase the compile threshold for C1 compilation if the code " \ |
2125 "cache is filled by the specified percentage") \ |
2187 "cache is filled by the specified percentage") \ |
2131 \ |
2193 \ |
2132 product(intx, TieredRateUpdateMaxTime, 25, \ |
2194 product(intx, TieredRateUpdateMaxTime, 25, \ |
2133 "Maximum rate sampling interval (in milliseconds)") \ |
2195 "Maximum rate sampling interval (in milliseconds)") \ |
2134 range(0, max_intx) \ |
2196 range(0, max_intx) \ |
2135 \ |
2197 \ |
|
2198 product(ccstr, CompilationMode, "default", \ |
|
2199 "Compilation modes: " \ |
|
2200 "default: normal tiered compilation; " \ |
|
2201 "quick-only: C1-only mode; " \ |
|
2202 "high-only: C2/JVMCI-only mode; " \ |
|
2203 "high-only-quick-internal: C2/JVMCI-only mode, " \ |
|
2204 "with JVMCI compiler compiled with C1.") \ |
|
2205 \ |
2136 product_pd(bool, TieredCompilation, \ |
2206 product_pd(bool, TieredCompilation, \ |
2137 "Enable tiered compilation") \ |
2207 "Enable tiered compilation") \ |
2138 \ |
2208 \ |
2139 product(bool, PrintTieredEvents, false, \ |
2209 product(bool, PrintTieredEvents, false, \ |
2140 "Print tiered events notifications") \ |
2210 "Print tiered events notifications") \ |
2159 /* Properties for Java libraries */ \ |
2229 /* Properties for Java libraries */ \ |
2160 \ |
2230 \ |
2161 product(uint64_t, MaxDirectMemorySize, 0, \ |
2231 product(uint64_t, MaxDirectMemorySize, 0, \ |
2162 "Maximum total size of NIO direct-buffer allocations") \ |
2232 "Maximum total size of NIO direct-buffer allocations") \ |
2163 range(0, max_jlong) \ |
2233 range(0, max_jlong) \ |
2164 \ |
|
2165 product(bool, ClassForNameDeferLinking, false, \ |
|
2166 "Revert to not linking in Class.forName()") \ |
|
2167 \ |
2234 \ |
2168 /* Flags used for temporary code during development */ \ |
2235 /* Flags used for temporary code during development */ \ |
2169 \ |
2236 \ |
2170 diagnostic(bool, UseNewCode, false, \ |
2237 diagnostic(bool, UseNewCode, false, \ |
2171 "Testing Only: Use the new version while testing") \ |
2238 "Testing Only: Use the new version while testing") \ |