class |
RewriteAlgebraicSimplificationDynamic |
Rule: Algebraic Simplifications.
|
class |
RewriteAlgebraicSimplificationStatic |
Rule: Algebraic Simplifications.
|
class |
RewriteBlockSizeAndReblock |
Rule: BlockSizeAndReblock.
|
class |
RewriteCommonSubexpressionElimination |
Rule: CommonSubexpressionElimination.
|
class |
RewriteConstantFolding |
Rule: Constant Folding.
|
class |
RewriteElementwiseMultChainOptimization |
Prerequisite: RewriteCommonSubexpressionElimination must run before this rule.
|
class |
RewriteGPUSpecificOps |
|
class |
RewriteIndexingVectorization |
Rule: Indexing vectorization.
|
class |
RewriteInjectSparkPReadCheckpointing |
Rule: Inject checkpointing on reading in data in all cases where the operand is used in more than one operation.
|
class |
RewriteMatrixMultChainOptimization |
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
|
class |
RewriteMatrixMultChainOptimizationSparse |
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
and sparsity estimates using the MNC sketch
Goal: To reduce the number of computations in the run-time
(map-reduce) layer
|
class |
RewriteMatrixMultChainOptimizationTranspose |
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
|
class |
RewriteRemoveDanglingParentReferences |
This rewrite is a general-purpose cleanup pass that removes any
dangling parent references in one pass through the hop DAG.
|
class |
RewriteRemovePersistentReadWrite |
This rewrite is a custom rewrite for JMLC in order to replace all persistent reads
and writes with transient reads and writes from the symbol table.
|
class |
RewriteRemoveReadAfterWrite |
Rule: RemoveReadAfterWrite.
|
class |
RewriteRemoveUnnecessaryCasts |
Rule: RemoveUnnecessaryCasts.
|
class |
RewriteTransientWriteParentHandling |
Rule: Eliminate for Transient Write DataHops to have no parents
Solution: Move parent edges of Transient Write Hop to parent of
its child
Reason: Transient Write not being a root messes up
analysis for Lop's to Instruction translation (according to Amol)
|