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
  • Field Details

    • DEFAULT_EST_PARALLELISM

      public static final double DEFAULT_EST_PARALLELISM
      See Also:
    • FACTOR_NUM_ITERATIONS

      public static final long FACTOR_NUM_ITERATIONS
      See Also:
    • DEFAULT_TIME_ESTIMATE

      public static final double DEFAULT_TIME_ESTIMATE
      See Also:
    • DEFAULT_MEM_ESTIMATE_CP

      public static final double DEFAULT_MEM_ESTIMATE_CP
      See Also:
    • DEFAULT_MEM_ESTIMATE_SP

      public static final double DEFAULT_MEM_ESTIMATE_SP
      See Also:
  • Constructor Details

    • CostEstimator

      public CostEstimator()
  • Method Details

    • 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 instructions
      et - 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 node
      et - execution type
      Returns:
      estimate