Package org.apache.sysds.runtime.controlprogram.parfor.opt

## Class OptimizerHeuristic

- java.lang.Object
- - org.apache.sysds.runtime.controlprogram.parfor.opt.Optimizer
  - - org.apache.sysds.runtime.controlprogram.parfor.opt.OptimizerRuleBased
    - - org.apache.sysds.runtime.controlprogram.parfor.opt.OptimizerHeuristic

    public class OptimizerHeuristic
    extends OptimizerRuleBased

Heuristic ParFor Optimizer: This optimizer extends the rule-based optimizer by a time-based cost estimate for execution type decisions.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.sysds.runtime.controlprogram.parfor.opt.Optimizer

`Optimizer.CostModelType`

### Field Summary

Fields
`static double` `EXEC_TIME_THRESHOLD`

### Fields inherited from class org.apache.sysds.runtime.controlprogram.parfor.opt.OptimizerRuleBased

`ALLOW_REMOTE_NESTED_PARALLELISM, FUNCTION_UNFOLD_NAMEPREFIX, MAX_REPLICATION_FACTOR_EXPORT, MAX_REPLICATION_FACTOR_PARTITIONING, PAR_K_FACTOR, PAR_K_MR_FACTOR, PROB_SIZE_THRESHOLD_MB, PROB_SIZE_THRESHOLD_PARTITIONING, PROB_SIZE_THRESHOLD_REMOTE`

### Constructor Summary

Constructors
`OptimizerHeuristic()`

### Method Summary

All Methods Instance Methods Concrete Methods
`Optimizer.CostModelType` `getCostModelType()`
`ParForProgramBlock.POptMode` `getOptMode()`

### Methods inherited from class org.apache.sysds.runtime.controlprogram.parfor.opt.OptimizerRuleBased

`allowsBinaryCellPartitions, isInMemoryResultMerge, optimize, toMB`

### Methods inherited from class org.apache.sysds.runtime.controlprogram.parfor.opt.Optimizer

`getNumEvaluatedPlans, getNumTotalPlans`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### EXEC_TIME_THRESHOLD

    public static final double EXEC_TIME_THRESHOLD

See Also:
  Constant Field Values

### Constructor Detail

#### OptimizerHeuristic

    public OptimizerHeuristic()

### Method Detail

#### getCostModelType

    public Optimizer.CostModelType getCostModelType()

Overrides:
  `getCostModelType` in class `OptimizerRuleBased`

#### getOptMode

    public ParForProgramBlock.POptMode getOptMode()

Overrides:
  `getOptMode` in class `OptimizerRuleBased`