Package org.apache.sysds.hops.rewrite
Class RewriteMatrixMultChainOptimization
- java.lang.Object
- 
- org.apache.sysds.hops.rewrite.HopRewriteRule
- 
- org.apache.sysds.hops.rewrite.RewriteMatrixMultChainOptimization
 
 
- 
- Direct Known Subclasses:
- RewriteMatrixMultChainOptimizationSparse
 
 public class RewriteMatrixMultChainOptimization extends HopRewriteRule Rule: Determine the optimal order of execution for a chain of matrix multiplications Solution: Classic Dynamic Programming Approach: Currently, the approach based only on matrix dimensions Goal: To reduce the number of computations in the run-time (map-reduce) layer
- 
- 
Constructor SummaryConstructors Constructor Description RewriteMatrixMultChainOptimization()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description HoprewriteHopDAG(Hop root, ProgramRewriteStatus state)Handle a predicate hop DAG with exactly one root.ArrayList<Hop>rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)Handle a generic (last-level) hop DAG with multiple roots.
 
- 
- 
- 
Method Detail- 
rewriteHopDAGspublic ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) Description copied from class:HopRewriteRuleHandle a generic (last-level) hop DAG with multiple roots.- Specified by:
- rewriteHopDAGsin class- HopRewriteRule
- Parameters:
- roots- high-level operator roots
- state- program rewrite status
- Returns:
- list of high-level operators
 
 - 
rewriteHopDAGpublic Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) Description copied from class:HopRewriteRuleHandle a predicate hop DAG with exactly one root.- Specified by:
- rewriteHopDAGin class- HopRewriteRule
- Parameters:
- root- high-level operator root
- state- program rewrite status
- Returns:
- high-level operator
 
 
- 
 
-