33 define_pd_global(bool, ProfileInterpreter, false); |
33 define_pd_global(bool, ProfileInterpreter, false); |
34 define_pd_global(bool, ProfileTraps, false); |
34 define_pd_global(bool, ProfileTraps, false); |
35 define_pd_global(bool, TieredCompilation, false); |
35 define_pd_global(bool, TieredCompilation, false); |
36 |
36 |
37 define_pd_global(intx, CompileThreshold, 0); |
37 define_pd_global(intx, CompileThreshold, 0); |
38 define_pd_global(intx, Tier2CompileThreshold, 0); |
|
39 define_pd_global(intx, Tier3CompileThreshold, 0); |
|
40 define_pd_global(intx, Tier4CompileThreshold, 0); |
|
41 |
|
42 define_pd_global(intx, BackEdgeThreshold, 0); |
38 define_pd_global(intx, BackEdgeThreshold, 0); |
43 define_pd_global(intx, Tier2BackEdgeThreshold, 0); |
|
44 define_pd_global(intx, Tier3BackEdgeThreshold, 0); |
|
45 define_pd_global(intx, Tier4BackEdgeThreshold, 0); |
|
46 |
39 |
47 define_pd_global(intx, OnStackReplacePercentage, 0); |
40 define_pd_global(intx, OnStackReplacePercentage, 0); |
48 define_pd_global(bool, ResizeTLAB, false); |
41 define_pd_global(bool, ResizeTLAB, false); |
49 define_pd_global(intx, FreqInlineSize, 0); |
42 define_pd_global(intx, FreqInlineSize, 0); |
50 define_pd_global(intx, InlineSmallCode, 0); |
43 define_pd_global(intx, InlineSmallCode, 0); |
2366 develop(bool, StressReflectiveCode, false, \ |
2359 develop(bool, StressReflectiveCode, false, \ |
2367 "Use inexact types at allocations, etc., to test reflection") \ |
2360 "Use inexact types at allocations, etc., to test reflection") \ |
2368 \ |
2361 \ |
2369 develop(bool, EagerInitialization, false, \ |
2362 develop(bool, EagerInitialization, false, \ |
2370 "Eagerly initialize classes if possible") \ |
2363 "Eagerly initialize classes if possible") \ |
2371 \ |
|
2372 product(bool, Tier1UpdateMethodData, trueInTiered, \ |
|
2373 "Update methodDataOops in Tier1-generated code") \ |
|
2374 \ |
2364 \ |
2375 develop(bool, TraceMethodReplacement, false, \ |
2365 develop(bool, TraceMethodReplacement, false, \ |
2376 "Print when methods are replaced do to recompilation") \ |
2366 "Print when methods are replaced do to recompilation") \ |
2377 \ |
2367 \ |
2378 develop(bool, PrintMethodFlushing, false, \ |
2368 develop(bool, PrintMethodFlushing, false, \ |
3310 "number of interpreted method invocations before (re-)compiling") \ |
3300 "number of interpreted method invocations before (re-)compiling") \ |
3311 \ |
3301 \ |
3312 product_pd(intx, BackEdgeThreshold, \ |
3302 product_pd(intx, BackEdgeThreshold, \ |
3313 "Interpreter Back edge threshold at which an OSR compilation is invoked")\ |
3303 "Interpreter Back edge threshold at which an OSR compilation is invoked")\ |
3314 \ |
3304 \ |
3315 product(intx, Tier1BytecodeLimit, 10, \ |
3305 product(intx, Tier0InvokeNotifyFreqLog, 7, \ |
3316 "Must have at least this many bytecodes before tier1" \ |
3306 "Interpreter (tier 0) invocation notification frequency.") \ |
3317 "invocation counters are used") \ |
3307 \ |
3318 \ |
3308 product(intx, Tier2InvokeNotifyFreqLog, 11, \ |
3319 product_pd(intx, Tier2CompileThreshold, \ |
3309 "C1 without MDO (tier 2) invocation notification frequency.") \ |
3320 "threshold at which a tier 2 compilation is invoked") \ |
3310 \ |
3321 \ |
3311 product(intx, Tier3InvokeNotifyFreqLog, 10, \ |
3322 product_pd(intx, Tier2BackEdgeThreshold, \ |
3312 "C1 with MDO profiling (tier 3) invocation notification " \ |
3323 "Back edge threshold at which a tier 2 compilation is invoked") \ |
3313 "frequency.") \ |
3324 \ |
3314 \ |
3325 product_pd(intx, Tier3CompileThreshold, \ |
3315 product(intx, Tier0BackedgeNotifyFreqLog, 10, \ |
3326 "threshold at which a tier 3 compilation is invoked") \ |
3316 "Interpreter (tier 0) invocation notification frequency.") \ |
3327 \ |
3317 \ |
3328 product_pd(intx, Tier3BackEdgeThreshold, \ |
3318 product(intx, Tier2BackedgeNotifyFreqLog, 14, \ |
3329 "Back edge threshold at which a tier 3 compilation is invoked") \ |
3319 "C1 without MDO (tier 2) invocation notification frequency.") \ |
3330 \ |
3320 \ |
3331 product_pd(intx, Tier4CompileThreshold, \ |
3321 product(intx, Tier3BackedgeNotifyFreqLog, 13, \ |
3332 "threshold at which a tier 4 compilation is invoked") \ |
3322 "C1 with MDO profiling (tier 3) invocation notification " \ |
3333 \ |
3323 "frequency.") \ |
3334 product_pd(intx, Tier4BackEdgeThreshold, \ |
3324 \ |
3335 "Back edge threshold at which a tier 4 compilation is invoked") \ |
3325 product(intx, Tier2CompileThreshold, 0, \ |
|
3326 "threshold at which tier 2 compilation is invoked") \ |
|
3327 \ |
|
3328 product(intx, Tier2BackEdgeThreshold, 0, \ |
|
3329 "Back edge threshold at which tier 2 compilation is invoked") \ |
|
3330 \ |
|
3331 product(intx, Tier3InvocationThreshold, 200, \ |
|
3332 "Compile if number of method invocations crosses this " \ |
|
3333 "threshold") \ |
|
3334 \ |
|
3335 product(intx, Tier3MinInvocationThreshold, 100, \ |
|
3336 "Minimum invocation to compile at tier 3") \ |
|
3337 \ |
|
3338 product(intx, Tier3CompileThreshold, 2000, \ |
|
3339 "Threshold at which tier 3 compilation is invoked (invocation " \ |
|
3340 "minimum must be satisfied.") \ |
|
3341 \ |
|
3342 product(intx, Tier3BackEdgeThreshold, 7000, \ |
|
3343 "Back edge threshold at which tier 3 OSR compilation is invoked") \ |
|
3344 \ |
|
3345 product(intx, Tier4InvocationThreshold, 5000, \ |
|
3346 "Compile if number of method invocations crosses this " \ |
|
3347 "threshold") \ |
|
3348 \ |
|
3349 product(intx, Tier4MinInvocationThreshold, 600, \ |
|
3350 "Minimum invocation to compile at tier 4") \ |
|
3351 \ |
|
3352 product(intx, Tier4CompileThreshold, 15000, \ |
|
3353 "Threshold at which tier 4 compilation is invoked (invocation " \ |
|
3354 "minimum must be satisfied.") \ |
|
3355 \ |
|
3356 product(intx, Tier4BackEdgeThreshold, 40000, \ |
|
3357 "Back edge threshold at which tier 4 OSR compilation is invoked") \ |
|
3358 \ |
|
3359 product(intx, Tier3DelayOn, 5, \ |
|
3360 "If C2 queue size grows over this amount per compiler thread " \ |
|
3361 "stop compiling at tier 3 and start compiling at tier 2") \ |
|
3362 \ |
|
3363 product(intx, Tier3DelayOff, 2, \ |
|
3364 "If C2 queue size is less than this amount per compiler thread " \ |
|
3365 "allow methods compiled at tier 2 transition to tier 3") \ |
|
3366 \ |
|
3367 product(intx, Tier3LoadFeedback, 5, \ |
|
3368 "Tier 3 thresholds will increase twofold when C1 queue size " \ |
|
3369 "reaches this amount per compiler thread") \ |
|
3370 \ |
|
3371 product(intx, Tier4LoadFeedback, 3, \ |
|
3372 "Tier 4 thresholds will increase twofold when C2 queue size " \ |
|
3373 "reaches this amount per compiler thread") \ |
|
3374 \ |
|
3375 product(intx, TieredCompileTaskTimeout, 50, \ |
|
3376 "Kill compile task if method was not used within " \ |
|
3377 "given timeout in milliseconds") \ |
|
3378 \ |
|
3379 product(intx, TieredStopAtLevel, 4, \ |
|
3380 "Stop at given compilation level") \ |
|
3381 \ |
|
3382 product(intx, Tier0ProfilingStartPercentage, 200, \ |
|
3383 "Start profiling in interpreter if the counters exceed tier 3" \ |
|
3384 "thresholds by the specified percentage") \ |
|
3385 \ |
|
3386 product(intx, TieredRateUpdateMinTime, 1, \ |
|
3387 "Minimum rate sampling interval (in milliseconds)") \ |
|
3388 \ |
|
3389 product(intx, TieredRateUpdateMaxTime, 25, \ |
|
3390 "Maximum rate sampling interval (in milliseconds)") \ |
3336 \ |
3391 \ |
3337 product_pd(bool, TieredCompilation, \ |
3392 product_pd(bool, TieredCompilation, \ |
3338 "Enable two-tier compilation") \ |
3393 "Enable tiered compilation") \ |
|
3394 \ |
|
3395 product(bool, PrintTieredEvents, false, \ |
|
3396 "Print tiered events notifications") \ |
3339 \ |
3397 \ |
3340 product(bool, StressTieredRuntime, false, \ |
3398 product(bool, StressTieredRuntime, false, \ |
3341 "Alternate client and server compiler on compile requests") \ |
3399 "Alternate client and server compiler on compile requests") \ |
3342 \ |
3400 \ |
3343 product_pd(intx, OnStackReplacePercentage, \ |
3401 product_pd(intx, OnStackReplacePercentage, \ |