Class OptimizerConstrained
- 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.OptimizerConstrained
-
public class OptimizerConstrained extends OptimizerRuleBased
Rule-Based ParFor Optimizer (time: O(n)): Applied rule-based rewrites: - see base class. Checked constraints: - 1) rewrite set data partitioner (incl. recompile RIX) - 4) rewrite set execution strategy - 9) rewrite set degree of parallelism - 10) rewrite set task partitioner - 11) rewrite set result merge
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.sysds.runtime.controlprogram.parfor.opt.Optimizer
Optimizer.CostModelType, Optimizer.PlanInputType
-
-
Field Summary
-
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 Constructor Description OptimizerConstrained()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ParForProgramBlock.POptMode
getOptMode()
boolean
optimize(ParForStatementBlock sb, ParForProgramBlock pb, OptTree plan, CostEstimator est, int numRuns, ExecutionContext ec)
Main optimization procedure.-
Methods inherited from class org.apache.sysds.runtime.controlprogram.parfor.opt.OptimizerRuleBased
allowsBinaryCellPartitions, getCostModelType, getPlanInputType, isInMemoryResultMerge, toMB
-
Methods inherited from class org.apache.sysds.runtime.controlprogram.parfor.opt.Optimizer
getNumEvaluatedPlans, getNumTotalPlans
-
-
-
-
Method Detail
-
getOptMode
public ParForProgramBlock.POptMode getOptMode()
- Overrides:
getOptMode
in classOptimizerRuleBased
-
optimize
public boolean optimize(ParForStatementBlock sb, ParForProgramBlock pb, OptTree plan, CostEstimator est, int numRuns, ExecutionContext ec)
Main optimization procedure. Transformation-based heuristic (rule-based) optimization (no use of sb, direct change of pb).- Overrides:
optimize
in classOptimizerRuleBased
- Parameters:
sb
- parfor statement blockpb
- parfor program blockplan
- complete plan of a top-level parforest
- cost estimatornumRuns
- Number of runsec
- execution context- Returns:
- true if plan changed, false otherwise
-
-