Package org.apache.sysds.hops.rewrite
Class RewriteCompressedReblock
java.lang.Object
org.apache.sysds.hops.rewrite.StatementBlockRewriteRule
org.apache.sysds.hops.rewrite.RewriteCompressedReblock
Rule: Compressed Re block if config compressed.linalg is enabled, we inject compression directions after read of
matrices if number of rows is above 1000 and cols at least 1.
In case of 'auto' compression, we apply compression if the data size is known to exceed aggregate cluster memory, the
matrix is used in loops, and all operations are supported over compressed matrices.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanIndicates if the rewrite potentially splits dags, which is used for phase ordering of rewrites.Handle an arbitrary statement block.rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) Handle a list of statement blocks.static booleanstatic booleanstatic booleanMethods inherited from class org.apache.sysds.hops.rewrite.StatementBlockRewriteRule
createCutVarName
-
Constructor Details
-
RewriteCompressedReblock
public RewriteCompressedReblock()
-
-
Method Details
-
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
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 blocksate- 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
-
satisfiesSizeConstraintsForCompression
-
satisfiesCompressionCondition
-
satisfiesAggressiveCompressionCondition
-