PLASMA
Parallel Linear Algebra Software for Multicore Architectures

Functions

int plasma_cpotrs (plasma_enum_t uplo, int n, int nrhs, plasma_complex32_t *pA, int lda, plasma_complex32_t *pB, int ldb)
 
void plasma_omp_cpotrs (plasma_enum_t uplo, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
 
int plasma_dpotrs (plasma_enum_t uplo, int n, int nrhs, double *pA, int lda, double *pB, int ldb)
 
void plasma_omp_dpotrs (plasma_enum_t uplo, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
 
int plasma_spotrs (plasma_enum_t uplo, int n, int nrhs, float *pA, int lda, float *pB, int ldb)
 
void plasma_omp_spotrs (plasma_enum_t uplo, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
 
int plasma_zpotrs (plasma_enum_t uplo, int n, int nrhs, plasma_complex64_t *pA, int lda, plasma_complex64_t *pB, int ldb)
 
void plasma_omp_zpotrs (plasma_enum_t uplo, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
 

Detailed Description

Function Documentation

int plasma_cpotrs ( plasma_enum_t  uplo,
int  n,
int  nrhs,
plasma_complex32_t *  pA,
int  lda,
plasma_complex32_t *  pB,
int  ldb 
)

Solves a system of linear equations A * X = B with a Hermitian positive definite in the complex matrix A using the Cholesky factorization A = U^H*U or A = L*L^H computed by plasma_cpotrf.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]nThe order of the matrix A. n >= 0.
[in]nrhsThe number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0.
[in,out]pAThe triangular factor U or L from the Cholesky factorization A = U^H*U or A = L*L^H, computed by plasma_cpotrf. Remark: If out-of-place layout translation is used, the matrix A can be considered as input, however if inplace layout translation is enabled, the content of A will be reordered for computation and restored before exiting the function.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
[in,out]pBOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]ldbThe leading dimension of the array B. ldb >= max(1,n).
Return values
PlasmaSuccesssuccessful exit
<0 if -i, the i-th argument had an illegal value
See also
plasma_omp_cpotrs
plasma_cpotrs
plasma_dpotrs
plasma_spotrs
plasma_cpotrf
void plasma_omp_cpotrs ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_desc_t  B,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Solves a system of linear equations using previously computed Cholesky factorization. Non-blocking tile version of plasma_cpotrs(). 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.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]AThe triangular factor U or L from the Cholesky factorization A = U^H*U or A = L*L^H, computed by plasma_cpotrf.
[in,out]BOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]sequenceIdentifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors.
[out]requestIdentifies this function call (for exception handling purposes).
Return values
voidErrors 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.
See also
plasma_cpotrs
plasma_omp_cpotrs
plasma_omp_cpotrs
plasma_omp_dpotrs
plasma_omp_spotrs
plasma_omp_cpotrf
int plasma_dpotrs ( plasma_enum_t  uplo,
int  n,
int  nrhs,
double *  pA,
int  lda,
double *  pB,
int  ldb 
)

Solves a system of linear equations A * X = B with a symmetric positive definite in the complex matrix A using the Cholesky factorization A = U^T*U or A = L*L^T computed by plasma_dpotrf.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]nThe order of the matrix A. n >= 0.
[in]nrhsThe number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0.
[in,out]pAThe triangular factor U or L from the Cholesky factorization A = U^T*U or A = L*L^T, computed by plasma_dpotrf. Remark: If out-of-place layout translation is used, the matrix A can be considered as input, however if inplace layout translation is enabled, the content of A will be reordered for computation and restored before exiting the function.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
[in,out]pBOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]ldbThe leading dimension of the array B. ldb >= max(1,n).
Return values
PlasmaSuccesssuccessful exit
<0 if -i, the i-th argument had an illegal value
See also
plasma_omp_dpotrs
plasma_cpotrs
plasma_dpotrs
plasma_spotrs
plasma_dpotrf
void plasma_omp_dpotrs ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_desc_t  B,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Solves a system of linear equations using previously computed Cholesky factorization. Non-blocking tile version of plasma_dpotrs(). 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.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]AThe triangular factor U or L from the Cholesky factorization A = U^T*U or A = L*L^T, computed by plasma_dpotrf.
[in,out]BOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]sequenceIdentifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors.
[out]requestIdentifies this function call (for exception handling purposes).
Return values
voidErrors 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.
See also
plasma_dpotrs
plasma_omp_dpotrs
plasma_omp_cpotrs
plasma_omp_dpotrs
plasma_omp_spotrs
plasma_omp_dpotrf
int plasma_spotrs ( plasma_enum_t  uplo,
int  n,
int  nrhs,
float *  pA,
int  lda,
float *  pB,
int  ldb 
)

Solves a system of linear equations A * X = B with a symmetric positive definite in the complex matrix A using the Cholesky factorization A = U^T*U or A = L*L^T computed by plasma_spotrf.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]nThe order of the matrix A. n >= 0.
[in]nrhsThe number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0.
[in,out]pAThe triangular factor U or L from the Cholesky factorization A = U^T*U or A = L*L^T, computed by plasma_spotrf. Remark: If out-of-place layout translation is used, the matrix A can be considered as input, however if inplace layout translation is enabled, the content of A will be reordered for computation and restored before exiting the function.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
[in,out]pBOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]ldbThe leading dimension of the array B. ldb >= max(1,n).
Return values
PlasmaSuccesssuccessful exit
<0 if -i, the i-th argument had an illegal value
See also
plasma_omp_spotrs
plasma_cpotrs
plasma_dpotrs
plasma_spotrs
plasma_spotrf
void plasma_omp_spotrs ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_desc_t  B,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Solves a system of linear equations using previously computed Cholesky factorization. Non-blocking tile version of plasma_spotrs(). 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.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]AThe triangular factor U or L from the Cholesky factorization A = U^T*U or A = L*L^T, computed by plasma_spotrf.
[in,out]BOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]sequenceIdentifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors.
[out]requestIdentifies this function call (for exception handling purposes).
Return values
voidErrors 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.
See also
plasma_spotrs
plasma_omp_spotrs
plasma_omp_cpotrs
plasma_omp_dpotrs
plasma_omp_spotrs
plasma_omp_spotrf
int plasma_zpotrs ( plasma_enum_t  uplo,
int  n,
int  nrhs,
plasma_complex64_t *  pA,
int  lda,
plasma_complex64_t *  pB,
int  ldb 
)

Solves a system of linear equations A * X = B with a Hermitian positive definite in the complex matrix A using the Cholesky factorization A = U^H*U or A = L*L^H computed by plasma_zpotrf.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]nThe order of the matrix A. n >= 0.
[in]nrhsThe number of right hand sides, i.e., the number of columns of the matrix B. nrhs >= 0.
[in,out]pAThe triangular factor U or L from the Cholesky factorization A = U^H*U or A = L*L^H, computed by plasma_zpotrf. Remark: If out-of-place layout translation is used, the matrix A can be considered as input, however if inplace layout translation is enabled, the content of A will be reordered for computation and restored before exiting the function.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
[in,out]pBOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]ldbThe leading dimension of the array B. ldb >= max(1,n).
Return values
PlasmaSuccesssuccessful exit
<0 if -i, the i-th argument had an illegal value
See also
plasma_omp_zpotrs
plasma_cpotrs
plasma_dpotrs
plasma_spotrs
plasma_zpotrf
void plasma_omp_zpotrs ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_desc_t  B,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Solves a system of linear equations using previously computed Cholesky factorization. Non-blocking tile version of plasma_zpotrs(). 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.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]AThe triangular factor U or L from the Cholesky factorization A = U^H*U or A = L*L^H, computed by plasma_zpotrf.
[in,out]BOn entry, the n-by-nrhs right hand side matrix B. On exit, if return value = 0, the n-by-nrhs solution matrix X.
[in]sequenceIdentifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). Check the sequence->status for errors.
[out]requestIdentifies this function call (for exception handling purposes).
Return values
voidErrors 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.
See also
plasma_zpotrs
plasma_omp_zpotrs
plasma_omp_cpotrs
plasma_omp_dpotrs
plasma_omp_spotrs
plasma_omp_zpotrf