MAGMA  1.6.1
Matrix Algebra for GPU and Multicore Architectures
 All Classes Files Functions Friends Groups Pages
single precision

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, 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_sbicgstab (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par, magma_queue_t queue)
 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, magma_queue_t queue)
 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, magma_queue_t queue)
 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_sfgmres (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par, magma_s_preconditioner *precond_par, magma_queue_t queue)
 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_sgmres (magma_s_sparse_matrix A, magma_s_vector b, magma_s_vector *x, magma_s_solver_par *solver_par, magma_queue_t queue)
 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, magma_queue_t queue)
 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, magma_queue_t queue)
 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, magma_queue_t queue)
 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, magma_queue_t queue)
 ma Solves a system of linear equations A * X = B where A is a real sparse matrix stored in the GPU memory. More...
 

Detailed Description

Function Documentation

magma_int_t magma_sbaiter ( magma_s_sparse_matrix  A,
magma_s_vector  b,
magma_s_vector *  x,
magma_s_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.

Parameters
[in]Amagma_s_sparse_matrix input matrix A
[in]bmagma_s_vector RHS b
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_sbicgstab ( magma_s_sparse_matrix  A,
magma_s_vector  b,
magma_s_vector *  x,
magma_s_solver_par *  solver_par,
magma_queue_t  queue 
)

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.

Parameters
[in]Amagma_s_sparse_matrix input matrix A
[in]bmagma_s_vector RHS b
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
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,
magma_queue_t  queue 
)

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.

Parameters
[in]Amagma_s_sparse_matrix input matrix A
[in]bmagma_s_vector RHS b
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
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,
magma_queue_t  queue 
)

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.

Parameters
[in]Amagma_s_sparse_matrix input matrix A
[in]bmagma_s_vector RHS b
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_sfgmres ( magma_s_sparse_matrix  A,
magma_s_vector  b,
magma_s_vector *  x,
magma_s_solver_par *  solver_par,
magma_s_preconditioner *  precond_par,
magma_queue_t  queue 
)

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 flexible GMRES.

Parameters
[in]Amagma_s_sparse_matrix descriptor for matrix A
[in]bmagma_s_vector RHS b vector
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in]precond_parmagma_s_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_sgmres ( magma_s_sparse_matrix  A,
magma_s_vector  b,
magma_s_vector *  x,
magma_s_solver_par *  solver_par,
magma_queue_t  queue 
)

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 GMRES method.

Parameters
[in]Amagma_s_sparse_matrix descriptor for matrix A
[in]bmagma_s_vector RHS b vector
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
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,
magma_queue_t  queue 
)

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.

Parameters
[in]Amagma_s_sparse_matrix input matrix A
[in]bmagma_s_vector RHS b
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in,out]precond_parmagma_s_preconditioner* inner solver
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_sjacobi ( magma_s_sparse_matrix  A,
magma_s_vector  b,
magma_s_vector *  x,
magma_s_solver_par *  solver_par,
magma_queue_t  queue 
)

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.

Parameters
[in]Amagma_s_sparse_matrix input matrix A
[in]bmagma_s_vector RHS b
[in,out]xmagma_s_vector* solution approximation
[in,out]solver_parmagma_s_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_spastixsetup ( magma_s_sparse_matrix  A,
magma_s_vector  b,
magma_s_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the PASTIX solver.

Parameters
[in]Amagma_s_sparse_matrix input matrix A
[in]bmagma_s_vector RHS b
[in]precondmagma_s_preconditioner* preconditioner parameter
[in]queuemagma_queue_t Queue to execute in.
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,
magma_queue_t  queue 
)

ma 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.

@param[in]
A           magma_s_sparse_matrix
            descriptor for matrix A

@param[in]
b           magma_s_vector
            RHS b vector

@param[in,out]
x           magma_s_vector*
            solution approximation

@param[in,out]
solver_par  magma_s_solver_par*
            solver parameters

@param[in]
precond_par magma_s_preconditioner*
            preconditioner
@param[in]
queue       magma_queue_t
            Queue to execute in.