Package org.apache.sysds.hops.ipa
Class IPAPass
- java.lang.Object
-
- org.apache.sysds.hops.ipa.IPAPass
-
- Direct Known Subclasses:
IPAPassApplyStaticAndDynamicHopRewrites
,IPAPassCompressionWorkloadAnalysis
,IPAPassEliminateDeadCode
,IPAPassFlagFunctionsRecompileOnce
,IPAPassFlagNonDeterminism
,IPAPassForwardFunctionCalls
,IPAPassInlineFunctions
,IPAPassPropagateReplaceLiterals
,IPAPassRemoveConstantBinaryOps
,IPAPassRemoveUnnecessaryCheckpoints
,IPAPassRemoveUnusedFunctions
,IPAPassReplaceEvalFunctionCalls
,IPAPassRewriteFederatedPlan
public abstract class IPAPass extends Object
Base class for all IPA passes.
-
-
Constructor Summary
Constructors Constructor Description IPAPass()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract boolean
isApplicable(FunctionCallGraph fgraph)
Indicates if an IPA pass is applicable for the current configuration such as global flags or the chosen execution mode (e.g., HYBRID).abstract boolean
rewriteProgram(DMLProgram prog, FunctionCallGraph fgraph, FunctionCallSizeInfo fcallSizes)
Rewrites the given program or its functions in place, with access to the read-only function call graph.
-
-
-
Method Detail
-
isApplicable
public abstract boolean isApplicable(FunctionCallGraph fgraph)
Indicates if an IPA pass is applicable for the current configuration such as global flags or the chosen execution mode (e.g., HYBRID).- Parameters:
fgraph
- function call graph- Returns:
- true if applicable.
-
rewriteProgram
public abstract boolean rewriteProgram(DMLProgram prog, FunctionCallGraph fgraph, FunctionCallSizeInfo fcallSizes)
Rewrites the given program or its functions in place, with access to the read-only function call graph.- Parameters:
prog
- dml programfgraph
- function call graphfcallSizes
- function call size infos- Returns:
- true if function call graph should be rebuild
-
-