Package org.apache.sysds.hops.rewrite
Class RewriteSplitDagUnknownCSVRead
- java.lang.Object
-
- org.apache.sysds.hops.rewrite.StatementBlockRewriteRule
-
- org.apache.sysds.hops.rewrite.RewriteSplitDagUnknownCSVRead
-
public class RewriteSplitDagUnknownCSVRead extends StatementBlockRewriteRule
Rule: Split Hop DAG after CSV reads with unknown size. This is important to create recompile hooks if format is read from mtd (we are not able to split it on statementblock creation) and mtd has unknown size (which can only happen for CSV).
-
-
Constructor Summary
Constructors Constructor Description RewriteSplitDagUnknownCSVRead()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancreatesSplitDag()Indicates if the rewrite potentially splits dags, which is used for phase ordering of rewrites.List<StatementBlock>rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state)Handle an arbitrary statement block.List<StatementBlock>rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate)Handle a list of statement blocks.-
Methods inherited from class org.apache.sysds.hops.rewrite.StatementBlockRewriteRule
createCutVarName
-
-
-
-
Method Detail
-
createsSplitDag
public boolean createsSplitDag()
Description copied from class:StatementBlockRewriteRuleIndicates if the rewrite potentially splits dags, which is used for phase ordering of rewrites.- Specified by:
createsSplitDagin classStatementBlockRewriteRule- Returns:
- true if dag splits are possible.
-
rewriteStatementBlock
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state)
Description copied from class:StatementBlockRewriteRuleHandle an arbitrary statement block. Specific type constraints have to be ensured within the individual rewrites. If a rewrite does not apply to individual blocks, it should simply return the input block.- Specified by:
rewriteStatementBlockin classStatementBlockRewriteRule- Parameters:
sb- statement blockstate- program rewrite status- Returns:
- list of statement blocks
-
rewriteStatementBlocks
public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate)
Description copied from class:StatementBlockRewriteRuleHandle a list of statement blocks. Specific type constraints have to be ensured within the individual rewrites. If a rewrite does not require sequence access, it should simply return the input list of statement blocks.- Specified by:
rewriteStatementBlocksin classStatementBlockRewriteRule- Parameters:
sbs- list of statement blockssate- program rewrite status- Returns:
- list of statement blocks
-
-