clSPARSE  v0.10.0.0
a software library containing Sparse functions written in OpenCL
Functions
Sparse L3 BLAS operations

Sparse BLAS level 3 routines for sparse matrix dense matrix. More...

Functions

CLSPARSE_EXPORT clsparseStatus clsparseScsrmm (const clsparseScalar *alpha, const clsparseCsrMatrix *sparseMatA, const cldenseMatrix *denseMatB, const clsparseScalar *beta, cldenseMatrix *denseMatC, const clsparseControl control)
 Single precision CSR sparse matrix times dense matrix. More...
 
CLSPARSE_EXPORT clsparseStatus clsparseDcsrmm (const clsparseScalar *alpha, const clsparseCsrMatrix *sparseMatA, const cldenseMatrix *denseMatB, const clsparseScalar *beta, cldenseMatrix *denseMatC, const clsparseControl control)
 Double precision CSR sparse matrix times dense matrix. More...
 
CLSPARSE_EXPORT clsparseStatus clsparseScsrSpGemm (const clsparseCsrMatrix *sparseMatA, const clsparseCsrMatrix *sparseMatB, clsparseCsrMatrix *sparseMatC, const clsparseControl control)
 Single Precision CSR Sparse Matrix times Sparse Matrix. More...
 

Detailed Description

Sparse BLAS level 3 routines for sparse matrix dense matrix.

Level 3 BLAS operations are defined by order \( N^3 \) operations, usually in the form of a matrix times a matrix.

Function Documentation

CLSPARSE_EXPORT clsparseStatus clsparseDcsrmm ( const clsparseScalar alpha,
const clsparseCsrMatrix sparseMatA,
const cldenseMatrix denseMatB,
const clsparseScalar beta,
cldenseMatrix denseMatC,
const clsparseControl  control 
)

Double precision CSR sparse matrix times dense matrix.

\( C \leftarrow \alpha \ast A \ast B + \beta \ast C \)

Parameters
[in]alphaScalar value to multiply against sparse matrix
[in]sparseMatAInput CSR sparse matrix
[in]denseMatBInput dense matrix
[in]betaScalar value to multiply against dense matrix
[out]denseMatCOutput dense matrix
[in]controlA valid clsparseControl created with clsparseCreateControl
Note
This routine is currently implemented as a batched level 2 matrix times a vector.
CLSPARSE_EXPORT clsparseStatus clsparseScsrmm ( const clsparseScalar alpha,
const clsparseCsrMatrix sparseMatA,
const cldenseMatrix denseMatB,
const clsparseScalar beta,
cldenseMatrix denseMatC,
const clsparseControl  control 
)

Single precision CSR sparse matrix times dense matrix.

\( C \leftarrow \alpha \ast A \ast B + \beta \ast C \)

Parameters
[in]alphaScalar value to multiply against sparse matrix
[in]sparseMatAInput CSR sparse matrix
[in]denseMatBInput dense matrix
[in]betaScalar value to multiply against dense matrix
[out]denseMatCOutput dense matrix
[in]controlA valid clsparseControl created with clsparseCreateControl
Note
This routine is currently implemented as a batched level 2 matrix times a vector.
CLSPARSE_EXPORT clsparseStatus clsparseScsrSpGemm ( const clsparseCsrMatrix sparseMatA,
const clsparseCsrMatrix sparseMatB,
clsparseCsrMatrix sparseMatC,
const clsparseControl  control 
)

Single Precision CSR Sparse Matrix times Sparse Matrix.

\( C \leftarrow A \ast B \)

Parameters
[in]sparseMatAInput CSR sparse matrix
[in]sparseMatBInput CSR sparse matrix
[out]sparseMatCOutput CSR sparse matrix
[in]controlA valid clsparseControl created with clsparseCreateControl
Precondition
The input sparse matrices data must first be sorted by rows, then by columns