MAGMA  2.7.1
Matrix Algebra for GPU and Multicore Architectures
 All Classes Files Functions Friends Groups Pages
double-complex precision

Functions

magma_int_t magma_zcustomicsetup (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Reads in an Incomplete Cholesky preconditioner. More...
 
magma_int_t magma_zcustomilusetup (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Reads in an Incomplete LU preconditioner. More...
 
magma_int_t magma_zparictsetup (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares the iterative threshold Incomplete Cholesky preconditioner. More...
 
magma_int_t magma_zisai_l (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Left-hand-side application of ISAI preconditioner. More...
 
magma_int_t magma_zisai_r (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Right-hand-side application of ISAI preconditioner. More...
 
magma_int_t magma_zisai_l_t (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Left-hand-side application of ISAI preconditioner. More...
 
magma_int_t magma_zisai_r_t (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Right-hand-side application of ISAI preconditioner. More...
 
magma_int_t magma_ziluisaisetup_lower (magma_z_matrix L, magma_z_matrix S, magma_z_matrix *ISAIL, magma_queue_t queue)
 Prepares Incomplete LU preconditioner using a sparse approximate inverse instead of sparse triangular solves. More...
 
magma_int_t magma_ziluisaisetup_upper (magma_z_matrix U, magma_z_matrix S, magma_z_matrix *ISAIU, magma_queue_t queue)
 Prepares Incomplete LU preconditioner using a sparse approximate inverse instead of sparse triangular solves. More...
 
magma_int_t magma_zparic_cpu (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an IC(0) preconditer via fixed-point iterations. More...
 
magma_int_t magma_zparic_gpu (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an IC(0) preconditer via fixed-point iterations. More...
 
magma_int_t magma_zparict (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares the iterative threshold Incomplete Cholesky preconditioner. More...
 
magma_int_t magma_zparict_cpu (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an incomplete threshold Cholesky preconditioner via the ParILUT algorithm. More...
 
magma_int_t magma_zparilu_cpu (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an ILU(0) preconditer via fixed-point iterations. More...
 
magma_int_t magma_zparilu_gpu (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an ILU(0) preconditer via fixed-point iterations. More...
 
magma_int_t magma_zparilut (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares the iterative threshold Incomplete LU preconditioner. More...
 
magma_int_t magma_zparilut_cpu (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an incomplete threshold LU preconditioner via the ParILUT algorithm. More...
 
magma_int_t magma_zparilut_gpu (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an incomplete threshold LU preconditioner via the ParILUT algorithm. More...
 
magma_int_t magma_zparilut_gpu_nodp (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Generates an incomplete threshold LU preconditioner via the ParILUT algorithm. More...
 
magma_int_t magma_zicisaisetup (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares Incomplete Cholesky preconditioner using a sparse approximate inverse instead of sparse triangular solves. More...
 
magma_int_t magma_ziluisaisetup (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares Incomplete LU preconditioner using a sparse approximate inverse instead of sparse triangular solves. More...
 
magma_int_t magma_zcumilusetup (magma_z_matrix A, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares the ILU preconditioner via the cuSPARSE. More...
 
magma_int_t magma_zcumilusetup_transpose (magma_z_matrix A, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares the ILU transpose preconditioner via the cuSPARSE. More...
 
magma_int_t magma_zcumilugeneratesolverinfo (magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares the ILU triangular solves via cuSPARSE using an ILU factorization matrix stored either in precond->M or on the device as precond->L and precond->U. More...
 
magma_int_t magma_zapplycumilu_l (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Performs the left triangular solves using the ILU preconditioner. More...
 
magma_int_t magma_zapplycumilu_l_transpose (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Performs the left triangular solves using the transpose ILU preconditioner. More...
 
magma_int_t magma_zapplycumilu_r (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Performs the right triangular solves using the ILU preconditioner. More...
 
magma_int_t magma_zapplycumilu_r_transpose (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Performs the right triangular solves using the transpose ILU preconditioner. More...
 
magma_int_t magma_zapplyiteric_l (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Performs the left triangular solves using the IC preconditioner via Jacobi. More...
 
magma_int_t magma_zapplyiteric_r (magma_z_matrix b, magma_z_matrix *x, magma_z_preconditioner *precond, magma_queue_t queue)
 Performs the right triangular solves using the IC preconditioner via Jacobi. More...
 
magma_int_t magma_zjaccard_weights (magma_z_matrix A, magma_z_matrix *J, magma_queue_t queue)
 Computes Jaccard weights for a matrix. More...
 
magma_int_t magma_zparilusetup (magma_z_matrix A, magma_z_matrix b, magma_z_preconditioner *precond, magma_queue_t queue)
 Prepares the ILU preconditioner via the iterative ILU iteration. More...
 

Detailed Description

Function Documentation

magma_int_t magma_zcustomicsetup ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Reads in an Incomplete Cholesky preconditioner.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zcustomilusetup ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Reads in an Incomplete LU preconditioner.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparictsetup ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the iterative threshold Incomplete Cholesky preconditioner.

This function requires OpenMP, and is only available if OpenMP is activated.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zisai_l ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Left-hand-side application of ISAI preconditioner.

Parameters
[in]bmagma_z_matrix input RHS b
[in,out]xmagma_z_matrix solution x
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zisai_r ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Right-hand-side application of ISAI preconditioner.

Parameters
[in]bmagma_z_matrix input RHS b
[in,out]xmagma_z_matrix solution x
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zisai_l_t ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Left-hand-side application of ISAI preconditioner.

Transpose.

Parameters
[in]bmagma_z_matrix input RHS b
[in,out]xmagma_z_matrix solution x
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zisai_r_t ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Right-hand-side application of ISAI preconditioner.

Transpose.

Parameters
[in]bmagma_z_matrix input RHS b
[in,out]xmagma_z_matrix solution x
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_ziluisaisetup_lower ( magma_z_matrix  L,
magma_z_matrix  S,
magma_z_matrix *  ISAIL,
magma_queue_t  queue 
)

Prepares Incomplete LU preconditioner using a sparse approximate inverse instead of sparse triangular solves.

This routine only handles the lower triangular part. The return value is 0 in case of success, and Magma_CUSOLVE if the pattern is too large to be handled.

Parameters
[in]Lmagma_z_matrix lower triangular factor
[in]Smagma_z_matrix pattern for the ISAI preconditioner for L
[out]ISAILmagma_z_matrix* ISAI preconditioner for L
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_ziluisaisetup_upper ( magma_z_matrix  U,
magma_z_matrix  S,
magma_z_matrix *  ISAIU,
magma_queue_t  queue 
)

Prepares Incomplete LU preconditioner using a sparse approximate inverse instead of sparse triangular solves.

This routine only handles the upper triangular part. The return value is 0 in case of success, and Magma_CUSOLVE if the pattern is too large to be handled.

Parameters
[in]Umagma_z_matrix lower triangular factor
[in]Smagma_z_matrix pattern for the ISAI preconditioner for U
[out]ISAIUmagma_z_matrix* ISAI preconditioner for U
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparic_cpu ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an IC(0) preconditer via fixed-point iterations.

For reference, see: E. Chow and A. Patel: "Fine-grained Parallel Incomplete LU Factorization", SIAM Journal on Scientific Computing, 37, C169-C193 (2015).

This is the CPU implementation of the ParIC

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparic_gpu ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an IC(0) preconditer via fixed-point iterations.

For reference, see: E. Chow and A. Patel: "Fine-grained Parallel Incomplete LU Factorization", SIAM Journal on Scientific Computing, 37, C169-C193 (2015).

This is the GPU implementation of the ParIC

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparict ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the iterative threshold Incomplete Cholesky preconditioner.

The strategy is interleaving a parallel fixed-point iteration that approximates an incomplete factorization for a given nonzero pattern with a procedure that adaptively changes the pattern. Much of this new algorithm has fine-grained parallelism, and we show that it can efficiently exploit the compute power of shared memory architectures.

This is the routine used in the publication by Anzt, Chow, Dongarra: ''ParILUT - A new parallel threshold ILU factorization'' submitted to SIAM SISC in 2016.

This function requires OpenMP, and is only available if OpenMP is activated.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparict_cpu ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an incomplete threshold Cholesky preconditioner via the ParILUT algorithm.

The strategy is to interleave a parallel fixed-point iteration that approximates an incomplete factorization for a given nonzero pattern with a procedure that adaptively changes the pattern. Much of this algorithm has fine-grained parallelism, and can efficiently exploit the compute power of shared memory architectures.

This is the routine used in the publication by Anzt, Chow, Dongarra: ''ParILUT - A new parallel threshold ILU factorization'' submitted to SIAM SISC in 2017.

This version uses the default setting which adds all candidates to the sparsity pattern. It is the variant for SPD systems.

This function requires OpenMP, and is only available if OpenMP is activated.

The parameter list is:

precond.sweeps : number of ParILUT steps precond.atol : absolute fill ratio (1.0 keeps nnz count constant)

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparilu_cpu ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an ILU(0) preconditer via fixed-point iterations.

For reference, see: E. Chow and A. Patel: "Fine-grained Parallel Incomplete LU Factorization", SIAM Journal on Scientific Computing, 37, C169-C193 (2015).

This is the CPU implementation of the ParILU

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparilu_gpu ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an ILU(0) preconditer via fixed-point iterations.

For reference, see: E. Chow and A. Patel: "Fine-grained Parallel Incomplete LU Factorization", SIAM Journal on Scientific Computing, 37, C169-C193 (2015).

This is the GPU implementation of the ParILU

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparilut ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the iterative threshold Incomplete LU preconditioner.

The strategy is interleaving a parallel fixed-point iteration that approximates an incomplete factorization for a given nonzero pattern with a procedure that adaptively changes the pattern. Much of this new algorithm has fine-grained parallelism, and we show that it can efficiently exploit the compute power of shared memory architectures.

This is the routine used in the publication by Anzt, Chow, Dongarra: ''ParILUT - A new parallel threshold ILU factorization'' submitted to SIAM SISC in 2017.

This function requires OpenMP, and is only available if OpenMP is activated.

The parameter list is:

precond.sweeps : number of ParILUT steps precond.atol : absolute fill ratio (1.0 keeps nnz constant) precond.rtol : how many candidates are added to the sparsity pattern 1.0 one per row < 1.0 a fraction of those > 1.0 all candidates

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparilut_cpu ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an incomplete threshold LU preconditioner via the ParILUT algorithm.

The strategy is to interleave a parallel fixed-point iteration that approximates an incomplete factorization for a given nonzero pattern with a procedure that adaptively changes the pattern. Much of this algorithm has fine-grained parallelism, and can efficiently exploit the compute power of shared memory architectures.

This is the routine used in the publication by Anzt, Chow, Dongarra: ''ParILUT - A new parallel threshold ILU factorization'' submitted to SIAM SISC in 2017.

This version uses the default setting which adds all candidates to the sparsity pattern.

This function requires OpenMP, and is only available if OpenMP is activated.

The parameter list is:

precond.sweeps : number of ParILUT steps precond.atol : absolute fill ratio (1.0 keeps nnz count constant)

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparilut_gpu ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an incomplete threshold LU preconditioner via the ParILUT algorithm.

The strategy is to interleave a parallel fixed-point iteration that approximates an incomplete factorization for a given nonzero pattern with a procedure that adaptively changes the pattern. Much of this algorithm has fine-grained parallelism, and can efficiently exploit the compute power of shared memory architectures.

This is the routine used in the publication by Anzt, Chow, Dongarra: ''ParILUT - A new parallel threshold ILU factorization'' submitted to SIAM SISC in 2017.

This version uses the default setting which adds all candidates to the sparsity pattern.

This function requires OpenMP, and is only available if OpenMP is activated.

The parameter list is:

precond.sweeps : number of ParILUT steps precond.atol : absolute fill ratio (1.0 keeps nnz count constant)

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparilut_gpu_nodp ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Generates an incomplete threshold LU preconditioner via the ParILUT algorithm.

The strategy is to interleave a parallel fixed-point iteration that approximates an incomplete factorization for a given nonzero pattern with a procedure that adaptively changes the pattern. Much of this algorithm has fine-grained parallelism, and can efficiently exploit the compute power of shared memory architectures.

This is the routine used in the publication by Anzt, Chow, Dongarra: ''ParILUT - A new parallel threshold ILU factorization'' submitted to SIAM SISC in 2017.

This version uses the default setting which adds all candidates to the sparsity pattern.

This function requires OpenMP, and is only available if OpenMP is activated.

The parameter list is:

precond.sweeps : number of ParILUT steps precond.atol : absolute fill ratio (1.0 keeps nnz count constant)

This routine is the same as magma_zparilut_gpu(), except that it uses no dynamic paralellism

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zicisaisetup ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares Incomplete Cholesky preconditioner using a sparse approximate inverse instead of sparse triangular solves.

This is the symmetric variant of zgeisai.cpp.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_ziluisaisetup ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares Incomplete LU preconditioner using a sparse approximate inverse instead of sparse triangular solves.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zcumilusetup ( magma_z_matrix  A,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the ILU preconditioner via the cuSPARSE.

Parameters
[in]Amagma_z_matrix input matrix A
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zcumilusetup_transpose ( magma_z_matrix  A,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the ILU transpose preconditioner via the cuSPARSE.

Parameters
[in]Amagma_z_matrix input matrix A
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zcumilugeneratesolverinfo ( magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the ILU triangular solves via cuSPARSE using an ILU factorization matrix stored either in precond->M or on the device as precond->L and precond->U.

Parameters
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zapplycumilu_l ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Performs the left triangular solves using the ILU preconditioner.

Parameters
[in]bmagma_z_matrix RHS
[in,out]xmagma_z_matrix* vector to precondition
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zapplycumilu_l_transpose ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Performs the left triangular solves using the transpose ILU preconditioner.

Parameters
[in]bmagma_z_matrix RHS
[in,out]xmagma_z_matrix* vector to precondition
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zapplycumilu_r ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Performs the right triangular solves using the ILU preconditioner.

Parameters
[in]bmagma_z_matrix RHS
[in,out]xmagma_z_matrix* vector to precondition
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zapplycumilu_r_transpose ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Performs the right triangular solves using the transpose ILU preconditioner.

Parameters
[in]bmagma_z_matrix RHS
[in,out]xmagma_z_matrix* vector to precondition
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zapplyiteric_l ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Performs the left triangular solves using the IC preconditioner via Jacobi.

Parameters
[in]bmagma_z_matrix RHS
[out]xmagma_z_matrix* vector to precondition
[in]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zapplyiteric_r ( magma_z_matrix  b,
magma_z_matrix *  x,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Performs the right triangular solves using the IC preconditioner via Jacobi.

Parameters
[in]bmagma_z_matrix RHS
[out]xmagma_z_matrix* vector to precondition
[in]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjaccard_weights ( magma_z_matrix  A,
magma_z_matrix *  J,
magma_queue_t  queue 
)

Computes Jaccard weights for a matrix.

Parameters
[in]Amagma_z_matrix input matrix
[out]Jmagma_z_matrix* Jaccard weights
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zparilusetup ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Prepares the ILU preconditioner via the iterative ILU iteration.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix input RHS b
[in,out]precondmagma_z_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.