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

Functions

magma_int_t magma_slaqps (magma_int_t m, magma_int_t n, magma_int_t offset, magma_int_t nb, magma_int_t *kb, float *A, magma_int_t lda, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *jpvt, float *tau, float *vn1, float *vn2, float *auxv, float *F, magma_int_t ldf, magmaFloat_ptr dF, magma_int_t lddf)
 SLAQPS 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_slaqps_gpu (magma_int_t m, magma_int_t n, magma_int_t offset, magma_int_t nb, magma_int_t *kb, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *jpvt, float *tau, float *vn1, float *vn2, magmaFloat_ptr dauxv, magmaFloat_ptr dF, magma_int_t lddf)
 
magma_int_t magma_slaqps2_gpu (magma_int_t m, magma_int_t n, magma_int_t offset, magma_int_t nb, magma_int_t *kb, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *jpvt, magmaFloat_ptr dtau, magmaFloat_ptr dvn1, magmaFloat_ptr dvn2, magmaFloat_ptr dauxv, magmaFloat_ptr dF, magma_int_t lddf, magmaFloat_ptr dlsticcs, magma_queue_t queue)
 SLAQPS computes a step of QR factorization with column pivoting of a real M-by-N matrix A by using Blas-3. More...
 

Detailed Description

Function Documentation

magma_int_t magma_slaqps ( magma_int_t  m,
magma_int_t  n,
magma_int_t  offset,
magma_int_t  nb,
magma_int_t *  kb,
float *  A,
magma_int_t  lda,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  jpvt,
float *  tau,
float *  vn1,
float *  vn2,
float *  auxv,
float *  F,
magma_int_t  ldf,
magmaFloat_ptr  dF,
magma_int_t  lddf 
)

SLAQPS 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]AREAL 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]tauREAL array, dimension (KB) The scalar factors of the elementary reflectors.
[in,out]vn1REAL array, dimension (N) The vector with the partial column norms.
[in,out]vn2REAL array, dimension (N) The vector with the exact column norms.
[in,out]auxvREAL array, dimension (NB) Auxiliar vector.
[in,out]FREAL 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_slaqps2_gpu ( magma_int_t  m,
magma_int_t  n,
magma_int_t  offset,
magma_int_t  nb,
magma_int_t *  kb,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  jpvt,
magmaFloat_ptr  dtau,
magmaFloat_ptr  dvn1,
magmaFloat_ptr  dvn2,
magmaFloat_ptr  dauxv,
magmaFloat_ptr  dF,
magma_int_t  lddf,
magmaFloat_ptr  dlsticcs,
magma_queue_t  queue 
)

SLAQPS 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]dAREAL array, dimension (LDDA,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]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]dtauREAL array, dimension (KB) The scalar factors of the elementary reflectors.
[in,out]dvn1REAL array, dimension (N) The vector with the partial column norms.
[in,out]dvn2REAL array, dimension (N) The vector with the exact column norms.
[in,out]dauxvREAL array, dimension (NB) Auxiliar vector.
[in,out]dFREAL array, dimension (LDDF,NB) Matrix F**H = L * Y**H * A.
[in]lddfINTEGER The leading dimension of the array F. LDDF >= max(1,N).
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_slaqps_gpu ( magma_int_t  m,
magma_int_t  n,
magma_int_t  offset,
magma_int_t  nb,
magma_int_t *  kb,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  jpvt,
float *  tau,
float *  vn1,
float *  vn2,
magmaFloat_ptr  dauxv,
magmaFloat_ptr  dF,
magma_int_t  lddf 
)
Deprecated:

SLAQPS 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]dAREAL 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]tauREAL array, dimension (KB) The scalar factors of the elementary reflectors.
[in,out]vn1REAL array, dimension (N) The vector with the partial column norms.
[in,out]vn2REAL array, dimension (N) The vector with the exact column norms.
[in,out]dauxvREAL array, dimension (NB), on the GPU Auxiliary vector.
[in,out]dFREAL 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).