![]() |
MAGMA
1.5.0
Matrix Algebra for GPU and Multicore Architectures
|
Functions | |
magma_int_t | magma_sbaiter (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par) |
Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU. More... | |
magma_int_t | magma_sbcsrlu (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par) |
LU decomposition and solution via triangular solves for a BCSR matrix A. More... | |
magma_int_t | magma_sbcsrlutrf (magma_s_sparse_matrix A, magma_s_sparse_matrix *M, magma_int_t *ipiv, magma_int_t version) |
LU decomposition for a BCSR matrix A. More... | |
magma_int_t | magma_sbcsrlusv (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par, magma_int_t *ipiv) |
LU solve for a BCSR matrix A. More... | |
magma_int_t | magma_sbicgstab (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A. More... | |
magma_int_t | magma_sbicgstab_merge (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A. More... | |
magma_int_t | magma_sbicgstab_merge2 (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A. More... | |
magma_int_t | magma_sgmres (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par) |
Solves a system of linear equations A * X = B where A is a real sparse matrix stored in the GPU memory. More... | |
magma_int_t | magma_siterref (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par, magma_s_preconditioner *precond_par) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A. More... | |
magma_int_t | magma_sjacobi (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A. More... | |
magma_int_t | magma_spastixsetup (magma_s_sparse_matrix A, magma_s_vector b, magma_s_preconditioner *precond) |
Prepares the PASTIX solver. More... | |
magma_int_t | magma_spgmres (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par, magma_s_preconditioner *precond_par) |
Solves a system of linear equations A * X = B where A is a real sparse matrix stored in the GPU memory. More... | |
magma_int_t magma_sbaiter | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par | ||
) |
Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU.
A | magma_s_sparse_matrix input matrix A |
b | magma_s_vector RHS b |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
magma_int_t magma_sbcsrlu | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par | ||
) |
LU decomposition and solution via triangular solves for a BCSR matrix A.
We assume all diagonal blocks to be nonzero.
A | magma_s_sparse_matrix descriptor for matrix A |
b | magma_s_vector RHS b vector |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
magma_int_t magma_sbcsrlusv | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par, | ||
magma_int_t * | ipiv | ||
) |
LU solve for a BCSR matrix A.
A | magma_s_sparse_matrix input matrix A (on DEV) |
b | magma_s_vector RHS (on DEV) |
x | magma_s_vector solution (on DEV) |
solver_par | magma_s_solver_par* solver parameters |
ipiv | magma_int_t* pivot vector |
magma_int_t magma_sbcsrlutrf | ( | magma_s_sparse_matrix | A, |
magma_s_sparse_matrix * | M, | ||
magma_int_t * | ipiv, | ||
magma_int_t | version | ||
) |
LU decomposition for a BCSR matrix A.
We assume all diagonal blocks to be nonzero.
A | magma_s_sparse_matrix input matrix A (on DEV) |
m | magma_s_sparse_matrix* output matrix containing LU decomposition |
ipiv | magma_int_t* pivot vector |
magma_int_t magma_sbicgstab | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par | ||
) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A.
This is a GPU implementation of the Biconjugate Gradient Stabelized method.
A | magma_s_sparse_matrix input matrix A |
b | magma_s_vector RHS b |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
magma_int_t magma_sbicgstab_merge | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par | ||
) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A.
This is a GPU implementation of the Biconjugate Gradient Stabelized method. The difference to magma_sbicgstab is that we use specifically designed kernels merging multiple operations into one kernel.
A | magma_s_sparse_matrix input matrix A |
b | magma_s_vector RHS b |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
magma_int_t magma_sbicgstab_merge2 | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par | ||
) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A.
This is a GPU implementation of the Biconjugate Gradient Stabelized method. The difference to magma_sbicgstab is that we use specifically designed kernels merging multiple operations into one kernel.
A | magma_s_sparse_matrix input matrix A |
b | magma_s_vector RHS b |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
magma_int_t magma_sgmres | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par | ||
) |
Solves a system of linear equations A * X = B where A is a real sparse matrix stored in the GPU memory.
X and B are real vectors stored on the GPU memory. This is a GPU implementation of the right-preconditioned GMRES method.
A | magma_s_sparse_matrix descriptor for matrix A |
b | magma_s_vector RHS b vector |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
magma_int_t magma_siterref | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par, | ||
magma_s_preconditioner * | precond_par | ||
) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A.
This is a GPU implementation of the Iterative Refinement method. The inner solver is passed via the preconditioner argument.
A | magma_s_sparse_matrix input matrix A |
b | magma_s_vector RHS b |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
precond_par | magma_s_preconditioner* inner solver |
magma_int_t magma_sjacobi | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par | ||
) |
Solves a system of linear equations A * X = B where A is a real symmetric N-by-N positive definite matrix A.
This is a GPU implementation of the Jacobi method.
A | magma_s_sparse_matrix input matrix A |
b | magma_s_vector RHS b |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
magma_int_t magma_spastixsetup | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_preconditioner * | precond | ||
) |
Prepares the PASTIX solver.
A | magma_s_sparse_matrix input matrix A |
b | magma_s_vector RHS b |
precond | magma_s_preconditioner* preconditioner parameter |
magma_int_t magma_spgmres | ( | magma_s_sparse_matrix | A, |
magma_s_vector | b, | ||
magma_s_vector * | x, | ||
magma_s_solver_par * | solver_par, | ||
magma_s_preconditioner * | precond_par | ||
) |
Solves a system of linear equations A * X = B where A is a real sparse matrix stored in the GPU memory.
X and B are real vectors stored on the GPU memory. This is a GPU implementation of the right-preconditioned GMRES method.
A | magma_s_sparse_matrix descriptor for matrix A |
b | magma_s_vector RHS b vector |
x | magma_s_vector* solution approximation |
solver_par | magma_s_solver_par* solver parameters |
precond_par | magma_s_preconditioner* preconditioner |