PLASMA
Parallel Linear Algebra Software for Multicore Architectures
|
Functions | |
int | plasma_chesv (plasma_enum_t uplo, int n, int nrhs, plasma_complex32_t *pA, int lda, int *ipiv, plasma_complex32_t *pT, int ldt, int *ipiv2, plasma_complex32_t *pB, int ldb) |
void | plasma_omp_chesv (plasma_enum_t uplo, plasma_desc_t A, int *ipiv, plasma_desc_t T, int *ipiv2, plasma_desc_t B, plasma_desc_t W, plasma_sequence_t *sequence, plasma_request_t *request) |
int | plasma_dsysv (plasma_enum_t uplo, int n, int nrhs, double *pA, int lda, int *ipiv, double *pT, int ldt, int *ipiv2, double *pB, int ldb) |
void | plasma_omp_dsysv (plasma_enum_t uplo, plasma_desc_t A, int *ipiv, plasma_desc_t T, int *ipiv2, plasma_desc_t B, plasma_desc_t W, plasma_sequence_t *sequence, plasma_request_t *request) |
int | plasma_ssysv (plasma_enum_t uplo, int n, int nrhs, float *pA, int lda, int *ipiv, float *pT, int ldt, int *ipiv2, float *pB, int ldb) |
void | plasma_omp_ssysv (plasma_enum_t uplo, plasma_desc_t A, int *ipiv, plasma_desc_t T, int *ipiv2, plasma_desc_t B, plasma_desc_t W, plasma_sequence_t *sequence, plasma_request_t *request) |
int | plasma_zhesv (plasma_enum_t uplo, int n, int nrhs, plasma_complex64_t *pA, int lda, int *ipiv, plasma_complex64_t *pT, int ldt, int *ipiv2, plasma_complex64_t *pB, int ldb) |
void | plasma_omp_zhesv (plasma_enum_t uplo, plasma_desc_t A, int *ipiv, plasma_desc_t T, int *ipiv2, plasma_desc_t B, plasma_desc_t W, plasma_sequence_t *sequence, plasma_request_t *request) |
int plasma_chesv | ( | plasma_enum_t | uplo, |
int | n, | ||
int | nrhs, | ||
plasma_complex32_t * | pA, | ||
int | lda, | ||
int * | ipiv, | ||
plasma_complex32_t * | pT, | ||
int | ldt, | ||
int * | ipiv2, | ||
plasma_complex32_t * | pB, | ||
int | ldb | ||
) |
Solves a system of linear equations A * X = B with LTLt factorization.
[in] | uplo |
|
[in] | n | The order of the matrix A. n >= 0. |
[in] | nrhs | The number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0. |
[in,out] | A | Details of the LTL factorization of the Hermitian matrix A, as computed by plasma_chetrf. |
[in] | lda | The leading dimension of the array A. |
[in,out] | T | Details of the LU factorization of the band matrix A, as computed by plasma_cgbtrf. |
[in] | ldt | The leading dimension of the array T. |
[in] | ipiv | The pivot indices used for chetrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in] | ipiv2 | The pivot indices used for cgbtrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | ldb | The leading dimension of the array B. ldb >= max(1,n). |
PlasmaSuccess | successful exit |
< | 0 if -i, the i-th argument had an illegal value |
void plasma_omp_chesv | ( | plasma_enum_t | uplo, |
plasma_desc_t | A, | ||
int * | ipiv, | ||
plasma_desc_t | T, | ||
int * | ipiv2, | ||
plasma_desc_t | B, | ||
plasma_desc_t | W, | ||
plasma_sequence_t * | sequence, | ||
plasma_request_t * | request | ||
) |
Solves a system of linear equations using previously computed factorization. Non-blocking tile version of plasma_chesv(). May return before the computation is finished. Operates on matrices stored by tiles. All matrices are passed through descriptors. All dimensions are taken from the descriptors. Allows for pipelining of operations at runtime.
[in] | uplo |
|
[in] | A | The triangular factor U or L from the Cholesky factorization A = U^H*U or A = L*L^H, computed by plasma_cpotrf. |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | sequence | Identifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors. |
[out] | request | Identifies this function call (for exception handling purposes). |
void | Errors are returned by setting sequence->status and request->status to error values. The sequence->status and request->status should never be set to PlasmaSuccess (the initial values) since another async call may be setting a failure value at the same time. |
int plasma_dsysv | ( | plasma_enum_t | uplo, |
int | n, | ||
int | nrhs, | ||
double * | pA, | ||
int | lda, | ||
int * | ipiv, | ||
double * | pT, | ||
int | ldt, | ||
int * | ipiv2, | ||
double * | pB, | ||
int | ldb | ||
) |
Solves a system of linear equations A * X = B with LTLt factorization.
[in] | uplo |
|
[in] | n | The order of the matrix A. n >= 0. |
[in] | nrhs | The number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0. |
[in,out] | A | Details of the LTL factorization of the symmetric matrix A, as computed by plasma_dsytrf. |
[in] | lda | The leading dimension of the array A. |
[in,out] | T | Details of the LU factorization of the band matrix A, as computed by plasma_dgbtrf. |
[in] | ldt | The leading dimension of the array T. |
[in] | ipiv | The pivot indices used for dsytrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in] | ipiv2 | The pivot indices used for dgbtrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | ldb | The leading dimension of the array B. ldb >= max(1,n). |
PlasmaSuccess | successful exit |
< | 0 if -i, the i-th argument had an illegal value |
void plasma_omp_dsysv | ( | plasma_enum_t | uplo, |
plasma_desc_t | A, | ||
int * | ipiv, | ||
plasma_desc_t | T, | ||
int * | ipiv2, | ||
plasma_desc_t | B, | ||
plasma_desc_t | W, | ||
plasma_sequence_t * | sequence, | ||
plasma_request_t * | request | ||
) |
Solves a system of linear equations using previously computed factorization. Non-blocking tile version of plasma_dsysv(). May return before the computation is finished. Operates on matrices stored by tiles. All matrices are passed through descriptors. All dimensions are taken from the descriptors. Allows for pipelining of operations at runtime.
[in] | uplo |
|
[in] | A | The triangular factor U or L from the Cholesky factorization A = U^T*U or A = L*L^T, computed by plasma_dpotrf. |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | sequence | Identifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors. |
[out] | request | Identifies this function call (for exception handling purposes). |
void | Errors are returned by setting sequence->status and request->status to error values. The sequence->status and request->status should never be set to PlasmaSuccess (the initial values) since another async call may be setting a failure value at the same time. |
int plasma_ssysv | ( | plasma_enum_t | uplo, |
int | n, | ||
int | nrhs, | ||
float * | pA, | ||
int | lda, | ||
int * | ipiv, | ||
float * | pT, | ||
int | ldt, | ||
int * | ipiv2, | ||
float * | pB, | ||
int | ldb | ||
) |
Solves a system of linear equations A * X = B with LTLt factorization.
[in] | uplo |
|
[in] | n | The order of the matrix A. n >= 0. |
[in] | nrhs | The number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0. |
[in,out] | A | Details of the LTL factorization of the symmetric matrix A, as computed by plasma_ssytrf. |
[in] | lda | The leading dimension of the array A. |
[in,out] | T | Details of the LU factorization of the band matrix A, as computed by plasma_sgbtrf. |
[in] | ldt | The leading dimension of the array T. |
[in] | ipiv | The pivot indices used for ssytrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in] | ipiv2 | The pivot indices used for sgbtrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | ldb | The leading dimension of the array B. ldb >= max(1,n). |
PlasmaSuccess | successful exit |
< | 0 if -i, the i-th argument had an illegal value |
void plasma_omp_ssysv | ( | plasma_enum_t | uplo, |
plasma_desc_t | A, | ||
int * | ipiv, | ||
plasma_desc_t | T, | ||
int * | ipiv2, | ||
plasma_desc_t | B, | ||
plasma_desc_t | W, | ||
plasma_sequence_t * | sequence, | ||
plasma_request_t * | request | ||
) |
Solves a system of linear equations using previously computed factorization. Non-blocking tile version of plasma_ssysv(). May return before the computation is finished. Operates on matrices stored by tiles. All matrices are passed through descriptors. All dimensions are taken from the descriptors. Allows for pipelining of operations at runtime.
[in] | uplo |
|
[in] | A | The triangular factor U or L from the Cholesky factorization A = U^T*U or A = L*L^T, computed by plasma_spotrf. |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | sequence | Identifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors. |
[out] | request | Identifies this function call (for exception handling purposes). |
void | Errors are returned by setting sequence->status and request->status to error values. The sequence->status and request->status should never be set to PlasmaSuccess (the initial values) since another async call may be setting a failure value at the same time. |
int plasma_zhesv | ( | plasma_enum_t | uplo, |
int | n, | ||
int | nrhs, | ||
plasma_complex64_t * | pA, | ||
int | lda, | ||
int * | ipiv, | ||
plasma_complex64_t * | pT, | ||
int | ldt, | ||
int * | ipiv2, | ||
plasma_complex64_t * | pB, | ||
int | ldb | ||
) |
Solves a system of linear equations A * X = B with LTLt factorization.
[in] | uplo |
|
[in] | n | The order of the matrix A. n >= 0. |
[in] | nrhs | The number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0. |
[in,out] | A | Details of the LTL factorization of the Hermitian matrix A, as computed by plasma_zhetrf. |
[in] | lda | The leading dimension of the array A. |
[in,out] | T | Details of the LU factorization of the band matrix A, as computed by plasma_zgbtrf. |
[in] | ldt | The leading dimension of the array T. |
[in] | ipiv | The pivot indices used for zhetrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in] | ipiv2 | The pivot indices used for zgbtrf; for 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv(i). |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | ldb | The leading dimension of the array B. ldb >= max(1,n). |
PlasmaSuccess | successful exit |
< | 0 if -i, the i-th argument had an illegal value |
void plasma_omp_zhesv | ( | plasma_enum_t | uplo, |
plasma_desc_t | A, | ||
int * | ipiv, | ||
plasma_desc_t | T, | ||
int * | ipiv2, | ||
plasma_desc_t | B, | ||
plasma_desc_t | W, | ||
plasma_sequence_t * | sequence, | ||
plasma_request_t * | request | ||
) |
Solves a system of linear equations using previously computed factorization. Non-blocking tile version of plasma_zhesv(). May return before the computation is finished. Operates on matrices stored by tiles. All matrices are passed through descriptors. All dimensions are taken from the descriptors. Allows for pipelining of operations at runtime.
[in] | uplo |
|
[in] | A | The triangular factor U or L from the Cholesky factorization A = U^H*U or A = L*L^H, computed by plasma_zpotrf. |
[in,out] | B | On entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X. |
[in] | sequence | Identifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors. |
[out] | request | Identifies this function call (for exception handling purposes). |
void | Errors are returned by setting sequence->status and request->status to error values. The sequence->status and request->status should never be set to PlasmaSuccess (the initial values) since another async call may be setting a failure value at the same time. |