|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jikesrvm.adaptive.controller.RecompilationStrategy org.jikesrvm.adaptive.controller.AnalyticModel org.jikesrvm.adaptive.controller.MultiLevelAdaptiveModel
class MultiLevelAdaptiveModel
Implements the multi-level adaptive strategy using an analytic model, as described in the OOPSLA 2000 paper. Most behavior inherited from AnalyticModel. This class defines the the specific recompilation choices that should be considered by the analytic model.
Field Summary | |
---|---|
protected RecompileOptChoice[] |
allOptLevelChoices
List of all opt-level choices that can be considered by the cost-benefit model |
protected RecompilationChoice[] |
earlyViableChoices
Normally, we will be profiling call edges to build a dynamic call graph. |
protected RecompilationChoice[][] |
viableChoices
Keep a map from previous compiler to a set of recompilation choices. |
Constructor Summary | |
---|---|
MultiLevelAdaptiveModel()
|
Method Summary | |
---|---|
protected void |
createViableOptionLookupTable(int maxCompiler)
Setup a lookup table that maps a "previous compiler" to a set of viable recompilation choices. |
(package private) RecompilationChoice[] |
getViableRecompilationChoices(int prevCompiler,
CompiledMethod cmpMethod)
Compute the set of optimization choices that should be considered by the cost-benefit model, given the previous compiler. |
(package private) void |
populateRecompilationChoices()
Initialize the set of "optimization choices" that the cost-benefit model will consider. |
Methods inherited from class org.jikesrvm.adaptive.controller.AnalyticModel |
---|
considerHotCallEdge, considerHotMethod, considerOSRRecompilation, futureTimeForMethod, init |
Methods inherited from class org.jikesrvm.adaptive.controller.RecompilationStrategy |
---|
considerForRecompilation, createCompilationPlan, createControllerPlan, createOptimizationPlans, getMaxOptLevel, getPreviousCompiler, previousRecompilationAttempted, processCommandLineOptions |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected RecompileOptChoice[] allOptLevelChoices
protected RecompilationChoice[][] viableChoices
protected RecompilationChoice[] earlyViableChoices
Constructor Detail |
---|
MultiLevelAdaptiveModel()
Method Detail |
---|
void populateRecompilationChoices()
populateRecompilationChoices
in class AnalyticModel
RecompilationChoice[] getViableRecompilationChoices(int prevCompiler, CompiledMethod cmpMethod)
AnalyticModel
getViableRecompilationChoices
in class AnalyticModel
prevCompiler
- The compiler compiler that was used to
compile cmpMethodcmpMethod
- The compiled method being consideredprotected void createViableOptionLookupTable(int maxCompiler)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |