Package org.apache.sysds.hops.codegen.opt

## 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
`PlanSelectionFuseNoRedundancy()`

### Method Summary

All Methods Instance Methods Concrete Methods
`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.

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

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

### Constructor Detail

#### PlanSelectionFuseNoRedundancy

    public PlanSelectionFuseNoRedundancy()

### 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 class `PlanSelection`
Parameters:
  `memo` - partial fusion plans P
  `roots` - entry points of HOP DAG G