![]() |
clSPARSE
v0.10.0.0
a software library containing Sparse functions written in OpenCL
|
Functions to setup or execute sparse iterative solvers. More...
| enum | PRINT_MODE { QUIET = 0, NORMAL, VERBOSE } |
| Enumeration to control the verbosity of the sparse iterative solver routines. VERBOSE will print helpful diagnostic messages to console. | |
| enum | PRECONDITIONER { NOPRECOND = 0, DIAGONAL } |
| Enumeration to select the preconditioning algorithm used to precondition the sparse data before the iterative solver execution phase. | |
| typedef struct _solverControl * | clSParseSolverControl |
| clSParseSolverControl keeps state relevant for OpenCL operations like kernel execution, memory allocation and synchronization behavior, specifically for sparse iterative solvers | |
| CLSPARSE_EXPORT clsparseCreateSolverResult | clsparseCreateSolverControl (PRECONDITIONER precond, cl_int maxIters, cl_double relTol, cl_double absTol) |
| Create a clSParseSolverControl object to control clsparse iterative solver operations. More... | |
| CLSPARSE_EXPORT clsparseStatus | clsparseReleaseSolverControl (clSParseSolverControl solverControl) |
| Release a clSParseSolverControl object created with clsparseCreateSolverControl. More... | |
| CLSPARSE_EXPORT clsparseStatus | clsparseSetSolverParams (clSParseSolverControl solverControl, PRECONDITIONER precond, cl_int maxIters, cl_double relTol, cl_double absTol) |
| Set clSParseSolverControl state. More... | |
| CLSPARSE_EXPORT clsparseStatus | clsparseSolverPrintMode (clSParseSolverControl solverControl, PRINT_MODE mode) |
| Set the verbosity level of the clSParseSolverControl object. More... | |
| CLSPARSE_EXPORT clsparseStatus | clsparseScsrcg (cldenseVector *x, const clsparseCsrMatrix *A, const cldenseVector *b, clSParseSolverControl solverControl, clsparseControl control) |
| Execute a single precision Conjugate Gradients solver. More... | |
| CLSPARSE_EXPORT clsparseStatus | clsparseDcsrcg (cldenseVector *x, const clsparseCsrMatrix *A, const cldenseVector *b, clSParseSolverControl solverControl, clsparseControl control) |
| Execute a double precision Conjugate Gradients solver. More... | |
| CLSPARSE_EXPORT clsparseStatus | clsparseScsrbicgStab (cldenseVector *x, const clsparseCsrMatrix *A, const cldenseVector *b, clSParseSolverControl solverControl, clsparseControl control) |
| Execute a single precision Bi-Conjugate Gradients Stabilized solver. More... | |
| CLSPARSE_EXPORT clsparseStatus | clsparseDcsrbicgStab (cldenseVector *x, const clsparseCsrMatrix *A, const cldenseVector *b, clSParseSolverControl solverControl, clsparseControl control) |
| Execute a double precision Bi-Conjugate Gradients Stabilized solver. More... | |
Functions to setup or execute sparse iterative solvers.
| CLSPARSE_EXPORT clsparseCreateSolverResult clsparseCreateSolverControl | ( | PRECONDITIONER | precond, |
| cl_int | maxIters, | ||
| cl_double | relTol, | ||
| cl_double | absTol | ||
| ) |
Create a clSParseSolverControl object to control clsparse iterative solver operations.
| [in] | precond | A valid enumeration constant from PRECONDITIONER |
| [in] | maxIters | Maximum number of iterations to converge before timing out |
| [in] | relTol | Relative tolerance |
| [in] | absTol | Absolute tolerance |
| CLSPARSE_EXPORT clsparseStatus clsparseDcsrbicgStab | ( | cldenseVector * | x, |
| const clsparseCsrMatrix * | A, | ||
| const cldenseVector * | b, | ||
| clSParseSolverControl | solverControl, | ||
| clsparseControl | control | ||
| ) |
Execute a double precision Bi-Conjugate Gradients Stabilized solver.
| [in] | x | the dense vector to solve for |
| [in] | A | a clSPARSE CSR matrix with double precision data |
| [in] | b | the input dense vector with double precision data |
| [in] | solverControl | a valid clSParseSolverControl object created with clsparseCreateSolverControl |
| [in] | control | A valid clsparseControl created with clsparseCreateControl |
| CLSPARSE_EXPORT clsparseStatus clsparseDcsrcg | ( | cldenseVector * | x, |
| const clsparseCsrMatrix * | A, | ||
| const cldenseVector * | b, | ||
| clSParseSolverControl | solverControl, | ||
| clsparseControl | control | ||
| ) |
Execute a double precision Conjugate Gradients solver.
| [in] | x | the dense vector to solve for |
| [in] | A | a clSPARSE CSR matrix with double precision data |
| [in] | b | the input dense vector with double precision data |
| [in] | solverControl | a valid clSParseSolverControl object created with clsparseCreateSolverControl |
| [in] | control | A valid clsparseControl created with clsparseCreateControl |
| CLSPARSE_EXPORT clsparseStatus clsparseReleaseSolverControl | ( | clSParseSolverControl | solverControl | ) |
Release a clSParseSolverControl object created with clsparseCreateSolverControl.
| [in,out] | solverControl | clSPARSE object created with clsparseCreateSolverControl |
| CLSPARSE_EXPORT clsparseStatus clsparseScsrbicgStab | ( | cldenseVector * | x, |
| const clsparseCsrMatrix * | A, | ||
| const cldenseVector * | b, | ||
| clSParseSolverControl | solverControl, | ||
| clsparseControl | control | ||
| ) |
Execute a single precision Bi-Conjugate Gradients Stabilized solver.
| [in] | x | the dense vector to solve for |
| [in] | A | the clSPARSE CSR matrix with single precision data |
| [in] | b | the input dense vector with single precision data |
| [in] | solverControl | a valid clSParseSolverControl object created with clsparseCreateSolverControl |
| [in] | control | A valid clsparseControl created with clsparseCreateControl |
| CLSPARSE_EXPORT clsparseStatus clsparseScsrcg | ( | cldenseVector * | x, |
| const clsparseCsrMatrix * | A, | ||
| const cldenseVector * | b, | ||
| clSParseSolverControl | solverControl, | ||
| clsparseControl | control | ||
| ) |
Execute a single precision Conjugate Gradients solver.
| [in] | x | the dense vector to solve for |
| [in] | A | a clSPARSE CSR matrix with single precision data |
| [in] | b | the input dense vector with single precision data |
| [in] | solverControl | a valid clSParseSolverControl object created with clsparseCreateSolverControl |
| [in] | control | A valid clsparseControl created with clsparseCreateControl |
| CLSPARSE_EXPORT clsparseStatus clsparseSetSolverParams | ( | clSParseSolverControl | solverControl, |
| PRECONDITIONER | precond, | ||
| cl_int | maxIters, | ||
| cl_double | relTol, | ||
| cl_double | absTol | ||
| ) |
Set clSParseSolverControl state.
| [in] | solverControl | clSPARSE object created with clsparseCreateSolverControl |
| [in] | precond | A valid enumeration constant from PRECONDITIONER, how to precondition sparse data |
| [in] | maxIters | Maximum number of iterations to converge before timing out |
| [in] | relTol | Relative tolerance |
| [in] | absTol | Absolute tolerance |
| CLSPARSE_EXPORT clsparseStatus clsparseSolverPrintMode | ( | clSParseSolverControl | solverControl, |
| PRINT_MODE | mode | ||
| ) |
Set the verbosity level of the clSParseSolverControl object.
| [in] | solverControl | clSPARSE object created with clsparseCreateSolverControl |
| [in] | mode | A valid enumeration constant from PRINT_MODE, to specify verbosity level |
1.8.10