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

Functions

magma_int_t magma_dgessm_gpu (magma_order_t order, magma_int_t m, magma_int_t n, magma_int_t k, magma_int_t ib, magma_int_t *ipiv, magmaDouble_ptr dL1, magma_int_t lddl1, magmaDouble_ptr dL, magma_int_t lddl, magmaDouble_ptr dA, magma_int_t ldda, magma_int_t *info)
 DGESSM applies the factors L computed by DGETRF_INCPIV to a real M-by-N tile A. More...
 
magma_int_t magma_dssssm_gpu (magma_order_t order, magma_int_t m1, magma_int_t n1, magma_int_t m2, magma_int_t n2, magma_int_t k, magma_int_t ib, magmaDouble_ptr dA1, magma_int_t ldda1, magmaDouble_ptr dA2, magma_int_t ldda2, magmaDouble_ptr dL1, magma_int_t lddl1, magmaDouble_ptr dL2, magma_int_t lddl2, magma_int_t *ipiv, magma_int_t *info)
 DSSSSM applies the LU factorization update from a real matrix formed by a lower triangular IB-by-K tile L1 on top of a M2-by-K tile L2 to a second real matrix formed by a M1-by-N1 tile A1 on top of a M2-by-N2 tile A2 (N1 == N2). More...
 

Detailed Description

Function Documentation

magma_int_t magma_dgessm_gpu ( magma_order_t  order,
magma_int_t  m,
magma_int_t  n,
magma_int_t  k,
magma_int_t  ib,
magma_int_t *  ipiv,
magmaDouble_ptr  dL1,
magma_int_t  lddl1,
magmaDouble_ptr  dL,
magma_int_t  lddl,
magmaDouble_ptr  dA,
magma_int_t  ldda,
magma_int_t *  info 
)

DGESSM applies the factors L computed by DGETRF_INCPIV to a real M-by-N tile A.

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]kINTEGER The number of columns of the matrix L. K >= 0.
[in]ibINTEGER The inner-blocking size. IB >= 0.
[in]ipivINTEGER array on the cpu. The pivot indices array of size K as returned by DGETRF_INCPIV.
[in]dL1DOUBLE_PRECISION array, dimension(LDDL1, N) The IB-by-K matrix in which is stored L^(-1) as returned by GETRF_INCPIV
[in]lddl1INTEGER The leading dimension of the array L1. LDDL1 >= max(1,2*IB).
[in]dLDOUBLE_PRECISION array, dimension(LDDL, N) The M-by-K lower triangular tile on the gpu.
[in]lddlINTEGER The leading dimension of the array L. LDDL >= max(1,M).
[in,out]dADOUBLE_PRECISION array, dimension (LDDA, N) On entry, the M-by-N tile A on the gpu. On exit, updated by the application of L on the gpu.
[in]lddaINTEGER The leading dimension of the array A. LDDA >= max(1,M).
magma_int_t magma_dssssm_gpu ( magma_order_t  order,
magma_int_t  m1,
magma_int_t  n1,
magma_int_t  m2,
magma_int_t  n2,
magma_int_t  k,
magma_int_t  ib,
magmaDouble_ptr  dA1,
magma_int_t  ldda1,
magmaDouble_ptr  dA2,
magma_int_t  ldda2,
magmaDouble_ptr  dL1,
magma_int_t  lddl1,
magmaDouble_ptr  dL2,
magma_int_t  lddl2,
magma_int_t *  ipiv,
magma_int_t *  info 
)

DSSSSM applies the LU factorization update from a real matrix formed by a lower triangular IB-by-K tile L1 on top of a M2-by-K tile L2 to a second real matrix formed by a M1-by-N1 tile A1 on top of a M2-by-N2 tile A2 (N1 == N2).

This is the right-looking Level 2.5 BLAS version of the algorithm.

Parameters
[in]m1INTEGER The number of rows of the matrix A1. M1 >= 0.
[in]n1INTEGER The number of columns of the matrix A1. N1 >= 0.
[in]m2INTEGER The number of rows of the matrix A2. M2 >= 0.
[in]n2INTEGER The number of columns of the matrix A2. N2 >= 0.
[in]kINTEGER The number of columns of the matrix L1 and L2. K >= 0.
[in]ibINTEGER The inner-blocking size. IB >= 0.
[in,out]dA1DOUBLE_PRECISION array, dimension(LDDA1, N), on gpu. On entry, the M1-by-N1 tile dA1. On exit, dA1 is updated by the application of dL (dL1 dL2).
[in]ldda1INTEGER The leading dimension of the array dA1. LDDA1 >= max(1,M1).
[in,out]dA2DOUBLE_PRECISION array, dimension(LDDA2, N), on gpu. On entry, the M2-by-N2 tile dA2. On exit, dA2 is updated by the application of dL (dL1 dL2).
[in]ldda2INTEGER The leading dimension of the array dA2. LDDA2 >= max(1,M2).
[in]dL1DOUBLE_PRECISION array, dimension(LDDL1, K), on gpu. The inverse of the IB-by-K lower triangular tile as returned by DTSTRF.
[in]lddl1INTEGER The leading dimension of the array L1. LDDL1 >= max(1,2*IB).
[in]dL2DOUBLE_PRECISION array, dimension(LDDL2, K) The M2-by-K tile as returned by DTSTRF.
[in]lddl2INTEGER The leading dimension of the array L2. LDDL2 >= max(1,M2).
[in]ipivINTEGER array on the cpu. The pivot indices array of size K as returned by DTSTRF