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

Functions

magma_int_t magma_slauum (magma_uplo_t uplo, magma_int_t n, float *A, magma_int_t lda, magma_int_t *info)
 SLAUUM computes the product U * U' or L' * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A. More...
 
magma_int_t magma_slauum_gpu (magma_uplo_t uplo, magma_int_t n, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *info)
 SLAUUM computes the product U * U' or L' * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array dA. More...
 
magma_int_t magma_spotf2_gpu (magma_uplo_t uplo, magma_int_t n, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *info)
 spotf2 computes the Cholesky factorization of a real symmetric positive definite matrix A. More...
 
magma_int_t magma_spotf2_tile_batched (magma_uplo_t uplo, magma_int_t m, magma_int_t n, float **dA_array, magma_int_t lda, magma_int_t *info_array, magma_int_t gbstep, magma_int_t batchCount, magma_queue_t queue)
 spotf2 computes the Cholesky factorization of a real symmetric positive definite matrix A. More...
 

Detailed Description

Function Documentation

magma_int_t magma_slauum ( magma_uplo_t  uplo,
magma_int_t  n,
float *  A,
magma_int_t  lda,
magma_int_t *  info 
)

SLAUUM computes the product U * U' or L' * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array A.

If UPLO = MagmaUpper then the upper triangle of the result is stored, overwriting the factor U in A. If UPLO = MagmaLower then the lower triangle of the result is stored, overwriting the factor L in A. This is the blocked form of the algorithm, calling Level 3 BLAS.

Parameters
[in]uplomagma_uplo_t Specifies whether the triangular factor stored in the array A is upper or lower triangular:
  • = MagmaUpper: Upper triangular
  • = MagmaLower: Lower triangular
[in]nINTEGER The order of the triangular factor U or L. N >= 0.
[in,out]ACOPLEX_16 array, dimension (LDA,N) On entry, the triangular factor U or L. On exit, if UPLO = MagmaUpper, the upper triangle of A is overwritten with the upper triangle of the product U * U'; if UPLO = MagmaLower, the lower triangle of A is overwritten with the lower triangle of the product L' * L.
[in]ldaINTEGER The leading dimension of the array A. LDA >= max(1,N).
[out]infoINTEGER
  • = 0: successful exit
  • < 0: if INFO = -k, the k-th argument had an illegal value
magma_int_t magma_slauum_gpu ( magma_uplo_t  uplo,
magma_int_t  n,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  info 
)

SLAUUM computes the product U * U' or L' * L, where the triangular factor U or L is stored in the upper or lower triangular part of the array dA.

If UPLO = MagmaUpper then the upper triangle of the result is stored, overwriting the factor U in dA. If UPLO = MagmaLower then the lower triangle of the result is stored, overwriting the factor L in dA. This is the blocked form of the algorithm, calling Level 3 BLAS.

Parameters
[in]uplomagma_uplo_t Specifies whether the triangular factor stored in the array dA is upper or lower triangular:
  • = MagmaUpper: Upper triangular
  • = MagmaLower: Lower triangular
[in]nINTEGER The order of the triangular factor U or L. N >= 0.
[in,out]dAREAL array on the GPU, dimension (LDDA,N) On entry, the triangular factor U or L. On exit, if UPLO = MagmaUpper, the upper triangle of dA is overwritten with the upper triangle of the product U * U'; if UPLO = MagmaLower, the lower triangle of dA is overwritten with the lower triangle of the product L' * L.
[in]lddaINTEGER The leading dimension of the array A. LDDA >= max(1,N).
[out]infoINTEGER
  • = 0: successful exit
  • < 0: if INFO = -k, the k-th argument had an illegal value
magma_int_t magma_spotf2_gpu ( magma_uplo_t  uplo,
magma_int_t  n,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  info 
)

spotf2 computes the Cholesky factorization of a real symmetric positive definite matrix A.

The factorization has the form A = U**H * U, if UPLO = MagmaUpper, or A = L * L**H, if UPLO = MagmaLower, where U is an upper triangular matrix and L is lower triangular.

This is the unblocked version of the algorithm, calling Level 2 BLAS.

Parameters
[in]uplomagma_uplo_t Specifies whether the upper or lower triangular part of the symmetric matrix A is stored.
  • = MagmaUpper: Upper triangular
  • = MagmaLower: Lower triangular
[in]nINTEGER The order of the matrix A. N >= 0 and N <= 512.
[in,out]dAREAL array, dimension (LDDA,N) On entry, the symmetric matrix A. If UPLO = MagmaUpper, the leading n by n upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. If UPLO = MagmaLower, the leading n by n lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced.
On exit, if INFO = 0, the factor U or L from the Cholesky factorization A = U**H * U or A = L * L**H.
[in]lddaINTEGER The leading dimension of the array A. LDDA >= max(1,N).
[out]infoINTEGER
  • = 0: successful exit
  • < 0: if INFO = -k, the k-th argument had an illegal value
  • > 0: if INFO = k, the leading minor of order k is not positive definite, and the factorization could not be completed.
magma_int_t magma_spotf2_tile_batched ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
float **  dA_array,
magma_int_t  lda,
magma_int_t *  info_array,
magma_int_t  gbstep,
magma_int_t  batchCount,
magma_queue_t  queue 
)

spotf2 computes the Cholesky factorization of a real symmetric positive definite matrix A.

The factorization has the form A = U**H * U, if UPLO = MagmaUpper, or A = L * L**H, if UPLO = MagmaLower, where U is an upper triangular matrix and L is lower triangular.

This is the unblocked version of the algorithm, calling Level 2 BLAS.

Parameters
[in]uplomagma_uplo_t Specifies whether the upper or lower triangular part of the symmetric matrix A is stored.
  • = MagmaUpper: Upper triangular
  • = MagmaLower: Lower triangular
[in]nINTEGER The order of the matrix A. N >= 0 and N <= 512.
[in,out]dAREAL array, dimension (LDDA,N) On entry, the symmetric matrix A. If UPLO = MagmaUpper, the leading n by n upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. If UPLO = MagmaLower, the leading n by n lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced.
On exit, if INFO = 0, the factor U or L from the Cholesky factorization A = U**H * U or A = L * L**H.
[in]lddaINTEGER The leading dimension of the array A. LDDA >= max(1,N).
[out]infoINTEGER
  • = 0: successful exit
  • < 0: if INFO = -k, the k-th argument had an illegal value
  • > 0: if INFO = k, the leading minor of order k is not positive definite, and the factorization could not be completed.