## Uses of Class
org.apache.sysds.runtime.controlprogram.context.ExecutionContext

- Packages that use ExecutionContext
  Package | Description
  --- | ---
  org.apache.sysds.api |
  org.apache.sysds.api.mlcontext |
  org.apache.sysds.hops.cost |
  org.apache.sysds.hops.recompile |
  org.apache.sysds.hops.rewrite |
  org.apache.sysds.runtime.codegen |
  org.apache.sysds.runtime.compress |
  org.apache.sysds.runtime.controlprogram |
  org.apache.sysds.runtime.controlprogram.context |
  org.apache.sysds.runtime.controlprogram.federated |
  org.apache.sysds.runtime.controlprogram.paramserv |
  org.apache.sysds.runtime.controlprogram.parfor |
  org.apache.sysds.runtime.controlprogram.parfor.opt |
  org.apache.sysds.runtime.instructions |
  org.apache.sysds.runtime.instructions.cp |
  org.apache.sysds.runtime.instructions.cpfile |
  org.apache.sysds.runtime.instructions.fed |
  org.apache.sysds.runtime.instructions.gpu |
  org.apache.sysds.runtime.instructions.spark |
  org.apache.sysds.runtime.instructions.spark.utils |
  org.apache.sysds.runtime.lineage |
  org.apache.sysds.runtime.matrix.data |
  org.apache.sysds.runtime.privacy.propagation |
  org.apache.sysds.runtime.util |

- - ### Uses of ExecutionContext in org.apache.sysds.api

    Methods in org.apache.sysds.api with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | ScriptExecutorUtils.`executeRuntimeProgram​(Program rtprog, ExecutionContext ec, DMLConfig dmlconf, int statisticsMaxHeavyHitters, Set<String> outputVariables)` | Execute the runtime program.

  - ### Uses of ExecutionContext in org.apache.sysds.api.mlcontext

    Methods in org.apache.sysds.api.mlcontext that return ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `ExecutionContext` | ScriptExecutor.`getExecutionContext()` | Obtain the execution context

  - ### Uses of ExecutionContext in org.apache.sysds.hops.cost

    Methods in org.apache.sysds.hops.cost with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static double` | CostEstimationWrapper.`getTimeEstimate​(ProgramBlock pb, ExecutionContext ec, boolean recursive)` |
    `static double` | CostEstimationWrapper.`getTimeEstimate​(Program rtprog, ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.hops.recompile

    Methods in org.apache.sysds.hops.recompile with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static boolean` | Recompiler.`checkCPReblock​(ExecutionContext ec, String varin)` | CP Reblock check for spark instructions; in contrast to MR, we can not rely on the input file sizes because inputs might be passed via rdds.
    `static void` | Recompiler.`executeInMemoryReblock​(ExecutionContext ec, String varin, String varout)` |
    `static void` | Recompiler.`executeInMemoryReblock​(ExecutionContext ec, String varin, String varout, LineageItem litem)` |
    `static ArrayList<Instruction>` | Recompiler.`recompileHopsDag​(StatementBlock sb, ArrayList<Hop> hops, ExecutionContext ec, RecompileStatus status, boolean inplace, boolean replaceLit, long tid)` |
    `static void` | Recompiler.`rReplaceLiterals​(Hop hop, ExecutionContext ec, boolean scalarsOnly)` | public interface to package local literal replacement

  - ### Uses of ExecutionContext in org.apache.sysds.hops.rewrite

    Methods in org.apache.sysds.hops.rewrite with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `FederatedResponse` | RewriteFederatedExecution.PrivacyConstraintRetriever.`execute​(ExecutionContext ec, Data... data)` | Reads metadata JSON object, parses privacy constraint and returns the constraint in FederatedResponse.
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | RewriteFederatedExecution.PrivacyConstraintRetriever.`getLineageItem​(ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.codegen

    Methods in org.apache.sysds.runtime.codegen with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `ScalarObject` | SpoofCUDACellwise.`execute​(ExecutionContext ec, ArrayList<MatrixObject> inputs, ArrayList<ScalarObject> scalarObjects)` |
    `MatrixObject` | SpoofCUDACellwise.`execute​(ExecutionContext ec, ArrayList<MatrixObject> inputs, ArrayList<ScalarObject> scalarObjects, String outputName)` |
    `ScalarObject` | SpoofCUDAOperator.`execute​(ExecutionContext ec, ArrayList<MatrixObject> inputs, ArrayList<ScalarObject> scalarObjects)` |
    `MatrixObject` | SpoofCUDAOperator.`execute​(ExecutionContext ec, ArrayList<MatrixObject> inputs, ArrayList<ScalarObject> scalarObjects, String outputName)` |
    `ScalarObject` | SpoofCUDARowwise.`execute​(ExecutionContext ec, ArrayList<MatrixObject> inputs, ArrayList<ScalarObject> scalarObjects)` |
    `MatrixObject` | SpoofCUDARowwise.`execute​(ExecutionContext ec, ArrayList<MatrixObject> inputs, ArrayList<ScalarObject> scalarObjects, String outputName)` |
    `default void` | SpoofCUDAOperator.`packDataForTransfer​(ExecutionContext ec, ArrayList<MatrixObject> inputs, ArrayList<ScalarObject> scalarObjects, MatrixObject out_obj, int num_inputs, int ID, long grix, boolean tB1, jcuda.Pointer[] ptr)` |
    `default void` | SpoofCUDAOperator.`prepareMatrixPointers​(ByteBuffer buf, ExecutionContext ec, MatrixObject mo, boolean tB1)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.compress

    Methods in org.apache.sysds.runtime.compress with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | CompressedMatrixBlockFactory.`compressAsync​(ExecutionContext ec, String varName)` |
    `static void` | CompressedMatrixBlockFactory.`compressAsync​(ExecutionContext ec, String varName, InstructionTypeCounter ins)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.controlprogram

    Methods in org.apache.sysds.runtime.controlprogram with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | BasicProgramBlock.`execute​(ExecutionContext ec)` |
    `void` | ForProgramBlock.`execute​(ExecutionContext ec)` |
    `void` | FunctionProgramBlock.`execute​(ExecutionContext ec)` |
    `void` | IfProgramBlock.`execute​(ExecutionContext ec)` |
    `void` | ParForProgramBlock.`execute​(ExecutionContext ec)` |
    `void` | Program.`execute​(ExecutionContext ec)` |
    `abstract void` | ProgramBlock.`execute​(ExecutionContext ec)` | Executes this program block (incl recompilation if required).
    `void` | WhileProgramBlock.`execute​(ExecutionContext ec)` |
    `ScalarObject` | ProgramBlock.`executePredicate​(ArrayList<Instruction> inst, Hop hops, boolean requiresRecompile, Types.ValueType retType, ExecutionContext ec)` | Executes given predicate instructions (incl recompilation if required)

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.controlprogram.context

    Subclasses of ExecutionContext in org.apache.sysds.runtime.controlprogram.context
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SparkExecutionContext` |

    Methods in org.apache.sysds.runtime.controlprogram.context that return ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static ExecutionContext` | ExecutionContextFactory.`createContext()` |
    `static ExecutionContext` | ExecutionContextFactory.`createContext​(boolean allocateVars, boolean allocateLineage, Program prog)` |
    `static ExecutionContext` | ExecutionContextFactory.`createContext​(boolean allocateVars, Program prog)` |
    `static ExecutionContext` | ExecutionContextFactory.`createContext​(LocalVariableMap vars, Program prog)` |
    `static ExecutionContext` | ExecutionContextFactory.`createContext​(Program prog)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.controlprogram.federated

    Methods in org.apache.sysds.runtime.controlprogram.federated that return ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `ExecutionContext` | ExecutionContextMap.`get​(long tid)` |

    Methods in org.apache.sysds.runtime.controlprogram.federated with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | FederatedWorkloadAnalyzer.`compressRun​(ExecutionContext ec, long tid)` |
    `FederatedResponse` | FederatedStatistics.FedStatsCollectFunction.`execute​(ExecutionContext ec, Data... data)` |
    `abstract FederatedResponse` | FederatedUDF.`execute​(ExecutionContext ec, Data... data)` | Execute the user-defined function on a set of data objects (e.g., matrix objects, frame objects, or scalars), which are looked up by specified input IDs and passed in the same order.
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | FederatedStatistics.FedStatsCollectFunction.`getLineageItem​(ExecutionContext ec)` |
    `void` | FederatedWorkloadAnalyzer.`incrementWorkload​(ExecutionContext ec, long tid, Instruction ins)` |
    `void` | FederatedWorkloadAnalyzer.`incrementWorkload​(ExecutionContext ec, ConcurrentHashMap<Long,​InstructionTypeCounter> mm, ComputationCPInstruction cpIns)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.controlprogram.paramserv

    Methods in org.apache.sysds.runtime.controlprogram.paramserv that return ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static ExecutionContext` | ParamservUtils.`createExecutionContext​(ExecutionContext ec, LocalVariableMap varsMap, String updFunc, String aggFunc, int k)` |
    `static ExecutionContext` | ParamservUtils.`createExecutionContext​(ExecutionContext ec, LocalVariableMap varsMap, String updFunc, String aggFunc, int k, boolean forceExecTypeCP)` |
    `ExecutionContext` | SparkPSBody.`getEc()` |

    Methods in org.apache.sysds.runtime.controlprogram.paramserv that return types with arguments of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static List<ExecutionContext>` | ParamservUtils.`copyExecutionContext​(ExecutionContext ec, int num)` |

    Methods in org.apache.sysds.runtime.controlprogram.paramserv with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | ParamservUtils.`cleanupData​(ExecutionContext ec, String varName)` |
    `static void` | ParamservUtils.`cleanupData​(ExecutionContext ec, Data data)` |
    `static void` | ParamservUtils.`cleanupListObject​(ExecutionContext ec, String lName)` | Clean up the list object according to its own data status
    `static void` | ParamservUtils.`cleanupListObject​(ExecutionContext ec, String lName, boolean[] status)` | Clean up the list object according to the given array of data status (i.e., false => not be removed)
    `static void` | ParamservUtils.`cleanupListObject​(ExecutionContext ec, ListObject lo)` |
    `static void` | ParamservUtils.`cleanupListObject​(ExecutionContext ec, ListObject lo, boolean[] status)` |
    `static List<ExecutionContext>` | ParamservUtils.`copyExecutionContext​(ExecutionContext ec, int num)` |
    `static HEParamServer` | HEParamServer.`create​(ListObject model, String aggFunc, Statement.PSUpdateType updateType, Statement.PSFrequency freq, ExecutionContext ec, int workerNum, String valFunc, int numBatchesPerEpoch, MatrixObject valFeatures, MatrixObject valLabels, int nbatches)` |
    `static LocalParamServer` | LocalParamServer.`create​(ListObject model, String aggFunc, Statement.PSUpdateType updateType, Statement.PSFrequency freq, ExecutionContext ec, int workerNum, String valFunc, int numBatchesPerEpoch, MatrixObject valFeatures, MatrixObject valLabels, int nbatches, boolean modelAvg)` |
    `static ExecutionContext` | ParamservUtils.`createExecutionContext​(ExecutionContext ec, LocalVariableMap varsMap, String updFunc, String aggFunc, int k)` |
    `static ExecutionContext` | ParamservUtils.`createExecutionContext​(ExecutionContext ec, LocalVariableMap varsMap, String updFunc, String aggFunc, int k, boolean forceExecTypeCP)` |
    `void` | SparkPSBody.`setEc​(ExecutionContext ec)` |

    Constructors in org.apache.sysds.runtime.controlprogram.paramserv with parameters of type ExecutionContext
    Constructor | Description
    --- | ---
    `FederatedPSControlThread​(int workerID, String updFunc, Statement.PSFrequency freq, Statement.PSRuntimeBalancing runtimeBalancing, boolean weighting, int epochs, long batchSize, int numBatchesPerGlobalEpoch, ExecutionContext ec, ParamServer ps, int nbatches, boolean modelAvg, boolean use_homomorphic_encryption)` |
    `LocalPSWorker​(int workerID, String updFunc, Statement.PSFrequency freq, int epochs, long batchSize, ExecutionContext ec, ParamServer ps, int nbatches, boolean modelAvg)` |
    `SparkPSBody​(ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.controlprogram.parfor

    Methods in org.apache.sysds.runtime.controlprogram.parfor that return ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `ExecutionContext` | ParForBody.`getEc()` |
    `ExecutionContext` | ParWorker.`getExecutionContext()` |

    Methods in org.apache.sysds.runtime.controlprogram.parfor with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static RemoteParForJobReturn` | RemoteDPParForSpark.`runJob​(long pfid, String itervar, String matrixvar, String program, HashMap<String,​byte[]> clsMap, String resultFile, MatrixObject input, ExecutionContext ec, ParForProgramBlock.PartitionFormat dpf, Types.FileFormat fmt, boolean tSparseCol, boolean enableCPCaching, int numReducers)` |
    `static RemoteParForJobReturn` | RemoteParForSpark.`runJob​(long pfid, String prog, HashMap<String,​byte[]> clsMap, List<Task> tasks, ExecutionContext ec, Set<String> brVars, List<ParForStatementBlock.ResultVar> resultVars, boolean cpCaching, int numMappers, boolean topLevelPF)` |
    `void` | ParForBody.`setEc​(ExecutionContext ec)` |

    Constructors in org.apache.sysds.runtime.controlprogram.parfor with parameters of type ExecutionContext
    Constructor | Description
    --- | ---
    `DataPartitionerRemoteSpark​(ParForProgramBlock.PartitionFormat dpf, ExecutionContext ec, long numRed, int replication, boolean keepIndexes)` |
    `ParForBody​(ArrayList<ProgramBlock> childBlocks, ArrayList<ParForStatementBlock.ResultVar> resultVars, ExecutionContext ec)` |
    `ResultMergeRemoteSpark​(MatrixObject out, MatrixObject[] in, String outputFilename, boolean accum, ExecutionContext ec, int numMappers, int numReducers)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.controlprogram.parfor.opt

    Methods in org.apache.sysds.runtime.controlprogram.parfor.opt with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static OptTree` | OptTreeConverter.`createAbstractOptTree​(int ck, double cm, ParForStatementBlock pfsb, ParForProgramBlock pfpb, OptTreePlanMappingAbstract hlMap, Set<String> memo, ExecutionContext ec)` |
    `static OptTree` | OptTreeConverter.`createOptTree​(int ck, double cm, Optimizer.PlanInputType type, ParForStatementBlock pfsb, ParForProgramBlock pfpb, ExecutionContext ec)` |
    `static void` | OptimizationWrapper.`optimize​(ParForProgramBlock.POptMode type, ParForStatementBlock sb, ParForProgramBlock pb, ExecutionContext ec, boolean monitor)` | Called once per top-level parfor (during runtime, on parfor execute) in order to optimize the specific parfor program block.
    `abstract boolean` | Optimizer.`optimize​(ParForStatementBlock sb, ParForProgramBlock pb, OptTree plan, CostEstimator est, ExecutionContext ec)` | Optimize
    `boolean` | OptimizerConstrained.`optimize​(ParForStatementBlock sb, ParForProgramBlock pb, OptTree plan, CostEstimator est, ExecutionContext ec)` | Main optimization procedure.
    `boolean` | OptimizerRuleBased.`optimize​(ParForStatementBlock sb, ParForProgramBlock pb, OptTree plan, CostEstimator est, ExecutionContext ec)` | Main optimization procedure.
    `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.

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.instructions

    Methods in org.apache.sysds.runtime.instructions with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Instruction.`postprocessInstruction​(ExecutionContext ec)` | This method should be used for any tear down after executing this instruction.
    `Instruction` | Instruction.`preprocessInstruction​(ExecutionContext ec)` | This method should be used for any setup before executing this instruction.
    `abstract void` | Instruction.`processInstruction​(ExecutionContext ec)` | This method should be used to execute the instruction.

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.instructions.cp

    Methods in org.apache.sysds.runtime.instructions.cp with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ComputationCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | CtableCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | DataGenCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | FrameIndexingCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ListIndexingCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MatrixAppendCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MatrixBuiltinNaryCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MatrixIndexingCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ParameterizedBuiltinCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ReshapeCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ScalarBuiltinNaryCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | SpoofCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | StringInitCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | VariableCPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair[]` | MultiReturnBuiltinCPInstruction.`getLineageItems​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair[]` | MultiReturnParameterizedBuiltinCPInstruction.`getLineageItems​(ExecutionContext ec)` |
    `CacheableData<?>` | ParameterizedBuiltinCPInstruction.`getTarget​(ExecutionContext ec)` |
    `void` | CPInstruction.`postprocessInstruction​(ExecutionContext ec)` |
    `void` | FunctionCallCPInstruction.`postprocessInstruction​(ExecutionContext ec)` |
    `Instruction` | CPInstruction.`preprocessInstruction​(ExecutionContext ec)` |
    `Instruction` | FunctionCallCPInstruction.`preprocessInstruction​(ExecutionContext ec)` |
    `void` | DnnCPInstruction.`processBatchNorm2dBackwardInstruction​(ExecutionContext ec)` |
    `void` | DnnCPInstruction.`processBatchNorm2dInstruction​(ExecutionContext ec)` |
    `void` | DnnCPInstruction.`processBiasAddInstruction​(ExecutionContext ec)` |
    `void` | DnnCPInstruction.`processBiasMultiplyInstruction​(ExecutionContext ec)` |
    `void` | AggregateBinaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AggregateTernaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AggregateUnaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryFrameFrameCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryFrameMatrixCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryMatrixMatrixCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryMatrixScalarCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryScalarScalarCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryTensorTensorCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BroadcastCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CentralMomentCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CompressionCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CovarianceCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `abstract void` | CPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CtableCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DataGenCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DeCompressionCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DnnCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | EvalNaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | FrameAppendCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | FrameIndexingCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | FunctionCallCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ListAppendRemoveCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ListIndexingCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | LocalCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixAppendCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixBuiltinNaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixIndexingCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MMChainCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MMTSJCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MultiReturnBuiltinCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MultiReturnParameterizedBuiltinCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ParameterizedBuiltinCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ParamservBuiltinCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | PMMJCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | PrefetchCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuantilePickCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuantileSortCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuaternaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReorgCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReshapeCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ScalarAppendCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ScalarBuiltinNaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | SpoofCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | SqlCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | StringInitCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TernaryCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TernaryFrameScalarCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UaggOuterChainCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UnaryFrameCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UnaryMatrixCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UnaryScalarCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | VariableCPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DnnCPInstruction.`processReluBackwardInstruction​(ExecutionContext ec)` |
    `static void` | VariableCPInstruction.`processRmvarInstruction​(ExecutionContext ec, String varname)` | Remove variable instruction externalized as a static function in order to allow various cleanup procedures to use the same codepath as the actual rmVar instruction

    Constructors in org.apache.sysds.runtime.instructions.cp with parameters of type ExecutionContext
    Constructor | Description
    --- | ---
    `TriggerBroadcastTask​(ExecutionContext ec, MatrixObject mo)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.instructions.cpfile

    Methods in org.apache.sysds.runtime.instructions.cpfile with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | MatrixIndexingCPFileInstruction.`processInstruction​(ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.instructions.fed

    Methods in org.apache.sysds.runtime.instructions.fed with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Instruction` | FEDInstructionUtils.`checkAndReplaceCP​(Instruction inst, ExecutionContext ec)` | Check and replace CP instructions with federated instructions if the instruction match criteria.
    `static Instruction` | FEDInstructionUtils.`checkAndReplaceSP​(Instruction inst, ExecutionContext ec)` |
    `org.apache.sysds.runtime.instructions.fed.MultiReturnParameterizedBuiltinFEDInstruction.EncoderColnames` | MultiReturnParameterizedBuiltinFEDInstruction.`createGlobalEncoderWithEquiHeight​(ExecutionContext ec, FrameObject fin, String spec)` |
    `FederatedResponse` | MultiReturnParameterizedBuiltinFEDInstruction.CreateFrameEncoder.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | MultiReturnParameterizedBuiltinFEDInstruction.ExecuteFrameEncoder.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | ParameterizedBuiltinFEDInstruction.DecodeMatrix.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | QuantilePickFEDInstruction.CreateMatrixFromFrame.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | QuantilePickFEDInstruction.GetHistogram.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | QuantilePickFEDInstruction.GetValuesInRange.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | QuantilePickFEDInstruction.GetValuesInRanges.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | QuantilePickFEDInstruction.MinMax.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | ReorgFEDInstruction.DiagMatrix.`execute​(ExecutionContext ec, Data... data)` |
    `FederatedResponse` | ReorgFEDInstruction.Rdiag.`execute​(ExecutionContext ec, Data... data)` |
    `<T> MatrixBlock` | QuantilePickFEDInstruction.`getEquiHeightBins​(ExecutionContext ec, int colID, double[] quantiles)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ComputationFEDInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | InitFEDInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MultiReturnParameterizedBuiltinFEDInstruction.CreateFrameEncoder.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MultiReturnParameterizedBuiltinFEDInstruction.ExecuteFrameEncoder.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ParameterizedBuiltinFEDInstruction.DecodeMatrix.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | QuantilePickFEDInstruction.CreateMatrixFromFrame.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | QuantilePickFEDInstruction.GetHistogram.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | QuantilePickFEDInstruction.GetValuesInRange.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | QuantilePickFEDInstruction.GetValuesInRanges.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | QuantilePickFEDInstruction.MinMax.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ReorgFEDInstruction.DiagMatrix.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ReorgFEDInstruction.Rdiag.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ReshapeFEDInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | VariableFEDInstruction.`getLineageItem​(ExecutionContext ec)` |
    `CacheableData<?>` | ParameterizedBuiltinFEDInstruction.`getTarget​(ExecutionContext ec)` |
    `static boolean` | SpoofFEDInstruction.`isFederated​(ExecutionContext ec, FTypes.FType type, CPOperand[] inputs, Class<?> scla)` |
    `static boolean` | SpoofFEDInstruction.`isFederated​(ExecutionContext ec, CPOperand[] inputs, Class<?> scla)` |
    `Instruction` | FEDInstruction.`preprocessInstruction​(ExecutionContext ec)` |
    `void` | QuantilePickFEDInstruction.`processColumnQPick​(ExecutionContext ec)` |
    `void` | QuantileSortFEDInstruction.`processColumnQSort​(ExecutionContext ec)` |
    `void` | CumulativeOffsetFEDInstruction.`processCumulativeInstruction​(ExecutionContext ec)` |
    `void` | UnaryMatrixFEDInstruction.`processCumulativeInstruction​(ExecutionContext ec, MatrixObject mo1)` |
    `void` | InitFEDInstruction.`processFromLocalFedInit​(ExecutionContext ec)` |
    `void` | AggregateBinaryFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AggregateTernaryFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AggregateUnaryFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AppendFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryMatrixMatrixFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryMatrixScalarFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CastFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CentralMomentFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CovarianceFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CtableFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CumulativeOffsetFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | IndexingFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | InitFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MMChainFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MMFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MultiReturnParameterizedBuiltinFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ParameterizedBuiltinFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuantilePickFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuantileSortFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuaternaryWCeMMFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuaternaryWDivMMFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuaternaryWSigmoidFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuaternaryWSLossFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuaternaryWUMMFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReblockFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReorgFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReshapeFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | SpoofFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TernaryFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TernaryFrameScalarFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TsmmFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UnaryMatrixFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | VariableFEDInstruction.`processInstruction​(ExecutionContext ec)` |
    `<T> void` | QuantilePickFEDInstruction.`processRowQPick​(ExecutionContext ec)` |
    `void` | QuantileSortFEDInstruction.`processRowQSort​(ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.instructions.gpu

    Methods in org.apache.sysds.runtime.instructions.gpu with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | GPUInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MatrixIndexingGPUInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MatrixReshapeGPUInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | SpoofCUDAInstruction.`getLineageItem​(ExecutionContext ec)` |
    `void` | GPUInstruction.`postprocessInstruction​(ExecutionContext ec)` |
    `Instruction` | GPUInstruction.`preprocessInstruction​(ExecutionContext ec)` |
    `void` | DnnGPUInstruction.`processBatchNorm2dBackwardInstruction​(ExecutionContext ec)` |
    `void` | AggregateBinaryGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AggregateUnaryGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DnnGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `abstract void` | GPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixAppendGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixBuiltinGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixIndexingGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixMatrixArithmeticGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixMatrixAxpyGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixMatrixBuiltinGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixMatrixRelationalBinaryGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixReshapeGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MMTSJGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReorgGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ScalarMatrixArithmeticGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ScalarMatrixBuiltinGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ScalarMatrixRelationalBinaryGPUInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | SpoofCUDAInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DnnGPUInstruction.`processReLUBackwardInstruction​(ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.instructions.spark

    Methods in org.apache.sysds.runtime.instructions.spark with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | BuiltinNarySPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ComputationSPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | MatrixIndexingSPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | RandSPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | ReblockSPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | WriteSPInstruction.`getLineageItem​(ExecutionContext ec)` |
    `CacheableData<?>` | ParameterizedBuiltinSPInstruction.`getTarget​(ExecutionContext ec)` |
    `void` | SPInstruction.`postprocessInstruction​(ExecutionContext ec)` |
    `Instruction` | SPInstruction.`preprocessInstruction​(ExecutionContext ec)` |
    `void` | AggregateTernarySPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AggregateUnarySketchSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AggregateUnarySPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AppendGAlignedSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | AppendGSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryFrameFrameSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryFrameMatrixSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryMatrixBVectorSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryMatrixMatrixSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryMatrixScalarSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryTensorTensorBroadcastSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinaryTensorTensorSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BinUaggChainSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | BuiltinNarySPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CastSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CentralMomentSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CheckpointSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CompressionSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CovarianceSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CpmmSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CSVReblockSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CtableSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CumulativeAggregateSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | CumulativeOffsetSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DeCompressionSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | DnnSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | FrameAppendMSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | FrameAppendRSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | FrameIndexingSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | LIBSVMReblockSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MapmmChainSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MapmmSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixAppendMSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixAppendRSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixIndexingSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MatrixReshapeSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | MultiReturnParameterizedBuiltinSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ParameterizedBuiltinSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | PMapmmSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | PmmSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuantilePickSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuantileSortSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | QuaternarySPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | RandSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReblockSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ReorgSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | RmmSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `abstract void` | SPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | SpoofSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TernaryFrameScalarSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TernarySPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | Tsmm2SPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | TsmmSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UaggOuterChainSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UnaryFrameSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | UnaryMatrixSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | WriteSPInstruction.`processInstruction​(ExecutionContext ec)` |
    `void` | ZipmmSPInstruction.`processInstruction​(ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.instructions.spark.utils

    Methods in org.apache.sysds.runtime.instructions.spark.utils with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | SparkUtils.`checkSparsity​(String varname, ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.lineage

    Methods in org.apache.sysds.runtime.lineage with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | LineageItemUtils.`addAllDataLineage​(ExecutionContext ec)` |
    `static LineageDedupBlock` | LineageDedupUtils.`computeDedupBlock​(ProgramBlock fpb, ExecutionContext ec)` |
    `static long` | LineageDedupUtils.`computeNumPaths​(ProgramBlock fpb, ExecutionContext ec)` |
    `void` | Lineage.`createDedupPatch​(ProgramBlock pb, ExecutionContext ec)` |
    `static boolean` | LineageRewriteReuse.`executeRewrites​(Instruction curr, ExecutionContext ec)` |
    `static LineageItem[]` | LineageItemUtils.`getLineage​(ExecutionContext ec, CPOperand... operands)` |
    `org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` | LineageTraceable.`getLineageItem​(ExecutionContext ec)` | Obtain lineage trace of an instruction with a single output.
    `static LineageItem[]` | LineageItemUtils.`getLineageItemInputstoSB​(ArrayList<String> inputs, ExecutionContext ec)` |
    `default org.apache.commons.lang3.tuple.Pair<String,​LineageItem>[]` | LineageTraceable.`getLineageItems​(ExecutionContext ec)` | Obtain lineage trace of an instruction with multiple outputs.
    `void` | Lineage.`initializeDedupBlock​(ProgramBlock pb, ExecutionContext ec)` |
    `static LineageDedupBlock` | LineageDedupUtils.`initializeDedupBlock​(ProgramBlock fpb, ExecutionContext ec)` |
    `static boolean` | LineageCacheConfig.`isReusable​(Instruction inst, ExecutionContext ec)` |
    `static void` | LineageDebugger.`maintainSpecialValueBits​(Lineage lineage, Instruction inst, ExecutionContext ec)` |
    `static String` | LineageDedupUtils.`mergeExplainDedupBlocks​(ExecutionContext ec)` |
    `static long` | LineageDedupUtils.`numPathsInPBs​(ArrayList<ProgramBlock> pbs, ExecutionContext ec)` |
    `static void` | LineageEstimator.`processFunc​(List<DataIdentifier> outputs, LineageItem[] liInputs, String name, ExecutionContext ec, long computetime)` |
    `static void` | LineageEstimator.`processSingleInst​(Instruction inst, ExecutionContext ec, long starttime)` |
    `static void` | LineageCache.`putFedReadObject​(Data data, LineageItem li, ExecutionContext ec)` |
    `static void` | LineageCache.`putMatrix​(Instruction inst, ExecutionContext ec, long computetime)` |
    `static void` | LineageCache.`putValue​(List<DataIdentifier> outputs, LineageItem[] liInputs, String name, ExecutionContext ec, long computetime)` |
    `static void` | LineageCache.`putValue​(FederatedUDF udf, ExecutionContext ec, long computetime)` |
    `static void` | LineageCache.`putValue​(Instruction inst, ExecutionContext ec, long starttime)` |
    `static void` | LineageItemUtils.`replaceDagLeaves​(ExecutionContext ec, LineageItem root, CPOperand[] newLeaves)` |
    `static void` | LineageDedupUtils.`replaceLineage​(ExecutionContext ec)` |
    `static boolean` | LineageCache.`reuse​(List<String> outNames, List<DataIdentifier> outParams, int numOutputs, LineageItem[] liInputs, String name, ExecutionContext ec)` |
    `static FederatedResponse` | LineageCache.`reuse​(FederatedUDF udf, ExecutionContext ec)` |
    `static boolean` | LineageCache.`reuse​(Instruction inst, ExecutionContext ec)` |
    `static boolean` | LineageCache.`reuseFedRead​(String outName, Types.DataType dataType, LineageItem li, ExecutionContext ec)` |
    `static void` | LineageDedupUtils.`setNewDedupPatch​(LineageDedupBlock ldb, ProgramBlock fpb, ExecutionContext ec)` |
    `void` | LineageDedupBlock.`setNumPathsInPBs​(ArrayList<ProgramBlock> pbs, ExecutionContext ec)` |
    `void` | Lineage.`trace​(Instruction inst, ExecutionContext ec)` |
    `void` | LineageMap.`trace​(Instruction inst, ExecutionContext ec)` |
    `void` | LineageDedupBlock.`traceBasicProgramBlock​(BasicProgramBlock bpb, ExecutionContext ec, Collection<Map.Entry<Long,​LineageMap>> paths)` |
    `void` | Lineage.`traceCurrentDedupPath​(ProgramBlock pb, ExecutionContext ec)` |
    `static void` | LineageItemUtils.`traceFedUDF​(ExecutionContext ec, FederatedUDF udf)` |
    `void` | LineageDedupBlock.`traceIfProgramBlock​(IfProgramBlock ipb, ExecutionContext ec, Collection<Map.Entry<Long,​LineageMap>> paths)` |
    `void` | LineageDedupBlock.`traceProgramBlock​(ProgramBlock pb, ExecutionContext ec, Collection<Map.Entry<Long,​LineageMap>> paths)` |
    `void` | LineageDedupBlock.`traceProgramBlocks​(ArrayList<ProgramBlock> pbs, ExecutionContext ec)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.matrix.data

    Methods in org.apache.sysds.runtime.matrix.data with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | LibMatrixCUDA.`abs​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "abs" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`acos​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "acos" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`asin​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "asin" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`atan​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "atan" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`axpy​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, MatrixObject in2, String outputName, double constant)` | Performs daxpy operation
    `static void` | LibMatrixCUDA.`cbind​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, MatrixObject in2, String outputName)` |
    `static void` | LibMatrixCUDA.`ceil​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "ceil" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`cos​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "cos" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`cosh​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "cosh" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`cumulativeScan​(ExecutionContext ec, GPUContext gCtx, String instName, String kernelFunction, MatrixObject in, String outputName)` | Cumulative scan
    `static void` | LibMatrixCUDA.`cumulativeSumProduct​(ExecutionContext ec, GPUContext gCtx, String instName, String kernelFunction, MatrixObject in, String outputName)` | Cumulative sum-product kernel cascade invokation
    `static void` | LibMatrixCUDA.`denseTranspose​(ExecutionContext ec, GPUContext gCtx, String instName, jcuda.Pointer A, jcuda.Pointer C, long numRowsA, long numColsA)` | Computes C = t(A)
    `static void` | LibMatrixCUDA.`exp​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "exp" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`floor​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "floor" operation on a matrix on the GPU
    `static MatrixObject` | LibMatrixCUDA.`getDenseMatrixOutputForGPUInstruction​(ExecutionContext ec, String instName, String name, long numRows, long numCols)` | Helper method to get the output block (allocated on the GPU) Also records performance information into `Statistics`
    `static MatrixObject` | LibMatrixCUDA.`getDenseMatrixOutputForGPUInstruction​(ExecutionContext ec, String instName, String name, long numRows, long numCols, boolean initialize)` |
    `static void` | LibMatrixCUDA.`log​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "log" operation on a matrix on the GPU
    `static void` | LibMatrixCuDNN.`lstm​(ExecutionContext ec, GPUContext gCtx, String instName, jcuda.Pointer X, jcuda.Pointer wPointer, jcuda.Pointer out0, jcuda.Pointer c0, boolean return_sequences, String outputName, String cyName, int N, int M, int D, int T)` | Computes the forward pass for an LSTM layer with M neurons.
    `static void` | LibMatrixCuDNN.`lstmBackward​(ExecutionContext ec, GPUContext gCtx, String instName, jcuda.Pointer x, jcuda.Pointer hx, jcuda.Pointer cx, jcuda.Pointer wPointer, String doutName, String dcyName, String dxName, String dwName, String dbName, String dhxName, String dcxName, boolean return_sequences, int N, int M, int D, int T)` |
    `static MatrixObject` | LibMatrixCuMatMult.`matmult​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject left, MatrixObject right, String outputName, boolean isLeftTransposed, boolean isRightTransposed)` | Matrix multiply on GPU Examines sparsity and shapes and routes call to appropriate method from cuBLAS or cuSparse C = op(A) x op(B) The user is expected to call ec.releaseMatrixOutputForGPUInstruction(outputName);
    `static void` | LibMatrixCUDA.`matmultTSMM​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject left, String outputName, boolean isLeftTransposed)` | Performs tsmm, A %*% A' or A' %*% A, on GPU by exploiting cublasDsyrk(...)
    `static void` | LibMatrixCUDA.`matrixMatrixArithmetic​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, MatrixObject in2, String outputName, boolean isLeftTransposed, boolean isRightTransposed, BinaryOperator op)` | Performs elementwise arithmetic operation specified by op of two input matrices in1 and in2
    `static void` | LibMatrixCUDA.`matrixMatrixRelational​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, MatrixObject in2, String outputName, BinaryOperator op)` | Performs elementwise operation relational specified by op of two input matrices in1 and in2
    `static void` | LibMatrixCUDA.`matrixScalarArithmetic​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in, String outputName, boolean isInputTransposed, ScalarOperator op)` | Entry point to perform elementwise matrix-scalar arithmetic operation specified by op
    `static void` | LibMatrixCUDA.`matrixScalarOp​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in, String outputName, boolean isInputTransposed, ScalarOperator op)` | Utility to do matrix-scalar operation kernel
    `static void` | LibMatrixCUDA.`matrixScalarRelational​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in, String outputName, ScalarOperator op)` | Entry point to perform elementwise matrix-scalar relational operation specified by op
    `static void` | LibMatrixCUDA.`rbind​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, MatrixObject in2, String outputName)` |
    `static void` | LibMatrixCuDNN.`relu​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in, String outputName)` | Performs the relu operation on the GPU.
    `static void` | LibMatrixCUDA.`round​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "round" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`sigmoid​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "sigmoid" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`sign​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "sign" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`sin​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "sin" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`sinh​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "sinh" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`sliceOperations​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, IndexRange ixrange, String outputName)` | Method to perform rightIndex operation for a given lower and upper bounds in row and column dimensions.
    `static void` | LibMatrixCuDNN.`softmax​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "softmax" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`solve​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, MatrixObject in2, String outputName)` | Implements the "solve" function for systemds Ax = B (A is of size m*n, B is of size m*1, x is of size n*1)
    `static void` | LibMatrixCUDA.`sqrt​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "sqrt" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`tan​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "tan" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`tanh​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String outputName)` | Performs an "tanh" operation on a matrix on the GPU
    `static void` | LibMatrixCUDA.`transpose​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in, String outputName)` | Transposes the input matrix using cublasDgeam
    `static void` | LibMatrixCUDA.`unaryAggregate​(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String output, AggregateUnaryOperator op)` | Entry point to perform Unary aggregate operations on the GPU.

    Constructors in org.apache.sysds.runtime.matrix.data with parameters of type ExecutionContext
    Constructor | Description
    --- | ---
    `LibMatrixCuDNNRnnAlgorithm​(ExecutionContext ec, GPUContext gCtx, String instName, String rnnMode, int N, int T, int M, int D, boolean isTraining, jcuda.Pointer w)` |

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.privacy.propagation

    Methods in org.apache.sysds.runtime.privacy.propagation with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static OperatorType` | OperatorType.`getAggregationType​(AggregateBinaryCPInstruction inst, ExecutionContext ec)` | Returns the operator type of AggregateBinaryCPInstruction based on the input data characteristics and the transpose.
    `static OperatorType` | OperatorType.`getAggregationType​(MMChainCPInstruction inst, ExecutionContext ec)` | Returns the operator type of MMChainCPInstruction based on the input data characteristics.
    `static OperatorType` | OperatorType.`getAggregationType​(MMTSJCPInstruction inst, ExecutionContext ec)` | Returns the operator type of MMTSJCPInstruction based on the input data characteristics and the MMTSJType.
    `static void` | PrivacyPropagator.`postProcessInstruction​(Instruction inst, ExecutionContext ec)` | Propagate privacy constraints to output variables based on privacy constraint of CPOperand output in instruction which has been set during privacy propagation preprocessing.
    `static Instruction` | PrivacyPropagator.`preprocessInstruction​(Instruction inst, ExecutionContext ec)` | Propagate privacy constraints from input to output CPOperands in case the privacy constraints of the input are activated.

  - ### Uses of ExecutionContext in org.apache.sysds.runtime.util

    Methods in org.apache.sysds.runtime.util that return ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static ExecutionContext` | ProgramConverter.`createDeepCopyExecutionContext​(ExecutionContext ec)` | Creates a deep copy of the given execution context.

    Methods in org.apache.sysds.runtime.util with parameters of type ExecutionContext
    Modifier and Type | Method | Description
    --- | --- | ---
    `static ExecutionContext` | ProgramConverter.`createDeepCopyExecutionContext​(ExecutionContext ec)` | Creates a deep copy of the given execution context.
    `static ListObject` | AutoDiff.`getBackward​(MatrixObject mo, ArrayList<Data> lineage, ExecutionContext adec)` |
    `static int[]` | DataConverter.`getTensorDimensions​(ExecutionContext ec, CPOperand dims)` |
    `static List<Data>` | AutoDiff.`parseNComputeAutoDiffFromLineage​(MatrixObject mo, String mainTrace, ArrayList<String> names, ExecutionContext ec)` |