Class PlanSelectionFuseCostBased
- java.lang.Object
-
- org.apache.sysds.hops.codegen.opt.PlanSelection
-
- org.apache.sysds.hops.codegen.opt.PlanSelectionFuseCostBased
-
public class PlanSelectionFuseCostBased extends PlanSelection
This cost-based plan selection algorithm chooses fused operators based on the DAG structure and resulting overall costs. This primarily includes decisions on materialization points, but also heuristics for template types, and composed multi output templates.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.sysds.hops.codegen.opt.PlanSelection
PlanSelection.VisitMarkCost
-
-
Constructor Summary
Constructors Constructor Description PlanSelectionFuseCostBased()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
selectPlans(CPlanMemoTable memo, ArrayList<Hop> roots)
Given a HOP DAG G, and a set of partial fusions plans P, find the set of optimal, non-conflicting fusion plans P' that applied to G minimizes costs C with P' = \argmin_{p \subseteq P} C(G, p) s.t.
-
-
-
Method Detail
-
selectPlans
public void selectPlans(CPlanMemoTable memo, ArrayList<Hop> roots)
Description copied from class:PlanSelection
Given a HOP DAG G, and a set of partial fusions plans P, find the set of optimal, non-conflicting fusion plans P' that applied to G minimizes costs C with P' = \argmin_{p \subseteq P} C(G, p) s.t. Z \vDash p, where Z is a set of constraints such as memory budgets and block size restrictions per fused operator.- Specified by:
selectPlans
in classPlanSelection
- Parameters:
memo
- partial fusion plans Proots
- entry points of HOP DAG G
-
-