![]() |
MAGMA
1.6.1
Matrix Algebra for GPU and Multicore Architectures
|
Functions | |
magma_int_t | magma_cbaiter (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_queue_t queue) |
Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU. More... | |
magma_int_t | magma_cbicgstab (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_queue_t queue) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More... | |
magma_int_t | magma_cbicgstab_merge (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_queue_t queue) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More... | |
magma_int_t | magma_cbicgstab_merge2 (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_queue_t queue) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More... | |
magma_int_t | magma_cfgmres (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue) |
Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory. More... | |
magma_int_t | magma_cgmres (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_queue_t queue) |
Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory. More... | |
magma_int_t | magma_citerref (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More... | |
magma_int_t | magma_cjacobi (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_queue_t queue) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More... | |
magma_int_t | magma_cpastixsetup (magma_c_sparse_matrix A, magma_c_vector b, magma_c_preconditioner *precond, magma_queue_t queue) |
Prepares the PASTIX solver. More... | |
magma_int_t | magma_cpgmres (magma_c_sparse_matrix A, magma_c_vector b, magma_c_vector *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue) |
ma Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory. More... | |
magma_int_t magma_cbaiter | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU.
[in] | A | magma_c_sparse_matrix input matrix A |
[in] | b | magma_c_vector RHS b |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cbicgstab | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A.
This is a GPU implementation of the Biconjugate Gradient Stabelized method.
[in] | A | magma_c_sparse_matrix input matrix A |
[in] | b | magma_c_vector RHS b |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cbicgstab_merge | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A.
This is a GPU implementation of the Biconjugate Gradient Stabelized method. The difference to magma_cbicgstab is that we use specifically designed kernels merging multiple operations into one kernel.
[in] | A | magma_c_sparse_matrix input matrix A |
[in] | b | magma_c_vector RHS b |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cbicgstab_merge2 | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A.
This is a GPU implementation of the Biconjugate Gradient Stabelized method. The difference to magma_cbicgstab is that we use specifically designed kernels merging multiple operations into one kernel.
[in] | A | magma_c_sparse_matrix input matrix A |
[in] | b | magma_c_vector RHS b |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cfgmres | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_c_preconditioner * | precond_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory.
X and B are complex vectors stored on the GPU memory. This is a GPU implementation of the right-preconditioned flexible GMRES.
[in] | A | magma_c_sparse_matrix descriptor for matrix A |
[in] | b | magma_c_vector RHS b vector |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in] | precond_par | magma_c_preconditioner* preconditioner |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cgmres | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory.
X and B are complex vectors stored on the GPU memory. This is a GPU implementation of the GMRES method.
[in] | A | magma_c_sparse_matrix descriptor for matrix A |
[in] | b | magma_c_vector RHS b vector |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_citerref | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_c_preconditioner * | precond_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * X = B where A is a complex Hermitian 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.
[in] | A | magma_c_sparse_matrix input matrix A |
[in] | b | magma_c_vector RHS b |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in,out] | precond_par | magma_c_preconditioner* inner solver |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cjacobi | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_queue_t | queue | ||
) |
Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A.
This is a GPU implementation of the Jacobi method.
[in] | A | magma_c_sparse_matrix input matrix A |
[in] | b | magma_c_vector RHS b |
[in,out] | x | magma_c_vector* solution approximation |
[in,out] | solver_par | magma_c_solver_par* solver parameters |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cpastixsetup | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_preconditioner * | precond, | ||
magma_queue_t | queue | ||
) |
Prepares the PASTIX solver.
[in] | A | magma_c_sparse_matrix input matrix A |
[in] | b | magma_c_vector RHS b |
[in] | precond | magma_c_preconditioner* preconditioner parameter |
[in] | queue | magma_queue_t Queue to execute in. |
magma_int_t magma_cpgmres | ( | magma_c_sparse_matrix | A, |
magma_c_vector | b, | ||
magma_c_vector * | x, | ||
magma_c_solver_par * | solver_par, | ||
magma_c_preconditioner * | precond_par, | ||
magma_queue_t | queue | ||
) |
ma Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory.
X and B are complex vectors stored on the GPU memory. This is a GPU implementation of the right-preconditioned GMRES method.
@param[in] A magma_c_sparse_matrix descriptor for matrix A @param[in] b magma_c_vector RHS b vector @param[in,out] x magma_c_vector* solution approximation @param[in,out] solver_par magma_c_solver_par* solver parameters @param[in] precond_par magma_c_preconditioner* preconditioner @param[in] queue magma_queue_t Queue to execute in.