ArrayList<Hop> |
ProgramRewriter.rewriteHopDAG(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
Hop |
RewriteAlgebraicSimplificationDynamic.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteAlgebraicSimplificationStatic.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteTransientWriteParentHandling.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteCommonSubexpressionElimination.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteConstantFolding.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteIndexingVectorization.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteInjectSparkPReadCheckpointing.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteGPUSpecificOps.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteBlockSizeAndReblock.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteRemoveReadAfterWrite.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
abstract Hop |
HopRewriteRule.rewriteHopDAG(Hop root,
ProgramRewriteStatus state)
Handle a predicate hop DAG with exactly one root.
|
Hop |
RewriteElementwiseMultChainOptimization.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteRemoveUnnecessaryCasts.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteRemoveDanglingParentReferences.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
ProgramRewriter.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteRemovePersistentReadWrite.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
Hop |
RewriteMatrixMultChainOptimization.rewriteHopDAG(Hop root,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteAlgebraicSimplificationDynamic.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteAlgebraicSimplificationStatic.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteTransientWriteParentHandling.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteCommonSubexpressionElimination.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteConstantFolding.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteIndexingVectorization.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteInjectSparkPReadCheckpointing.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteGPUSpecificOps.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteBlockSizeAndReblock.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteRemoveReadAfterWrite.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
abstract ArrayList<Hop> |
HopRewriteRule.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state)
Handle a generic (last-level) hop DAG with multiple roots.
|
ArrayList<Hop> |
RewriteElementwiseMultChainOptimization.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteRemoveUnnecessaryCasts.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteRemoveDanglingParentReferences.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteRemovePersistentReadWrite.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
ArrayList<Hop> |
RewriteMatrixMultChainOptimization.rewriteHopDAGs(ArrayList<Hop> roots,
ProgramRewriteStatus state) |
void |
ProgramRewriter.rewriteHopDAGsFunction(FunctionStatementBlock fsb,
ProgramRewriteStatus state,
boolean splitDags) |
ProgramRewriteStatus |
ProgramRewriter.rewriteProgramHopDAGs(DMLProgram dmlp,
boolean splitDags,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteForLoopVectorization.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state) |
List<StatementBlock> |
MarkForLineageReuse.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus status) |
List<StatementBlock> |
RewriteRemoveEmptyBasicBlocks.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteSplitDagDataDependentOperators.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteCompressedReblock.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus sate) |
List<StatementBlock> |
RewriteMergeBlockSequence.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteInjectSparkLoopCheckpointing.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus status) |
abstract List<StatementBlock> |
StatementBlockRewriteRule.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state)
Handle an arbitrary statement block.
|
List<StatementBlock> |
RewriteHoistLoopInvariantOperations.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteMarkLoopVariablesUpdateInPlace.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus status) |
List<StatementBlock> |
RewriteSplitDagUnknownCSVRead.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteRemoveUnnecessaryBranches.rewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteForLoopVectorization.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
List<StatementBlock> |
MarkForLineageReuse.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus status) |
List<StatementBlock> |
RewriteRemoveEmptyBasicBlocks.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
List<StatementBlock> |
RewriteSplitDagDataDependentOperators.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
List<StatementBlock> |
RewriteCompressedReblock.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
List<StatementBlock> |
RewriteMergeBlockSequence.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
List<StatementBlock> |
RewriteInjectSparkLoopCheckpointing.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
abstract List<StatementBlock> |
StatementBlockRewriteRule.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus state)
Handle a list of statement blocks.
|
List<StatementBlock> |
RewriteHoistLoopInvariantOperations.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus state) |
List<StatementBlock> |
RewriteMarkLoopVariablesUpdateInPlace.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
List<StatementBlock> |
RewriteSplitDagUnknownCSVRead.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
List<StatementBlock> |
RewriteRemoveUnnecessaryBranches.rewriteStatementBlocks(List<StatementBlock> sbs,
ProgramRewriteStatus sate) |
ArrayList<StatementBlock> |
ProgramRewriter.rRewriteStatementBlock(StatementBlock sb,
ProgramRewriteStatus status,
boolean splitDags) |
void |
ProgramRewriter.rRewriteStatementBlockHopDAGs(StatementBlock current,
ProgramRewriteStatus state) |
ArrayList<StatementBlock> |
ProgramRewriter.rRewriteStatementBlocks(ArrayList<StatementBlock> sbs,
ProgramRewriteStatus status,
boolean splitDags) |