PLASMA 2.8.0 PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures

- Main Page
- Modules
- Data Types List

void CORE_dgbtype1cb | ( | PLASMA_enum | uplo,
|  | int | N,
|  | int | NB,
|  | double * | A,
|  | int | LDA,
|  | double * | VQ,
|  | double * | TAUQ,
|  | double * | VP,
|  | double * | TAUP,
|  | int | st,
|  | int | ed,
|  | int | sweep,
|  | int | Vblksiz,
|  | int | WANTZ,
|  | double * | WORK
| ) |  |

CORE_dgbtype1cb is a kernel that will operate on a region (triangle) of data bounded by st and ed. This kernel eliminate a column by an column-wise annihiliation, then it apply a left+right update on the hermitian triangle. Note that the column to be eliminated is located at st-1.

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

Parameters

  [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)
  [out] | VP | TODO: Check and fix doc double array, dimension N if eigenvalue only requested or (LDV*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array.
  [out] | TAUP | TODO: Check and fix doc double array, dimension (N). The scalar factors of the Householder reflectors are stored in this array.
  [out] | VQ | TODO: Check and fix doc double array, dimension N if eigenvalue only requested or (LDV*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array.
  [out] | TAUQ | TODO: Check and fix doc double 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.

Returns

Return values

  PLASMA_SUCCESS | successful exit
  <0 | if -i, the i-th argument had an illegal value