Class PlanSelectionFuseNoRedundancy
- java.lang.Object
 - 
- org.apache.sysds.hops.codegen.opt.PlanSelection
 - 
- org.apache.sysds.hops.codegen.opt.PlanSelectionFuseNoRedundancy
 
 
 
- 
public class PlanSelectionFuseNoRedundancy extends PlanSelection
This plan selection heuristic aims for fusion without any redundant computation, which, however, potentially leads to more materialized intermediates than the fuse all heuristic.NOTE: This heuristic is essentially the same as FuseAll, except that any plans that refer to a hop with multiple consumers are removed in a pre-processing step.
 
- 
- 
Nested Class Summary
- 
Nested classes/interfaces inherited from class org.apache.sysds.hops.codegen.opt.PlanSelection
PlanSelection.VisitMarkCost 
 - 
 
- 
Constructor Summary
Constructors Constructor Description PlanSelectionFuseNoRedundancy() 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidselectPlans(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:PlanSelectionGiven 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:
 selectPlansin classPlanSelection- Parameters:
 memo- partial fusion plans Proots- entry points of HOP DAG G
 
 - 
 
 -