public class MatrixIndexingSPInstruction extends IndexingSPInstruction
SPInstruction.SPTypeInstruction.ITypeinput1, input2, input3, outputDATATYPE_PREFIX, FEDERATED_INST_PREFIX, GPU_INST_PREFIX, INSTRUCTION_DELIM, LITERAL_PREFIX, OPERAND_DELIM, SP_INST_PREFIX, VALUETYPE_PREFIX| Modifier and Type | Method and Description |
|---|---|
org.apache.commons.lang3.tuple.Pair<String,LineageItem> |
getLineageItem(ExecutionContext ec)
Obtain lineage trace of an instruction with a single output.
|
static MatrixBlock |
inmemoryIndexing(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in1,
DataCharacteristics mcIn,
DataCharacteristics mcOut,
IndexRange ixrange) |
static boolean |
isMultiBlockLookup(org.apache.spark.api.java.JavaPairRDD<?,?> in,
DataCharacteristics mcIn,
DataCharacteristics mcOut,
IndexRange ixrange)
Indicates if the given index range and input matrix exhibit the following properties:
(1) existing hash partitioner, (2) out-of-core input matrix (larger than aggregated memory),
(3) aligned indexing range (which does not required aggregation), and (4) the output fits
twice in memory (in order to collect the result).
|
static boolean |
isSingleBlockLookup(DataCharacteristics mcIn,
IndexRange ixrange)
Indicates if the given index range only covers a single blocks of the inputs matrix.
|
void |
processInstruction(ExecutionContext ec)
This method should be used to execute the instruction.
|
parseInstructiongetOutputVariableNamegetGraphString, getSPInstructionType, getType, postprocessInstruction, preprocessInstruction, requiresLabelUpdategetBeginColumn, getBeginLine, getEndColumn, getEndLine, getExtendedOpcode, getFilename, getInstID, getInstructionString, getLineNum, getOpcode, getOperator, getPrivacyConstraint, printMe, setInstID, setLocation, setLocation, setLocation, setLocation, setPrivacyConstraint, setPrivacyConstraint, toString, updateInstructionThreadIDequals, getClass, hashCode, notify, notifyAll, wait, wait, waitgetLineageItems, hasSingleLineagepublic void processInstruction(ExecutionContext ec)
InstructionprocessInstruction in class SPInstructionec - execution contextpublic static MatrixBlock inmemoryIndexing(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in1, DataCharacteristics mcIn, DataCharacteristics mcOut, IndexRange ixrange)
public static boolean isSingleBlockLookup(DataCharacteristics mcIn, IndexRange ixrange)
mcIn - matrix characteristicsixrange - index rangepublic static boolean isMultiBlockLookup(org.apache.spark.api.java.JavaPairRDD<?,?> in,
DataCharacteristics mcIn,
DataCharacteristics mcOut,
IndexRange ixrange)
in - input matrixmcIn - input matrix characteristicsmcOut - output matrix characteristicsixrange - index rangepublic org.apache.commons.lang3.tuple.Pair<String,LineageItem> getLineageItem(ExecutionContext ec)
LineageTraceablegetLineageItem in interface LineageTraceablegetLineageItem in class ComputationSPInstructionec - execution context w/ live variablesCopyright © 2021 The Apache Software Foundation. All rights reserved.