Loading...
Searching...
No Matches
hbtype1cb
Dense LA » Eigenvalues » Symmetric/Hermitian eigenvalues » 2-stage variant

## Functions

void | magma_chbtype1cb (magma_int_t n, magma_int_t nb, magmaFloatComplex *A, magma_int_t lda, magmaFloatComplex *V, magma_int_t ldv, magmaFloatComplex *TAU, magma_int_t st, magma_int_t ed, magma_int_t sweep, magma_int_t Vblksiz, magma_int_t wantz, magmaFloatComplex *work)
| magma_chbtype1cb is a kernel that will operate on a region (triangle) of data bounded by st and ed.
void | magma_dsbtype1cb (magma_int_t n, magma_int_t nb, double *A, magma_int_t lda, double *V, magma_int_t ldv, double *TAU, magma_int_t st, magma_int_t ed, magma_int_t sweep, magma_int_t Vblksiz, magma_int_t wantz, double *work)
| magma_dsbtype1cb is a kernel that will operate on a region (triangle) of data bounded by st and ed.
void | magma_ssbtype1cb (magma_int_t n, magma_int_t nb, float *A, magma_int_t lda, float *V, magma_int_t ldv, float *TAU, magma_int_t st, magma_int_t ed, magma_int_t sweep, magma_int_t Vblksiz, magma_int_t wantz, float *work)
| magma_ssbtype1cb is a kernel that will operate on a region (triangle) of data bounded by st and ed.
void | magma_zhbtype1cb (magma_int_t n, magma_int_t nb, magmaDoubleComplex *A, magma_int_t lda, magmaDoubleComplex *V, magma_int_t ldv, magmaDoubleComplex *TAU, magma_int_t st, magma_int_t ed, magma_int_t sweep, magma_int_t Vblksiz, magma_int_t wantz, magmaDoubleComplex *work)
| magma_zhbtype1cb is a kernel that will operate on a region (triangle) of data bounded by st and ed.

## Detailed Description

## Function Documentation

## magma_chbtype1cb()

void magma_chbtype1cb | ( | magma_int_t | n,
|  | magma_int_t | nb,
|  | magmaFloatComplex * | A,
|  | magma_int_t | lda,
|  | magmaFloatComplex * | V,
|  | magma_int_t | ldv,
|  | magmaFloatComplex * | TAU,
|  | magma_int_t | st,
|  | magma_int_t | ed,
|  | magma_int_t | sweep,
|  | magma_int_t | Vblksiz,
|  | magma_int_t | wantz,
|  | magmaFloatComplex * | work )

magma_chbtype1cb 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] | 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 (2*nb+1)-by-n.
  [in] | lda | The leading dimension of the matrix A. lda >= max(1,2*nb+1)
  [out] | V | magmaFloatComplex array, dimension 2*n if eigenvalue only requested or (ldv*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array.
  [in] | ldv | The leading dimension of the matrix V. ldv >= TODO.
  [out] | TAU | magmaFloatComplex 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

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

## magma_dsbtype1cb()

void magma_dsbtype1cb | ( | magma_int_t | n,
|  | magma_int_t | nb,
|  | double * | A,
|  | magma_int_t | lda,
|  | double * | V,
|  | magma_int_t | ldv,
|  | double * | TAU,
|  | magma_int_t | st,
|  | magma_int_t | ed,
|  | magma_int_t | sweep,
|  | magma_int_t | Vblksiz,
|  | magma_int_t | wantz,
|  | double * | work )

magma_dsbtype1cb 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 symmetric 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] | 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 (2*nb+1)-by-n.
  [in] | lda | The leading dimension of the matrix A. lda >= max(1,2*nb+1)
  [out] | V | double array, dimension 2*n if eigenvalue only requested or (ldv*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array.
  [in] | ldv | The leading dimension of the matrix V. ldv >= TODO.
  [out] | TAU | 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

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

## magma_ssbtype1cb()

void magma_ssbtype1cb | ( | magma_int_t | n,
|  | magma_int_t | nb,
|  | float * | A,
|  | magma_int_t | lda,
|  | float * | V,
|  | magma_int_t | ldv,
|  | float * | TAU,
|  | magma_int_t | st,
|  | magma_int_t | ed,
|  | magma_int_t | sweep,
|  | magma_int_t | Vblksiz,
|  | magma_int_t | wantz,
|  | float * | work )

magma_ssbtype1cb 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 symmetric 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] | 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 (2*nb+1)-by-n.
  [in] | lda | The leading dimension of the matrix A. lda >= max(1,2*nb+1)
  [out] | V | float array, dimension 2*n if eigenvalue only requested or (ldv*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array.
  [in] | ldv | The leading dimension of the matrix V. ldv >= TODO.
  [out] | TAU | float 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

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

## magma_zhbtype1cb()

void magma_zhbtype1cb | ( | magma_int_t | n,
|  | magma_int_t | nb,
|  | magmaDoubleComplex * | A,
|  | magma_int_t | lda,
|  | magmaDoubleComplex * | V,
|  | magma_int_t | ldv,
|  | magmaDoubleComplex * | TAU,
|  | magma_int_t | st,
|  | magma_int_t | ed,
|  | magma_int_t | sweep,
|  | magma_int_t | Vblksiz,
|  | magma_int_t | wantz,
|  | magmaDoubleComplex * | work )

magma_zhbtype1cb 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] | 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 (2*nb+1)-by-n.
  [in] | lda | The leading dimension of the matrix A. lda >= max(1,2*nb+1)
  [out] | V | magmaDoubleComplex array, dimension 2*n if eigenvalue only requested or (ldv*blkcnt*Vblksiz) if Eigenvectors requested The Householder reflectors are stored in this array.
  [in] | ldv | The leading dimension of the matrix V. ldv >= TODO.
  [out] | TAU | magmaDoubleComplex 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

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