Class CostEstimator
- java.lang.Object
-
- org.apache.sysds.runtime.controlprogram.parfor.opt.CostEstimator
-
- Direct Known Subclasses:
CostEstimatorHops
,CostEstimatorRuntime
public abstract class CostEstimator extends Object
Base class for all potential cost estimators TODO account for shared read-only matrices when computing aggregated stats
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CostEstimator.DataFormat
static class
CostEstimator.ExcludeType
static class
CostEstimator.TestMeasure
-
Field Summary
Fields Modifier and Type Field Description static double
DEFAULT_EST_PARALLELISM
static double
DEFAULT_MEM_ESTIMATE_CP
static double
DEFAULT_MEM_ESTIMATE_SP
static double
DEFAULT_TIME_ESTIMATE
static long
FACTOR_NUM_ITERATIONS
-
Constructor Summary
Constructors Constructor Description CostEstimator()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description double
getEstimate(CostEstimator.TestMeasure measure, OptNode node)
Main estimation method.double
getEstimate(CostEstimator.TestMeasure measure, OptNode node, boolean inclCondPart)
double
getEstimate(CostEstimator.TestMeasure measure, OptNode node, boolean inclCondPart, Collection<String> vars, CostEstimator.ExcludeType extype)
double
getEstimate(CostEstimator.TestMeasure measure, OptNode node, Types.ExecType et)
Main estimation method.abstract double
getLeafNodeEstimate(CostEstimator.TestMeasure measure, OptNode node)
Main leaf node estimation method - to be overwritten by specific cost estimatorsabstract double
getLeafNodeEstimate(CostEstimator.TestMeasure measure, OptNode node, Types.ExecType et)
Main leaf node estimation method - to be overwritten by specific cost estimators
-
-
-
Field Detail
-
DEFAULT_EST_PARALLELISM
public static final double DEFAULT_EST_PARALLELISM
- See Also:
- Constant Field Values
-
FACTOR_NUM_ITERATIONS
public static final long FACTOR_NUM_ITERATIONS
- See Also:
- Constant Field Values
-
DEFAULT_TIME_ESTIMATE
public static final double DEFAULT_TIME_ESTIMATE
- See Also:
- Constant Field Values
-
DEFAULT_MEM_ESTIMATE_CP
public static final double DEFAULT_MEM_ESTIMATE_CP
- See Also:
- Constant Field Values
-
DEFAULT_MEM_ESTIMATE_SP
public static final double DEFAULT_MEM_ESTIMATE_SP
- See Also:
- Constant Field Values
-
-
Method Detail
-
getLeafNodeEstimate
public abstract double getLeafNodeEstimate(CostEstimator.TestMeasure measure, OptNode node)
Main leaf node estimation method - to be overwritten by specific cost estimators- Parameters:
measure
- ?node
- internal representation of a plan alternative for program blocks and instructions- Returns:
- estimate?
-
getLeafNodeEstimate
public abstract double getLeafNodeEstimate(CostEstimator.TestMeasure measure, OptNode node, Types.ExecType et)
Main leaf node estimation method - to be overwritten by specific cost estimators- Parameters:
measure
- ?node
- internal representation of a plan alternative for program blocks and instructionset
- forced execution type for leaf node- Returns:
- estimate?
-
getEstimate
public double getEstimate(CostEstimator.TestMeasure measure, OptNode node)
Main estimation method.- Parameters:
measure
- ?node
- internal representation of a plan alternative for program blocks and instructions- Returns:
- estimate?
-
getEstimate
public double getEstimate(CostEstimator.TestMeasure measure, OptNode node, boolean inclCondPart)
-
getEstimate
public double getEstimate(CostEstimator.TestMeasure measure, OptNode node, boolean inclCondPart, Collection<String> vars, CostEstimator.ExcludeType extype)
-
getEstimate
public double getEstimate(CostEstimator.TestMeasure measure, OptNode node, Types.ExecType et)
Main estimation method.- Parameters:
measure
- estimate type (time or memory)node
- plan opt tree nodeet
- execution type- Returns:
- estimate
-
-