Class DnnGPUInstruction
java.lang.Object
org.apache.sysds.runtime.instructions.Instruction
org.apache.sysds.runtime.instructions.gpu.GPUInstruction
org.apache.sysds.runtime.instructions.gpu.DnnGPUInstruction
- All Implemented Interfaces:
LineageTraceable
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.sysds.runtime.instructions.gpu.GPUInstruction
GPUInstruction.GPUINSTRUCTION_TYPENested classes/interfaces inherited from class org.apache.sysds.runtime.instructions.Instruction
Instruction.IType -
Field Summary
Fields inherited from class org.apache.sysds.runtime.instructions.gpu.GPUInstruction
_input1, _input2, _output, MISC_TIMER_ABS_KERNEL, MISC_TIMER_ACOS_KERNEL, MISC_TIMER_ACTIVATION_FORWARD_LIB, MISC_TIMER_ALLOCATE, MISC_TIMER_ALLOCATE_DENSE_OUTPUT, MISC_TIMER_ALLOCATE_SPARSE_OUTPUT, MISC_TIMER_ASIN_KERNEL, MISC_TIMER_ATAN_KERNEL, MISC_TIMER_BIAS_ADD_LIB, MISC_TIMER_CBIND_KERNEL, MISC_TIMER_CEIL_KERNEL, MISC_TIMER_COLUMN_TO_ROW_MAJOR, MISC_TIMER_COMPARE_AND_SET_KERNEL, MISC_TIMER_CONVOLUTION_BACKWARD_DATA_LIB, MISC_TIMER_CONVOLUTION_BACKWARD_FILTER_LIB, MISC_TIMER_CONVOLUTION_FORWARD_LIB, MISC_TIMER_COS_KERNEL, MISC_TIMER_COSH_KERNEL, MISC_TIMER_CUDA_FREE, MISC_TIMER_CUDA_SYNC, MISC_TIMER_CUDNN_CLEANUP, MISC_TIMER_CUDNN_INIT, MISC_TIMER_CUMULATIVE_SCAN_KERNEL, MISC_TIMER_CUMULATIVE_SUMPROD_KERNEL, MISC_TIMER_DAXPY_LIB, MISC_TIMER_DAXPY_MV_KERNEL, MISC_TIMER_DENSE_DGEAM_LIB, MISC_TIMER_DENSE_DOT_LIB, MISC_TIMER_DENSE_IM2COL_KERNEL, MISC_TIMER_DENSE_MATRIX_DENSE_MATRIX_LIB, MISC_TIMER_DENSE_MATRIX_DENSE_VECTOR_LIB, MISC_TIMER_DENSE_REORG_KNPQ_KERNEL, MISC_TIMER_DENSE_TO_SPARSE, MISC_TIMER_DENSE_VECTOR_DENSE_MATRIX_LIB, MISC_TIMER_DEVICE_TO_DEVICE, MISC_TIMER_DEVICE_TO_HOST, MISC_TIMER_EVICT, MISC_TIMER_EXP_KERNEL, MISC_TIMER_FILL_KERNEL, MISC_TIMER_FLOOR_KERNEL, MISC_TIMER_HOST_TO_DEVICE, MISC_TIMER_LOG_KERNEL, MISC_TIMER_MATRIX_MATRIX_CELLWISE_OP_KERNEL, MISC_TIMER_MATRIX_SCALAR_OP_KERNEL, MISC_TIMER_MAXPOOLING_BACKWARD_LIB, MISC_TIMER_MAXPOOLING_FORWARD_LIB, MISC_TIMER_OBJECT_CLONE, MISC_TIMER_ORMQR, MISC_TIMER_QR, MISC_TIMER_QR_BUFFER, MISC_TIMER_RBIND_KERNEL, MISC_TIMER_REDUCE_ALL_KERNEL, MISC_TIMER_REDUCE_COL_KERNEL, MISC_TIMER_REDUCE_ROW_KERNEL, MISC_TIMER_RELU_BACKWARD_KERNEL, MISC_TIMER_RELU_KERNEL, MISC_TIMER_REUSE, MISC_TIMER_RIX_DENSE_OP, MISC_TIMER_RIX_SPARSE_DENSE_OP_NNZ, MISC_TIMER_RIX_SPARSE_DENSE_OP_ROWWISE, MISC_TIMER_ROUND_KERNEL, MISC_TIMER_ROW_TO_COLUMN_MAJOR, MISC_TIMER_SET_ZERO, MISC_TIMER_SIGMOID_KERNEL, MISC_TIMER_SIGN_KERNEL, MISC_TIMER_SIN_KERNEL, MISC_TIMER_SINH_KERNEL, MISC_TIMER_SPARSE_ALLOCATE_LIB, MISC_TIMER_SPARSE_DGEAM_LIB, MISC_TIMER_SPARSE_IM2COL_KERNEL, MISC_TIMER_SPARSE_MATRIX_DENSE_MATRIX_LIB, MISC_TIMER_SPARSE_MATRIX_DENSE_VECTOR_LIB, MISC_TIMER_SPARSE_MATRIX_SPARSE_MATRIX_LIB, MISC_TIMER_SPARSE_TO_DENSE, MISC_TIMER_SQRT_KERNEL, MISC_TIMER_SYRK_LIB, MISC_TIMER_TAN_KERNEL, MISC_TIMER_TANH_KERNEL, MISC_TIMER_TRANSPOSE_LIB, MISC_TIMER_TRSM, MISC_TIMER_UPPER_TO_LOWER_TRIANGLE_KERNELFields inherited from class org.apache.sysds.runtime.instructions.Instruction
DATATYPE_PREFIX, FEDERATED_INST_PREFIX, GPU_INST_PREFIX, INSTRUCTION_DELIM, LITERAL_PREFIX, OOC_INST_PREFIX, OPERAND_DELIM, SP_INST_PREFIX, VALUETYPE_PREFIX -
Constructor Summary
ConstructorsConstructorDescriptionDnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand out, String opcode, String istr, double intermediateMemoryBudget) DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand out, String opcode, String istr, ArrayList<CPOperand> stride, ArrayList<CPOperand> padding, ArrayList<CPOperand> input_shape, ArrayList<CPOperand> filter_shape, double intermediateMemoryBudget) DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand out, String opcode, String istr, double intermediateMemoryBudget) DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand out, String opcode, String istr, ArrayList<CPOperand> stride, ArrayList<CPOperand> padding, ArrayList<CPOperand> input_shape, ArrayList<CPOperand> filter_shape, double intermediateMemoryBudget) DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand in4, CPOperand out, String opcode, String istr, double intermediateMemoryBudget) DnnGPUInstruction(CPOperand in, CPOperand in2, CPOperand in3, CPOperand in4, CPOperand in5, CPOperand in6, CPOperand out, String opcode, String istr, double intermediateMemoryBudget) DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand in4, CPOperand in5, CPOperand in6, CPOperand out, CPOperand out2, String opcode, String istr, double intermediateMemoryBudget) DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand in4, CPOperand in5, CPOperand in6, CPOperand in7, CPOperand in8, CPOperand out, CPOperand out2, CPOperand out3, CPOperand out4, CPOperand out5, String opcode, String istr, double intermediateMemoryBudget) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.commons.lang3.tuple.Pair<String,LineageItem> Obtain lineage trace of an instruction with a single output.static DnnGPUInstructionparseInstruction(String str) voidvoidThis method should be used to execute the instruction.voidMethods inherited from class org.apache.sysds.runtime.instructions.gpu.GPUInstruction
getGPUInstructionType, getGraphString, getType, postprocessInstruction, preprocessInstruction, requiresLabelUpdateMethods inherited from class org.apache.sysds.runtime.instructions.Instruction
getBeginColumn, getBeginLine, getEndColumn, getEndLine, getExtendedOpcode, getFilename, getInstID, getInstructionString, getLineNum, getOpcode, getOperator, printMe, setInstID, setLocation, setLocation, setLocation, setLocation, toString, updateInstructionThreadIDMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.sysds.runtime.lineage.LineageTraceable
getLineageItems, hasSingleLineage
-
Constructor Details
-
DnnGPUInstruction
-
DnnGPUInstruction
public DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand in4, CPOperand in5, CPOperand in6, CPOperand out, CPOperand out2, String opcode, String istr, double intermediateMemoryBudget) throws DMLRuntimeException - Throws:
DMLRuntimeException
-
DnnGPUInstruction
public DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand in4, CPOperand in5, CPOperand in6, CPOperand in7, CPOperand in8, CPOperand out, CPOperand out2, CPOperand out3, CPOperand out4, CPOperand out5, String opcode, String istr, double intermediateMemoryBudget) throws DMLRuntimeException - Throws:
DMLRuntimeException
-
DnnGPUInstruction
public DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand out, String opcode, String istr, double intermediateMemoryBudget) throws DMLRuntimeException - Throws:
DMLRuntimeException
-
DnnGPUInstruction
public DnnGPUInstruction(CPOperand in1, CPOperand in2, CPOperand in3, CPOperand in4, CPOperand out, String opcode, String istr, double intermediateMemoryBudget) throws DMLRuntimeException - Throws:
DMLRuntimeException
-
DnnGPUInstruction
-
DnnGPUInstruction
-
DnnGPUInstruction
-
-
Method Details
-
parseInstruction
-
processBatchNorm2dBackwardInstruction
- Throws:
DMLRuntimeException
-
processReLUBackwardInstruction
-
processInstruction
Description copied from class:InstructionThis method should be used to execute the instruction.- Specified by:
processInstructionin classGPUInstruction- Parameters:
ec- execution context
-
getLineageItem
Description copied from interface:LineageTraceableObtain lineage trace of an instruction with a single output.- Specified by:
getLineageItemin interfaceLineageTraceable- Overrides:
getLineageItemin classGPUInstruction- Parameters:
ec- execution context w/ live variables- Returns:
- pair of (output variable name, output lineage item)
-