PLASMA
2.8.0
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
|
void CORE_zgbtype3cb | ( | PLASMA_enum | uplo, |
int | N, | ||
int | NB, | ||
PLASMA_Complex64_t * | A, | ||
int | LDA, | ||
PLASMA_Complex64_t * | VQ, | ||
PLASMA_Complex64_t * | TAUQ, | ||
PLASMA_Complex64_t * | VP, | ||
PLASMA_Complex64_t * | TAUP, | ||
int | st, | ||
int | ed, | ||
int | sweep, | ||
int | Vblksiz, | ||
int | WANTZ, | ||
PLASMA_Complex64_t * | WORK | ||
) |
CORE_zgbtype3cb is a kernel that will operate on a region (triangle) of data bounded by st and ed. This kernel apply a left+right update on the hermitian triangle. Note that this kernel is very similar to type1 but does not do an elimination.
All detail are available on technical report or SC11 paper. Azzam Haidar, Hatem Ltaief, and Jack Dongarra. 2011. Parallel reduction to condensed forms for symmetric eigenvalue problems using aggregated fine-grained and memory-aware kernels. In Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC '11). ACM, New York, NY, USA, , Article 8 , 11 pages. http://doi.acm.org/10.1145/2063384.2063394
[in] | uplo | = PlasmaUpper: Upper triangle of A is stored; = PlasmaLower: Lower triangle of A is stored. |
[in] | N | The order of the matrix A. |
[in] | NB | The size of the band. |
[in,out] | A | A pointer to the matrix A of size (3*NB+1)-by-N. |
[in] | LDA | The leading dimension of the matrix A. LDA >= max(1,3*NB+1) |
[in] | VP | TODO: Check and fix doc PLASMA_Complex64_t array, dimension N if eigenvalue only requested or (LDV*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array. |
[in] | TAUP | TODO: Check and fix doc PLASMA_Complex64_t array, dimension (N). The scalar factors of the Householder reflectors are stored in this array. |
[in] | VQ | TODO: Check and fix doc PLASMA_Complex64_t array, dimension N if eigenvalue only requested or (LDV*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array. |
[in] | TAUQ | TODO: Check and fix doc PLASMA_Complex64_t array, dimension (N). The scalar factors of the Householder reflectors are stored in this array. |
[in] | st | A pointer to the start index where this kernel will operate. |
[in] | ed | A pointer to the end index where this kernel will operate. |
[in] | sweep | The sweep number that is eliminated. it serve to calculate the pointer to the position where to store the Vs and Ts. |
[in] | Vblksiz | constant which correspond to the blocking used when applying the Vs. it serve to calculate the pointer to the position where to store the Vs and Ts. |
[in] | WANTZ | constant which indicate if Eigenvalue are requested or both Eigenvalue/Eigenvectors. |
[in] | WORK | Workspace of size nb. |
PLASMA_SUCCESS | successful exit |
<0 | if -i, the i-th argument had an illegal value |