1.1 --- a/src/share/vm/runtime/globals.hpp Thu Sep 02 11:40:02 2010 -0700 1.2 +++ b/src/share/vm/runtime/globals.hpp Fri Sep 03 17:51:07 2010 -0700 1.3 @@ -35,14 +35,7 @@ 1.4 define_pd_global(bool, TieredCompilation, false); 1.5 1.6 define_pd_global(intx, CompileThreshold, 0); 1.7 -define_pd_global(intx, Tier2CompileThreshold, 0); 1.8 -define_pd_global(intx, Tier3CompileThreshold, 0); 1.9 -define_pd_global(intx, Tier4CompileThreshold, 0); 1.10 - 1.11 define_pd_global(intx, BackEdgeThreshold, 0); 1.12 -define_pd_global(intx, Tier2BackEdgeThreshold, 0); 1.13 -define_pd_global(intx, Tier3BackEdgeThreshold, 0); 1.14 -define_pd_global(intx, Tier4BackEdgeThreshold, 0); 1.15 1.16 define_pd_global(intx, OnStackReplacePercentage, 0); 1.17 define_pd_global(bool, ResizeTLAB, false); 1.18 @@ -1971,7 +1964,7 @@ 1.19 product(uintx, TenuredGenerationSizeSupplementDecay, 2, \ 1.20 "Decay factor to TenuredGenerationSizeIncrement") \ 1.21 \ 1.22 - product(uintx, MaxGCPauseMillis, max_uintx, \ 1.23 + product(uintx, MaxGCPauseMillis, max_uintx, \ 1.24 "Adaptive size policy maximum GC pause time goal in msec, " \ 1.25 "or (G1 Only) the max. GC time per MMU time slice") \ 1.26 \ 1.27 @@ -2366,9 +2359,6 @@ 1.28 develop(bool, EagerInitialization, false, \ 1.29 "Eagerly initialize classes if possible") \ 1.30 \ 1.31 - product(bool, Tier1UpdateMethodData, trueInTiered, \ 1.32 - "Update methodDataOops in Tier1-generated code") \ 1.33 - \ 1.34 develop(bool, TraceMethodReplacement, false, \ 1.35 "Print when methods are replaced do to recompilation") \ 1.36 \ 1.37 @@ -2898,7 +2888,7 @@ 1.38 "if non-zero, start verifying C heap after Nth call to " \ 1.39 "malloc/realloc/free") \ 1.40 \ 1.41 - product(intx, TypeProfileWidth, 2, \ 1.42 + product(intx, TypeProfileWidth, 2, \ 1.43 "number of receiver types to record in call/cast profile") \ 1.44 \ 1.45 develop(intx, BciProfileWidth, 2, \ 1.46 @@ -3306,30 +3296,98 @@ 1.47 product_pd(intx, BackEdgeThreshold, \ 1.48 "Interpreter Back edge threshold at which an OSR compilation is invoked")\ 1.49 \ 1.50 - product(intx, Tier1BytecodeLimit, 10, \ 1.51 - "Must have at least this many bytecodes before tier1" \ 1.52 - "invocation counters are used") \ 1.53 - \ 1.54 - product_pd(intx, Tier2CompileThreshold, \ 1.55 - "threshold at which a tier 2 compilation is invoked") \ 1.56 - \ 1.57 - product_pd(intx, Tier2BackEdgeThreshold, \ 1.58 - "Back edge threshold at which a tier 2 compilation is invoked") \ 1.59 - \ 1.60 - product_pd(intx, Tier3CompileThreshold, \ 1.61 - "threshold at which a tier 3 compilation is invoked") \ 1.62 - \ 1.63 - product_pd(intx, Tier3BackEdgeThreshold, \ 1.64 - "Back edge threshold at which a tier 3 compilation is invoked") \ 1.65 - \ 1.66 - product_pd(intx, Tier4CompileThreshold, \ 1.67 - "threshold at which a tier 4 compilation is invoked") \ 1.68 - \ 1.69 - product_pd(intx, Tier4BackEdgeThreshold, \ 1.70 - "Back edge threshold at which a tier 4 compilation is invoked") \ 1.71 + product(intx, Tier0InvokeNotifyFreqLog, 7, \ 1.72 + "Interpreter (tier 0) invocation notification frequency.") \ 1.73 + \ 1.74 + product(intx, Tier2InvokeNotifyFreqLog, 11, \ 1.75 + "C1 without MDO (tier 2) invocation notification frequency.") \ 1.76 + \ 1.77 + product(intx, Tier3InvokeNotifyFreqLog, 10, \ 1.78 + "C1 with MDO profiling (tier 3) invocation notification " \ 1.79 + "frequency.") \ 1.80 + \ 1.81 + product(intx, Tier0BackedgeNotifyFreqLog, 10, \ 1.82 + "Interpreter (tier 0) invocation notification frequency.") \ 1.83 + \ 1.84 + product(intx, Tier2BackedgeNotifyFreqLog, 14, \ 1.85 + "C1 without MDO (tier 2) invocation notification frequency.") \ 1.86 + \ 1.87 + product(intx, Tier3BackedgeNotifyFreqLog, 13, \ 1.88 + "C1 with MDO profiling (tier 3) invocation notification " \ 1.89 + "frequency.") \ 1.90 + \ 1.91 + product(intx, Tier2CompileThreshold, 0, \ 1.92 + "threshold at which tier 2 compilation is invoked") \ 1.93 + \ 1.94 + product(intx, Tier2BackEdgeThreshold, 0, \ 1.95 + "Back edge threshold at which tier 2 compilation is invoked") \ 1.96 + \ 1.97 + product(intx, Tier3InvocationThreshold, 200, \ 1.98 + "Compile if number of method invocations crosses this " \ 1.99 + "threshold") \ 1.100 + \ 1.101 + product(intx, Tier3MinInvocationThreshold, 100, \ 1.102 + "Minimum invocation to compile at tier 3") \ 1.103 + \ 1.104 + product(intx, Tier3CompileThreshold, 2000, \ 1.105 + "Threshold at which tier 3 compilation is invoked (invocation " \ 1.106 + "minimum must be satisfied.") \ 1.107 + \ 1.108 + product(intx, Tier3BackEdgeThreshold, 7000, \ 1.109 + "Back edge threshold at which tier 3 OSR compilation is invoked") \ 1.110 + \ 1.111 + product(intx, Tier4InvocationThreshold, 5000, \ 1.112 + "Compile if number of method invocations crosses this " \ 1.113 + "threshold") \ 1.114 + \ 1.115 + product(intx, Tier4MinInvocationThreshold, 600, \ 1.116 + "Minimum invocation to compile at tier 4") \ 1.117 + \ 1.118 + product(intx, Tier4CompileThreshold, 15000, \ 1.119 + "Threshold at which tier 4 compilation is invoked (invocation " \ 1.120 + "minimum must be satisfied.") \ 1.121 + \ 1.122 + product(intx, Tier4BackEdgeThreshold, 40000, \ 1.123 + "Back edge threshold at which tier 4 OSR compilation is invoked") \ 1.124 + \ 1.125 + product(intx, Tier3DelayOn, 5, \ 1.126 + "If C2 queue size grows over this amount per compiler thread " \ 1.127 + "stop compiling at tier 3 and start compiling at tier 2") \ 1.128 + \ 1.129 + product(intx, Tier3DelayOff, 2, \ 1.130 + "If C2 queue size is less than this amount per compiler thread " \ 1.131 + "allow methods compiled at tier 2 transition to tier 3") \ 1.132 + \ 1.133 + product(intx, Tier3LoadFeedback, 5, \ 1.134 + "Tier 3 thresholds will increase twofold when C1 queue size " \ 1.135 + "reaches this amount per compiler thread") \ 1.136 + \ 1.137 + product(intx, Tier4LoadFeedback, 3, \ 1.138 + "Tier 4 thresholds will increase twofold when C2 queue size " \ 1.139 + "reaches this amount per compiler thread") \ 1.140 + \ 1.141 + product(intx, TieredCompileTaskTimeout, 50, \ 1.142 + "Kill compile task if method was not used within " \ 1.143 + "given timeout in milliseconds") \ 1.144 + \ 1.145 + product(intx, TieredStopAtLevel, 4, \ 1.146 + "Stop at given compilation level") \ 1.147 + \ 1.148 + product(intx, Tier0ProfilingStartPercentage, 200, \ 1.149 + "Start profiling in interpreter if the counters exceed tier 3" \ 1.150 + "thresholds by the specified percentage") \ 1.151 + \ 1.152 + product(intx, TieredRateUpdateMinTime, 1, \ 1.153 + "Minimum rate sampling interval (in milliseconds)") \ 1.154 + \ 1.155 + product(intx, TieredRateUpdateMaxTime, 25, \ 1.156 + "Maximum rate sampling interval (in milliseconds)") \ 1.157 \ 1.158 product_pd(bool, TieredCompilation, \ 1.159 - "Enable two-tier compilation") \ 1.160 + "Enable tiered compilation") \ 1.161 + \ 1.162 + product(bool, PrintTieredEvents, false, \ 1.163 + "Print tiered events notifications") \ 1.164 \ 1.165 product(bool, StressTieredRuntime, false, \ 1.166 "Alternate client and server compiler on compile requests") \