public class ExecutionConfig extends Object
Modifier and Type | Field and Description |
---|---|
int |
blockDimX |
int |
blockDimY |
int |
blockDimZ |
int |
gridDimX |
int |
gridDimY |
int |
gridDimZ |
int |
sharedMemBytes |
jcuda.driver.CUstream |
stream |
Constructor and Description |
---|
ExecutionConfig(int gridDimX,
int blockDimX) |
ExecutionConfig(int gridDimX,
int blockDimX,
int sharedMemBytes)
Convenience constructor for setting the number of blocks, number of threads and the
shared memory size
|
ExecutionConfig(int gridDimX,
int gridDimY,
int blockDimX,
int blockDimY) |
Modifier and Type | Method and Description |
---|---|
static ExecutionConfig |
getConfigForSimpleMatrixOperations(int rlen,
int clen)
Use this for simple matrix operations and use following in the kernel
int ix = blockIdx.x * blockDim.x + threadIdx.x;
int iy = blockIdx.y * blockDim.y + threadIdx.y;
This tries to schedule as minimum grids as possible. |
static ExecutionConfig |
getConfigForSimpleVectorOperations(int numCells)
Use this for simple vector operations and use following in the kernel
int index = blockIdx.x * blockDim.x + threadIdx.x
This tries to schedule as minimum grids as possible. |
public int gridDimX
public int gridDimY
public int gridDimZ
public int blockDimX
public int blockDimY
public int blockDimZ
public int sharedMemBytes
public jcuda.driver.CUstream stream
public ExecutionConfig(int gridDimX, int blockDimX, int sharedMemBytes)
gridDimX
- Number of blocks (for CUDA Kernel)blockDimX
- Number of threads per block (for CUDA Kernel)sharedMemBytes
- Amount of Shared memory (for CUDA Kernel)public ExecutionConfig(int gridDimX, int blockDimX)
public ExecutionConfig(int gridDimX, int gridDimY, int blockDimX, int blockDimY)
public static ExecutionConfig getConfigForSimpleVectorOperations(int numCells) throws DMLRuntimeException
int index = blockIdx.x * blockDim.x + threadIdx.x
This tries to schedule as minimum grids as possible.numCells
- number of cellsDMLRuntimeException
- if DMLRuntimeException occurspublic static ExecutionConfig getConfigForSimpleMatrixOperations(int rlen, int clen) throws DMLRuntimeException
int ix = blockIdx.x * blockDim.x + threadIdx.x;
int iy = blockIdx.y * blockDim.y + threadIdx.y;
This tries to schedule as minimum grids as possible.rlen
- number of rowsclen
- number of columnsDMLRuntimeException
- if DMLRuntimeException occursCopyright © 2017 The Apache Software Foundation. All rights reserved.