public abstract class GPUInstruction extends Instruction
Modifier and Type | Class and Description |
---|---|
static class |
GPUInstruction.GPUINSTRUCTION_TYPE |
Instruction.IType
beginCol, beginLine, DATATYPE_PREFIX, endCol, endLine, filename, GPU_INST_PREFIX, instOpcode, INSTRUCTION_DELIM, instString, LITERAL_PREFIX, OPERAND_DELIM, SP_INST_PREFIX, VALUETYPE_PREFIX
Modifier | Constructor and Description |
---|---|
protected |
GPUInstruction(org.apache.sysml.runtime.matrix.operators.Operator op,
String opcode,
String istr) |
Modifier and Type | Method and Description |
---|---|
protected org.apache.sysml.runtime.controlprogram.caching.MatrixObject |
getDenseMatrixOutputForGPUInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec,
String name,
long numRows,
long numCols)
Helper method to get the output block (allocated on the GPU)
Also records performance information into
Statistics |
GPUInstruction.GPUINSTRUCTION_TYPE |
getGPUInstructionType() |
String |
getGraphString() |
protected org.apache.sysml.runtime.controlprogram.caching.MatrixObject |
getMatrixInputForGPUInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec,
String name)
Helper method to get the input block (allocated on the GPU)
Also records performance information into
Statistics |
Instruction.IType |
getType() |
void |
postprocessInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
This method should be used for any tear down after executing this instruction.
|
Instruction |
preprocessInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
This method should be used for any setup before executing this instruction.
|
abstract void |
processInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
This method should be used to execute the instruction.
|
boolean |
requiresLabelUpdate() |
getBeginColumn, getBeginLine, getEndColumn, getEndLine, getExtendedOpcode, getFilename, getInstID, getLineNum, getOpcode, printMe, setInstID, setLocation, setLocation, setLocation, setLocation, toString, updateInstructionThreadID
public static final String MISC_TIMER_HOST_TO_DEVICE
public static final String MISC_TIMER_DEVICE_TO_HOST
public static final String MISC_TIMER_DEVICE_TO_DEVICE
public static final String MISC_TIMER_SPARSE_TO_DENSE
public static final String MISC_TIMER_DENSE_TO_SPARSE
public static final String MISC_TIMER_ROW_TO_COLUMN_MAJOR
public static final String MISC_TIMER_COLUMN_TO_ROW_MAJOR
public static final String MISC_TIMER_OBJECT_CLONE
public static final String MISC_TIMER_CUDA_SYNC
public static final String MISC_TIMER_CUDA_FREE
public static final String MISC_TIMER_ALLOCATE
public static final String MISC_TIMER_EVICT
public static final String MISC_TIMER_ALLOCATE_DENSE_OUTPUT
public static final String MISC_TIMER_ALLOCATE_SPARSE_OUTPUT
public static final String MISC_TIMER_SET_ZERO
public static final String MISC_TIMER_REUSE
public static final String MISC_TIMER_SPARSE_ALLOCATE_LIB
public static final String MISC_TIMER_DENSE_DOT_LIB
public static final String MISC_TIMER_DENSE_VECTOR_DENSE_MATRIX_LIB
public static final String MISC_TIMER_DENSE_MATRIX_DENSE_VECTOR_LIB
public static final String MISC_TIMER_DENSE_MATRIX_DENSE_MATRIX_LIB
public static final String MISC_TIMER_SPARSE_MATRIX_DENSE_VECTOR_LIB
public static final String MISC_TIMER_SPARSE_MATRIX_SPARSE_MATRIX_LIB
public static final String MISC_TIMER_SPARSE_MATRIX_DENSE_MATRIX_LIB
public static final String MISC_TIMER_SYRK_LIB
public static final String MISC_TIMER_DAXPY_LIB
public static final String MISC_TIMER_QR_BUFFER
public static final String MISC_TIMER_QR
public static final String MISC_TIMER_ORMQR
public static final String MISC_TIMER_TRSM
public static final String MISC_TIMER_SPARSE_DGEAM_LIB
public static final String MISC_TIMER_DENSE_DGEAM_LIB
public static final String MISC_TIMER_TRANSPOSE_LIB
public static final String MISC_TIMER_MATRIX_MATRIX_CELLWISE_OP_KERNEL
public static final String MISC_TIMER_COMPARE_AND_SET_KERNEL
public static final String MISC_TIMER_EXP_KERNEL
public static final String MISC_TIMER_SQRT_KERNEL
public static final String MISC_TIMER_ROUND_KERNEL
public static final String MISC_TIMER_ABS_KERNEL
public static final String MISC_TIMER_LOG_KERNEL
public static final String MISC_TIMER_FLOOR_KERNEL
public static final String MISC_TIMER_CEIL_KERNEL
public static final String MISC_TIMER_SIN_KERNEL
public static final String MISC_TIMER_COS_KERNEL
public static final String MISC_TIMER_TAN_KERNEL
public static final String MISC_TIMER_SINH_KERNEL
public static final String MISC_TIMER_COSH_KERNEL
public static final String MISC_TIMER_TANH_KERNEL
public static final String MISC_TIMER_ASIN_KERNEL
public static final String MISC_TIMER_ACOS_KERNEL
public static final String MISC_TIMER_ATAN_KERNEL
public static final String MISC_TIMER_SIGN_KERNEL
public static final String MISC_TIMER_SIGMOID_KERNEL
public static final String MISC_TIMER_CBIND_KERNEL
public static final String MISC_TIMER_RBIND_KERNEL
public static final String MISC_TIMER_DAXPY_MV_KERNEL
public static final String MISC_TIMER_UPPER_TO_LOWER_TRIANGLE_KERNEL
public static final String MISC_TIMER_FILL_KERNEL
public static final String MISC_TIMER_MATRIX_SCALAR_OP_KERNEL
public static final String MISC_TIMER_REDUCE_ALL_KERNEL
public static final String MISC_TIMER_REDUCE_ROW_KERNEL
public static final String MISC_TIMER_REDUCE_COL_KERNEL
public static final String MISC_TIMER_RIX_DENSE_OP
public static final String MISC_TIMER_RIX_SPARSE_DENSE_OP_ROWWISE
public static final String MISC_TIMER_RIX_SPARSE_DENSE_OP_NNZ
public static final String MISC_TIMER_ACTIVATION_FORWARD_LIB
public static final String MISC_TIMER_CONVOLUTION_FORWARD_LIB
public static final String MISC_TIMER_CONVOLUTION_BACKWARD_FILTER_LIB
public static final String MISC_TIMER_CONVOLUTION_BACKWARD_DATA_LIB
public static final String MISC_TIMER_MAXPOOLING_FORWARD_LIB
public static final String MISC_TIMER_MAXPOOLING_BACKWARD_LIB
public static final String MISC_TIMER_BIAS_ADD_LIB
public static final String MISC_TIMER_RELU_BACKWARD_KERNEL
public static final String MISC_TIMER_RELU_KERNEL
public static final String MISC_TIMER_CUDNN_INIT
public static final String MISC_TIMER_CUDNN_CLEANUP
public static final String MISC_TIMER_DENSE_IM2COL_KERNEL
public static final String MISC_TIMER_SPARSE_IM2COL_KERNEL
public static final String MISC_TIMER_DENSE_REORG_KNPQ_KERNEL
protected GPUInstruction.GPUINSTRUCTION_TYPE _gputype
protected org.apache.sysml.runtime.matrix.operators.Operator _optr
protected boolean _requiresLabelUpdate
public Instruction.IType getType()
getType
in class Instruction
public GPUInstruction.GPUINSTRUCTION_TYPE getGPUInstructionType()
public boolean requiresLabelUpdate()
requiresLabelUpdate
in class Instruction
public String getGraphString()
getGraphString
in class Instruction
public Instruction preprocessInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
Instruction
preprocessInstruction
in class Instruction
ec
- execution contextpublic abstract void processInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
Instruction
processInstruction
in class Instruction
ec
- execution contextpublic void postprocessInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec)
Instruction
postprocessInstruction
in class Instruction
ec
- execution contextprotected org.apache.sysml.runtime.controlprogram.caching.MatrixObject getMatrixInputForGPUInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec, String name)
Statistics
ec
- active ExecutionContext
name
- name of input matrix (that the ExecutionContext
is aware of)protected org.apache.sysml.runtime.controlprogram.caching.MatrixObject getDenseMatrixOutputForGPUInstruction(org.apache.sysml.runtime.controlprogram.context.ExecutionContext ec, String name, long numRows, long numCols)
Statistics
ec
- active ExecutionContext
name
- name of input matrix (that the ExecutionContext
is aware of)numRows
- number of rows of matrix objectnumCols
- number of columns of matrix objectCopyright © 2018 The Apache Software Foundation. All rights reserved.