MAGMA  2.0.0
Matrix Algebra for GPU and Multicore Architectures

Functions

magma_int_t magma_dlaqps (magma_int_t m, magma_int_t n, magma_int_t offset, magma_int_t nb, magma_int_t *kb, double *A, magma_int_t lda, magmaDouble_ptr dA, magma_int_t ldda, magma_int_t *jpvt, double *tau, double *vn1, double *vn2, double *auxv, double *F, magma_int_t ldf, magmaDouble_ptr dF, magma_int_t lddf)
 DLAQPS computes a step of QR factorization with column pivoting of a real M-by-N matrix A by using Blas-3. More...
 
magma_int_t magma_dlaqps_gpu (magma_int_t m, magma_int_t n, magma_int_t offset, magma_int_t nb, magma_int_t *kb, magmaDouble_ptr dA, magma_int_t ldda, magma_int_t *jpvt, double *tau, double *vn1, double *vn2, magmaDouble_ptr dauxv, magmaDouble_ptr dF, magma_int_t lddf)
 

Detailed Description

Function Documentation

magma_int_t magma_dlaqps ( magma_int_t  m,
magma_int_t  n,
magma_int_t  offset,
magma_int_t  nb,
magma_int_t *  kb,
double *  A,
magma_int_t  lda,
magmaDouble_ptr  dA,
magma_int_t  ldda,
magma_int_t *  jpvt,
double *  tau,
double *  vn1,
double *  vn2,
double *  auxv,
double *  F,
magma_int_t  ldf,
magmaDouble_ptr  dF,
magma_int_t  lddf 
)

DLAQPS computes a step of QR factorization with column pivoting of a real M-by-N matrix A by using Blas-3.

It tries to factorize NB columns from A starting from the row OFFSET+1, and updates all of the matrix with Blas-3 xGEMM.

In some cases, due to catastrophic cancellations, it cannot factorize NB columns. Hence, the actual number of factorized columns is returned in KB.

Block A(1:OFFSET,1:N) is accordingly pivoted, but not factorized.

Parameters
[in]mINTEGER The number of rows of the matrix A. M >= 0.
[in]nINTEGER The number of columns of the matrix A. N >= 0
[in]offsetINTEGER The number of rows of A that have been factorized in previous steps.
[in]nbINTEGER The number of columns to factorize.
[out]kbINTEGER The number of columns actually factorized.
[in,out]ADOUBLE PRECISION array, dimension (LDA,N) On entry, the M-by-N matrix A. On exit, block A(OFFSET+1:M,1:KB) is the triangular factor obtained and block A(1:OFFSET,1:N) has been accordingly pivoted, but no factorized. The rest of the matrix, block A(OFFSET+1:M,KB+1:N) has been updated.
[in]ldaINTEGER The leading dimension of the array A. LDA >= max(1,M).
[in,out]jpvtINTEGER array, dimension (N) JPVT(I) = K <==> Column K of the full matrix A has been permuted into position I in AP.
[out]tauDOUBLE PRECISION array, dimension (KB) The scalar factors of the elementary reflectors.
[in,out]vn1DOUBLE PRECISION array, dimension (N) The vector with the partial column norms.
[in,out]vn2DOUBLE PRECISION array, dimension (N) The vector with the exact column norms.
[in,out]auxvDOUBLE PRECISION array, dimension (NB) Auxiliar vector.
[in,out]FDOUBLE PRECISION array, dimension (LDF,NB) Matrix F' = L*Y'*A.
[in]ldfINTEGER The leading dimension of the array F. LDF >= max(1,N).
magma_int_t magma_dlaqps_gpu ( magma_int_t  m,
magma_int_t  n,
magma_int_t  offset,
magma_int_t  nb,
magma_int_t *  kb,
magmaDouble_ptr  dA,
magma_int_t  ldda,
magma_int_t *  jpvt,
double *  tau,
double *  vn1,
double *  vn2,
magmaDouble_ptr  dauxv,
magmaDouble_ptr  dF,
magma_int_t  lddf 
)
Deprecated:

DLAQPS computes a step of QR factorization with column pivoting of a real M-by-N matrix A by using Blas-3. It tries to factorize NB columns from A starting from the row OFFSET+1, and updates all of the matrix with Blas-3 xGEMM.

In some cases, due to catastrophic cancellations, it cannot factorize NB columns. Hence, the actual number of factorized columns is returned in KB.

Block A(1:OFFSET,1:N) is accordingly pivoted, but not factorized.

Parameters
[in]mINTEGER The number of rows of the matrix A. M >= 0.
[in]nINTEGER The number of columns of the matrix A. N >= 0
[in]offsetINTEGER The number of rows of A that have been factorized in previous steps.
[in]nbINTEGER The number of columns to factorize.
[out]kbINTEGER The number of columns actually factorized.
[in,out]dADOUBLE PRECISION array, dimension (LDDA,N), on the GPU. On entry, the M-by-N matrix A. On exit, block A(OFFSET+1:M,1:KB) is the triangular factor obtained and block A(1:OFFSET,1:N) has been accordingly pivoted, but no factorized. The rest of the matrix, block A(OFFSET+1:M,KB+1:N) has been updated.
[in]lddaINTEGER The leading dimension of the array A. LDDA >= max(1,M).
[in,out]jpvtINTEGER array, dimension (N) JPVT(I) = K <==> Column K of the full matrix A has been permuted into position I in AP.
[out]tauDOUBLE PRECISION array, dimension (KB) The scalar factors of the elementary reflectors.
[in,out]vn1DOUBLE PRECISION array, dimension (N) The vector with the partial column norms.
[in,out]vn2DOUBLE PRECISION array, dimension (N) The vector with the exact column norms.
[in,out]dauxvDOUBLE PRECISION array, dimension (NB), on the GPU Auxiliary vector.
[in,out]dFDOUBLE PRECISION array, dimension (LDDF,NB), on the GPU Matrix F' = L*Y'*A.
[in]lddfINTEGER The leading dimension of the array F. LDDF >= max(1,N).