public class MatrixIndexingSPInstruction extends IndexingSPInstruction
SPInstruction.SPINSTRUCTION_TYPEInstruction.INSTRUCTION_TYPE_aggType, colLower, colUpper, rowLower, rowUpperinput1, input2, input3, output_optr, _requiresLabelUpdate, _sptypebeginCol, beginLine, DATATYPE_PREFIX, endCol, endLine, filename, GPU_INST_PREFIX, instOpcode, INSTRUCTION_DELIM, instString, LITERAL_PREFIX, LOG, OPERAND_DELIM, SP_INST_PREFIX, type, VALUETYPE_PREFIX| Modifier | Constructor and Description |
|---|---|
protected |
MatrixIndexingSPInstruction(org.apache.sysml.runtime.matrix.operators.Operator op,
org.apache.sysml.runtime.instructions.cp.CPOperand in,
org.apache.sysml.runtime.instructions.cp.CPOperand rl,
org.apache.sysml.runtime.instructions.cp.CPOperand ru,
org.apache.sysml.runtime.instructions.cp.CPOperand cl,
org.apache.sysml.runtime.instructions.cp.CPOperand cu,
org.apache.sysml.runtime.instructions.cp.CPOperand out,
org.apache.sysml.hops.AggBinaryOp.SparkAggType aggtype,
String opcode,
String istr) |
protected |
MatrixIndexingSPInstruction(org.apache.sysml.runtime.matrix.operators.Operator op,
org.apache.sysml.runtime.instructions.cp.CPOperand lhsInput,
org.apache.sysml.runtime.instructions.cp.CPOperand rhsInput,
org.apache.sysml.runtime.instructions.cp.CPOperand rl,
org.apache.sysml.runtime.instructions.cp.CPOperand ru,
org.apache.sysml.runtime.instructions.cp.CPOperand cl,
org.apache.sysml.runtime.instructions.cp.CPOperand cu,
org.apache.sysml.runtime.instructions.cp.CPOperand out,
org.apache.sysml.lops.LeftIndex.LixCacheType type,
String opcode,
String istr) |
| Modifier and Type | Method and Description |
|---|---|
static MatrixBlock |
inmemoryIndexing(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in1,
MatrixCharacteristics mcIn,
MatrixCharacteristics mcOut,
org.apache.sysml.runtime.util.IndexRange ixrange) |
static boolean |
isMultiBlockLookup(org.apache.spark.api.java.JavaPairRDD<?,?> in,
MatrixCharacteristics mcIn,
MatrixCharacteristics mcOut,
org.apache.sysml.runtime.util.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(MatrixCharacteristics mcIn,
org.apache.sysml.runtime.util.IndexRange ixrange)
Indicates if the given index range only covers a single blocks of the inputs matrix.
|
void |
processInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
This method should be used to execute the instruction.
|
parseInstructiongetOutputVariableName, updateBinaryOutputMatrixCharacteristics, updateUnaryAggOutputMatrixCharacteristics, updateUnaryOutputMatrixCharacteristics, updateUnaryOutputMatrixCharacteristicsgetGraphString, getSPInstructionType, postprocessInstruction, preprocessInstruction, requiresLabelUpdategetBeginColumn, getBeginLine, getEndColumn, getEndLine, getExtendedOpcode, getFilename, getInstID, getLineNum, getOpcode, getType, printMe, setInstID, setLocation, setLocation, setLocation, setLocation, setType, toString, updateInstructionThreadIDprotected MatrixIndexingSPInstruction(org.apache.sysml.runtime.matrix.operators.Operator op,
org.apache.sysml.runtime.instructions.cp.CPOperand in,
org.apache.sysml.runtime.instructions.cp.CPOperand rl,
org.apache.sysml.runtime.instructions.cp.CPOperand ru,
org.apache.sysml.runtime.instructions.cp.CPOperand cl,
org.apache.sysml.runtime.instructions.cp.CPOperand cu,
org.apache.sysml.runtime.instructions.cp.CPOperand out,
org.apache.sysml.hops.AggBinaryOp.SparkAggType aggtype,
String opcode,
String istr)
protected MatrixIndexingSPInstruction(org.apache.sysml.runtime.matrix.operators.Operator op,
org.apache.sysml.runtime.instructions.cp.CPOperand lhsInput,
org.apache.sysml.runtime.instructions.cp.CPOperand rhsInput,
org.apache.sysml.runtime.instructions.cp.CPOperand rl,
org.apache.sysml.runtime.instructions.cp.CPOperand ru,
org.apache.sysml.runtime.instructions.cp.CPOperand cl,
org.apache.sysml.runtime.instructions.cp.CPOperand cu,
org.apache.sysml.runtime.instructions.cp.CPOperand out,
org.apache.sysml.lops.LeftIndex.LixCacheType type,
String opcode,
String istr)
public void processInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
throws DMLRuntimeException
InstructionprocessInstruction in class SPInstructionec - execution contextDMLRuntimeException - if DMLRuntimeException occurspublic static MatrixBlock inmemoryIndexing(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in1, MatrixCharacteristics mcIn, MatrixCharacteristics mcOut, org.apache.sysml.runtime.util.IndexRange ixrange) throws DMLRuntimeException
DMLRuntimeExceptionpublic static boolean isSingleBlockLookup(MatrixCharacteristics mcIn, org.apache.sysml.runtime.util.IndexRange ixrange)
mcIn - matrix characteristicsixrange - index rangepublic static boolean isMultiBlockLookup(org.apache.spark.api.java.JavaPairRDD<?,?> in,
MatrixCharacteristics mcIn,
MatrixCharacteristics mcOut,
org.apache.sysml.runtime.util.IndexRange ixrange)
in - input matrixmcIn - input matrix characteristicsmcOut - output matrix characteristicsixrange - index rangeCopyright © 2017 The Apache Software Foundation. All rights reserved.