Package | Description |
---|---|
org.apache.sysml.runtime.instructions.gpu.context | |
org.apache.sysml.runtime.matrix.data |
Modifier and Type | Method and Description |
---|---|
static CSRPointer |
CSRPointer.allocateEmpty(GPUContext gCtx,
long nnz2,
long rows)
Factory method to allocate an empty CSR Sparse matrix on the GPU
|
static CSRPointer |
CSRPointer.allocateForDgeam(GPUContext gCtx,
jcuda.jcusparse.cusparseHandle handle,
CSRPointer A,
CSRPointer B,
int m,
int n)
Estimates the number of non zero elements from the results of a sparse cusparseDgeam operation
C = a op(A) + b op(B)
|
static CSRPointer |
CSRPointer.allocateForMatrixMultiply(GPUContext gCtx,
jcuda.jcusparse.cusparseHandle handle,
CSRPointer A,
int transA,
CSRPointer B,
int transB,
int m,
int n,
int k)
Estimates the number of non-zero elements from the result of a sparse matrix multiplication C = A * B
and returns the
CSRPointer to C with the appropriate GPU memory. |
CSRPointer |
CSRPointer.clone(int rows) |
static CSRPointer |
GPUObject.columnMajorDenseToRowMajorSparse(GPUContext gCtx,
jcuda.jcusparse.cusparseHandle cusparseHandle,
jcuda.Pointer densePtr,
int rows,
int cols)
Convenience method to convert a CSR matrix to a dense matrix on the GPU
Since the allocated matrix is temporary, bookkeeping is not updated.
|
CSRPointer |
GPUObject.getJcudaSparseMatrixPtr()
Pointer to sparse matrix
|
CSRPointer |
GPUObject.getSparseMatrixCudaPointer()
Convenience method to directly examine the Sparse matrix on GPU
|
Modifier and Type | Method and Description |
---|---|
static CSRPointer |
CSRPointer.allocateForDgeam(GPUContext gCtx,
jcuda.jcusparse.cusparseHandle handle,
CSRPointer A,
CSRPointer B,
int m,
int n)
Estimates the number of non zero elements from the results of a sparse cusparseDgeam operation
C = a op(A) + b op(B)
|
static CSRPointer |
CSRPointer.allocateForMatrixMultiply(GPUContext gCtx,
jcuda.jcusparse.cusparseHandle handle,
CSRPointer A,
int transA,
CSRPointer B,
int transB,
int m,
int n,
int k)
Estimates the number of non-zero elements from the result of a sparse matrix multiplication C = A * B
and returns the
CSRPointer to C with the appropriate GPU memory. |
static void |
CSRPointer.copyPtrToHost(CSRPointer src,
int rows,
long nnz,
int[] rowPtr,
int[] colInd)
Static method to copy a CSR sparse matrix from Device to host
|
static void |
CSRPointer.copyToDevice(GPUContext gCtx,
CSRPointer dest,
int rows,
long nnz,
int[] rowPtr,
int[] colInd,
double[] values)
Static method to copy a CSR sparse matrix from Host to Device
|
void |
GPUObject.setSparseMatrixCudaPointer(CSRPointer sparseMatrixPtr)
Convenience method to directly set the sparse matrix on GPU
Needed for operations like cusparseDcsrgemm(cusparseHandle, int, int, int, int, int, cusparseMatDescr, int, Pointer, Pointer, Pointer, cusparseMatDescr, int, Pointer, Pointer, Pointer, cusparseMatDescr, Pointer, Pointer, Pointer)
|
Modifier and Type | Method and Description |
---|---|
protected static CSRPointer |
LibMatrixCUDA.getSparsePointer(GPUContext gCtx,
org.apache.sysml.runtime.controlprogram.caching.MatrixObject input,
String instName)
Convenience method to get the sparse matrix pointer from a
MatrixObject . |
Modifier and Type | Method and Description |
---|---|
protected static void |
LibMatrixCUDA.sliceSparseDense(GPUContext gCtx,
String instName,
CSRPointer inPointer,
jcuda.Pointer outPointer,
int rl,
int ru,
int cl,
int cu,
int inClen)
Perform slice operation on sparse input and output it in dense format
|
Copyright © 2018 The Apache Software Foundation. All rights reserved.