| Modifier and Type | Method and Description | 
|---|---|
static void | 
JMLCUtils.rCleanupRuntimeProgram(ProgramBlock pb,
                      HashSet<String> outputs)
Cleanup program blocks (called recursively). 
 | 
| Modifier and Type | Method and Description | 
|---|---|
static void | 
SpoofCompiler.generateCodeFromProgramBlock(ProgramBlock current)  | 
| Modifier and Type | Method and Description | 
|---|---|
static double | 
CostEstimationWrapper.getTimeEstimate(ProgramBlock pb,
               ExecutionContext ec,
               boolean recursive)  | 
double | 
CostEstimator.getTimeEstimate(ProgramBlock pb,
               LocalVariableMap vars,
               HashMap<String,VarStats> stats,
               boolean recursive)  | 
| Modifier and Type | Method and Description | 
|---|---|
static void | 
Recompiler.recompileProgramBlockInstructions(ProgramBlock pb)
This method does NO full program block recompile (no stats update, no rewrites, no recursion) but
 only regenerates lops and instructions. 
 | 
static void | 
Recompiler.rRecompileProgramBlock2Forced(ProgramBlock pb,
                             long tid,
                             HashSet<String> fnStack,
                             Types.ExecType et)  | 
| Modifier and Type | Method and Description | 
|---|---|
static void | 
Recompiler.recompileProgramBlockHierarchy(ArrayList<ProgramBlock> pbs,
                              LocalVariableMap vars,
                              long tid,
                              boolean inplace,
                              Recompiler.ResetType resetRecompile)  | 
static void | 
Recompiler.recompileProgramBlockHierarchy2Forced(ArrayList<ProgramBlock> pbs,
                                     long tid,
                                     HashSet<String> fnStack,
                                     Types.ExecType et)
Method to recompile program block hierarchy to forced execution time. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
ProgramBlock | 
DMLTranslator.createRuntimeProgramBlock(Program prog,
                         StatementBlock sb,
                         DMLConfig config)  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
DMLTranslator.codgenHopsDAG(ProgramBlock pb)  | 
| Modifier and Type | Class and Description | 
|---|---|
class  | 
BasicProgramBlock  | 
class  | 
ForProgramBlock  | 
class  | 
FunctionProgramBlock  | 
class  | 
IfProgramBlock  | 
class  | 
ParForProgramBlock
The ParForProgramBlock has the same execution semantics as a ForProgamBlock but executes
 the independent iterations in parallel. 
 | 
class  | 
WhileProgramBlock  | 
| Modifier and Type | Method and Description | 
|---|---|
ArrayList<ProgramBlock> | 
BasicProgramBlock.getChildBlocks()  | 
ArrayList<ProgramBlock> | 
ForProgramBlock.getChildBlocks()  | 
ArrayList<ProgramBlock> | 
IfProgramBlock.getChildBlocks()  | 
abstract ArrayList<ProgramBlock> | 
ProgramBlock.getChildBlocks()
Get the list of child program blocks if nested; otherwise this method returns null. 
 | 
ArrayList<ProgramBlock> | 
FunctionProgramBlock.getChildBlocks()  | 
ArrayList<ProgramBlock> | 
WhileProgramBlock.getChildBlocks()  | 
ArrayList<ProgramBlock> | 
IfProgramBlock.getChildBlocksElseBody()  | 
ArrayList<ProgramBlock> | 
IfProgramBlock.getChildBlocksIfBody()  | 
ArrayList<ProgramBlock> | 
Program.getProgramBlocks()  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
ForProgramBlock.addProgramBlock(ProgramBlock childBlock)  | 
void | 
Program.addProgramBlock(ProgramBlock pb)  | 
void | 
FunctionProgramBlock.addProgramBlock(ProgramBlock childBlock)  | 
void | 
WhileProgramBlock.addProgramBlock(ProgramBlock childBlock)  | 
void | 
IfProgramBlock.addProgramBlockElseBody(ProgramBlock pb)  | 
void | 
IfProgramBlock.addProgramBlockIfBody(ProgramBlock pb)  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
ForProgramBlock.setChildBlocks(ArrayList<ProgramBlock> pbs)  | 
void | 
FunctionProgramBlock.setChildBlocks(ArrayList<ProgramBlock> pbs)  | 
void | 
WhileProgramBlock.setChildBlocks(ArrayList<ProgramBlock> childs)  | 
void | 
IfProgramBlock.setChildBlocksElseBody(ArrayList<ProgramBlock> blocks)  | 
void | 
IfProgramBlock.setChildBlocksIfBody(ArrayList<ProgramBlock> blocks)  | 
| Modifier and Type | Method and Description | 
|---|---|
static void | 
ParamservUtils.recompileProgramBlocks(int k,
                      List<ProgramBlock> pbs)  | 
static void | 
ParamservUtils.recompileProgramBlocks(int k,
                      List<ProgramBlock> pbs,
                      boolean forceExecTypeCP)  | 
| Modifier and Type | Method and Description | 
|---|---|
ArrayList<ProgramBlock> | 
ParForBody.getChildBlocks()  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
ParForBody.setChildBlocks(ArrayList<ProgramBlock> childBlocks)  | 
| Constructor and Description | 
|---|
ParForBody(ArrayList<ProgramBlock> childBlocks,
          ArrayList<ParForStatementBlock.ResultVar> resultVars,
          ExecutionContext ec)  | 
| Modifier and Type | Method and Description | 
|---|---|
ProgramBlock | 
OptTree.getMappedProgramBlock(long id)  | 
ProgramBlock | 
OptTreePlanMappingAbstract.getMappedProgramBlock(long id)  | 
| Modifier and Type | Method and Description | 
|---|---|
static ArrayList<ProgramBlock> | 
ProgramRecompiler.generatePartitialRuntimeProgram(Program rtprog,
                               ArrayList<StatementBlock> sbs)  | 
| Modifier and Type | Method and Description | 
|---|---|
static void | 
OptTreePlanChecker.checkProgramCorrectness(ProgramBlock pb,
                       StatementBlock sb,
                       Set<String> fnStack)  | 
static boolean | 
ProgramRecompiler.containsAtLeastOneFunction(ProgramBlock pb)  | 
long | 
OptTreePlanMappingRuntime.putMapping(ProgramBlock pb,
          OptNode n)  | 
long | 
OptTreePlanMappingAbstract.putProgMapping(StatementBlock sb,
              ProgramBlock pb,
              OptNode n)  | 
static boolean | 
OptTreeConverter.rContainsSparkInstruction(ProgramBlock pb,
                         boolean inclFunctions)  | 
static OptNode | 
OptTreeConverter.rCreateAbstractOptNode(StatementBlock sb,
                      ProgramBlock pb,
                      LocalVariableMap vars,
                      boolean topLevel,
                      OptTreePlanMappingAbstract hlMap,
                      Set<String> memo)  | 
static OptNode | 
OptTreeConverter.rCreateOptNode(ProgramBlock pb,
              LocalVariableMap vars,
              boolean topLevel,
              OptTreePlanMappingRuntime rtMap,
              boolean storeObjs)  | 
void | 
OptTreePlanMappingRuntime.replaceMapping(ProgramBlock pb,
              OptNode n)  | 
void | 
OptTreePlanMappingAbstract.replaceMapping(ProgramBlock pb,
              OptNode n)  | 
static void | 
OptTreeConverter.replaceProgramBlock(List<ProgramBlock> pbs,
                   ProgramBlock pbOld,
                   ProgramBlock pbNew)  | 
static void | 
OptTreeConverter.replaceProgramBlock(OptNode parent,
                   OptNode n,
                   ProgramBlock pbOld,
                   ProgramBlock pbNew,
                   OptTreePlanMappingAbstract hlMap)  | 
static void | 
OptTreeConverter.replaceProgramBlock(OptNode parent,
                   OptNode n,
                   ProgramBlock pbOld,
                   ProgramBlock pbNew,
                   OptTreePlanMappingRuntime rtMap)  | 
static void | 
ProgramRecompiler.rFindAndRecompileIndexingHOP(StatementBlock sb,
                            ProgramBlock pb,
                            String var,
                            ExecutionContext ec,
                            boolean force)
NOTE: if force is set, we set and recompile the respective indexing hops;
 otherwise, we release the forced exec type and recompile again. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
static void | 
OptTreeConverter.replaceProgramBlock(List<ProgramBlock> pbs,
                   ProgramBlock pbOld,
                   ProgramBlock pbNew)  | 
| Modifier and Type | Method and Description | 
|---|---|
Map<ProgramBlock,LineageDedupBlock> | 
Lineage.getDedupBlocks()  | 
| Modifier and Type | Method and Description | 
|---|---|
static LineageDedupBlock | 
LineageDedupUtils.computeDedupBlock(ProgramBlock fpb,
                 ExecutionContext ec)  | 
static long | 
LineageDedupUtils.computeNumPaths(ProgramBlock fpb,
               ExecutionContext ec)  | 
void | 
Lineage.createDedupPatch(ProgramBlock pb,
                ExecutionContext ec)  | 
static LineageDedupBlock | 
LineageDedupUtils.initializeDedupBlock(ProgramBlock fpb,
                    ExecutionContext ec)  | 
void | 
Lineage.initializeDedupBlock(ProgramBlock pb,
                    ExecutionContext ec)  | 
static boolean | 
LineageDedupUtils.isValidDedupBlock(ProgramBlock pb,
                 boolean inLoop)  | 
static void | 
LineageDedupUtils.setNewDedupPatch(LineageDedupBlock ldb,
                ProgramBlock fpb,
                ExecutionContext ec)  | 
void | 
Lineage.traceCurrentDedupPath(ProgramBlock pb,
                     ExecutionContext ec)  | 
void | 
LineageDedupBlock.traceProgramBlock(ProgramBlock pb,
                 ExecutionContext ec,
                 Collection<Map.Entry<Long,LineageMap>> paths)  | 
| Modifier and Type | Method and Description | 
|---|---|
static long | 
LineageDedupUtils.numPathsInPBs(ArrayList<ProgramBlock> pbs,
             ExecutionContext ec)  | 
void | 
LineageDedupBlock.setNumPathsInPBs(ArrayList<ProgramBlock> pbs,
                ExecutionContext ec)  | 
void | 
LineageDedupBlock.traceProgramBlocks(ArrayList<ProgramBlock> pbs,
                  ExecutionContext ec)  | 
| Modifier and Type | Method and Description | 
|---|---|
static ArrayList<ProgramBlock> | 
ProgramConverter.rcreateDeepCopyProgramBlocks(ArrayList<ProgramBlock> childBlocks,
                            long pid,
                            int IDPrefix,
                            Set<String> fnStack,
                            Set<String> fnCreated,
                            boolean plain,
                            boolean forceDeepCopy)
This recursively creates a deep copy of program blocks and transparently replaces filenames according to the
 specified parallel worker in order to avoid conflicts between parworkers. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
static ArrayList<ProgramBlock> | 
ProgramConverter.rcreateDeepCopyProgramBlocks(ArrayList<ProgramBlock> childBlocks,
                            long pid,
                            int IDPrefix,
                            Set<String> fnStack,
                            Set<String> fnCreated,
                            boolean plain,
                            boolean forceDeepCopy)
This recursively creates a deep copy of program blocks and transparently replaces filenames according to the
 specified parallel worker in order to avoid conflicts between parworkers. 
 | 
static String | 
ProgramConverter.serializeProgram(Program prog,
                ArrayList<ProgramBlock> pbs,
                HashMap<String,byte[]> clsMap)  | 
| Modifier and Type | Method and Description | 
|---|---|
static String | 
Explain.explain(ProgramBlock pb)  | 
Copyright © 2021 The Apache Software Foundation. All rights reserved.