PLASMA
Parallel Linear Algebra Software for Multicore Architectures
lauum: Multiplies triangular matrices; used in potri

Functions

int plasma_clauum (plasma_enum_t uplo, int n, plasma_complex32_t *pA, int lda)
 
void plasma_omp_clauum (plasma_enum_t uplo, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
 
int plasma_dlauum (plasma_enum_t uplo, int n, double *pA, int lda)
 
void plasma_omp_dlauum (plasma_enum_t uplo, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
 
int plasma_slauum (plasma_enum_t uplo, int n, float *pA, int lda)
 
void plasma_omp_slauum (plasma_enum_t uplo, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
 
int plasma_zlauum (plasma_enum_t uplo, int n, plasma_complex64_t *pA, int lda)
 
void plasma_omp_zlauum (plasma_enum_t uplo, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
 

Detailed Description

Function Documentation

int plasma_clauum ( plasma_enum_t  uplo,
int  n,
plasma_complex32_t *  pA,
int  lda 
)

Computes the product U * U^H or L^H * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

If uplo = 'U' or 'u' then the upper triangle of the result is stored, overwriting the factor U in A. If uplo = 'L' or 'l' then the lower triangle of the result is stored, overwriting the factor L in A.

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,out]pAOn entry, the triangular factor U or L. On exit, if UPLO = 'U', the upper triangle of A is overwritten with the upper triangle of the product U * U^H; if UPLO = 'L', the lower triangle of A is overwritten with the lower triangle of the product L^H * L. The diagonal is assumed to be real with no imaginary part.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
Return values
PlasmaSuccesssuccessful exit.
<0 if -i, the i-th argument had an illegal value.
See also
plasma_clauum
plasma_dlauum
plasma_slauum
void plasma_omp_clauum ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Computes the product U * U^H or L^H * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]ADescriptor of matrix A.
[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_clauum
plasma_omp_clauum
plasma_omp_dlauum
plasma_omp_clauum
plasma_omp_slauum
int plasma_dlauum ( plasma_enum_t  uplo,
int  n,
double *  pA,
int  lda 
)

Computes the product U * U^T or L^T * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

If uplo = 'U' or 'u' then the upper triangle of the result is stored, overwriting the factor U in A. If uplo = 'L' or 'l' then the lower triangle of the result is stored, overwriting the factor L in A.

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,out]pAOn entry, the triangular factor U or L. On exit, if UPLO = 'U', the upper triangle of A is overwritten with the upper triangle of the product U * U^T; if UPLO = 'L', the lower triangle of A is overwritten with the lower triangle of the product L^T * L. The diagonal is assumed to be real with no imaginary part.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
Return values
PlasmaSuccesssuccessful exit.
<0 if -i, the i-th argument had an illegal value.
See also
plasma_clauum
plasma_dlauum
plasma_slauum
void plasma_omp_dlauum ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Computes the product U * U^T or L^T * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]ADescriptor of matrix A.
[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_dlauum
plasma_omp_dlauum
plasma_omp_dlauum
plasma_omp_clauum
plasma_omp_slauum
int plasma_slauum ( plasma_enum_t  uplo,
int  n,
float *  pA,
int  lda 
)

Computes the product U * U^T or L^T * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

If uplo = 'U' or 'u' then the upper triangle of the result is stored, overwriting the factor U in A. If uplo = 'L' or 'l' then the lower triangle of the result is stored, overwriting the factor L in A.

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,out]pAOn entry, the triangular factor U or L. On exit, if UPLO = 'U', the upper triangle of A is overwritten with the upper triangle of the product U * U^T; if UPLO = 'L', the lower triangle of A is overwritten with the lower triangle of the product L^T * L. The diagonal is assumed to be real with no imaginary part.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
Return values
PlasmaSuccesssuccessful exit.
<0 if -i, the i-th argument had an illegal value.
See also
plasma_clauum
plasma_dlauum
plasma_slauum
void plasma_omp_slauum ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Computes the product U * U^T or L^T * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]ADescriptor of matrix A.
[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_slauum
plasma_omp_slauum
plasma_omp_dlauum
plasma_omp_clauum
plasma_omp_slauum
int plasma_zlauum ( plasma_enum_t  uplo,
int  n,
plasma_complex64_t *  pA,
int  lda 
)

Computes the product U * U^H or L^H * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

If uplo = 'U' or 'u' then the upper triangle of the result is stored, overwriting the factor U in A. If uplo = 'L' or 'l' then the lower triangle of the result is stored, overwriting the factor L in A.

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,out]pAOn entry, the triangular factor U or L. On exit, if UPLO = 'U', the upper triangle of A is overwritten with the upper triangle of the product U * U^H; if UPLO = 'L', the lower triangle of A is overwritten with the lower triangle of the product L^H * L. The diagonal is assumed to be real with no imaginary part.
[in]ldaThe leading dimension of the array A. lda >= max(1,n).
Return values
PlasmaSuccesssuccessful exit.
<0 if -i, the i-th argument had an illegal value.
See also
plasma_clauum
plasma_dlauum
plasma_slauum
void plasma_omp_zlauum ( plasma_enum_t  uplo,
plasma_desc_t  A,
plasma_sequence_t *  sequence,
plasma_request_t *  request 
)

Computes the product U * U^H or L^H * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

Parameters
[in]uplo
  • PlasmaUpper: Upper triangle of A is stored;
  • PlasmaLower: Lower triangle of A is stored.
[in]ADescriptor of matrix A.
[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_zlauum
plasma_omp_zlauum
plasma_omp_dlauum
plasma_omp_clauum
plasma_omp_slauum