Visible to Intel only — GUID: GUID-DF958E0C-EAF5-4424-B082-A4406CE6251B
Visible to Intel only — GUID: GUID-DF958E0C-EAF5-4424-B082-A4406CE6251B
p?lasmsub
Looks for a small subdiagonal element from the bottom of the matrix that it can safely set to zero.
void pslasmsub (const float *a, const MKL_INT *desca, const MKL_INT *i, const MKL_INT *l, MKL_INT *k, const float *smlnum, float *buf, const MKL_INT *lwork );
void pdlasmsub (const double *a, const MKL_INT *desca, const MKL_INT *i, const MKL_INT *l, MKL_INT *k, const double *smlnum, double *buf, const MKL_INT *lwork );
void pclasmsub (const MKL_Complex8 *a , const MKL_INT *desca , const MKL_INT *i , const MKL_INT *l , MKL_INT *k , const float *smlnum , MKL_Complex8 *buf , const MKL_INT *lwork );
void pzlasmsub (const MKL_Complex16 *a , const MKL_INT *desca , const MKL_INT *i , const MKL_INT *l , MKL_INT *k , const double *smlnum , MKL_Complex16 *buf , const MKL_INT *lwork );
- mkl_scalapack.h
The p?lasmsubfunction looks for a small subdiagonal element from the bottom of the matrix that it can safely set to zero. This function performs a global maximum and must be called by all processes.
- a
-
(local)
Array of size lld_a*LOCc(n_a).
On entry, the Hessenberg matrix whose tridiagonal part is being scanned. Unchanged on exit.
- desca
-
(global and local)
Array of size dlen_. The array descriptor for the distributed matrix A.
- i
-
(global)
The global location of the bottom of the unreduced submatrix of A. Unchanged on exit.
- l
-
(global)
The global location of the top of the unreduced submatrix of A.
Unchanged on exit.
- smlnum
-
(global)
On entry, a "small number" for the given matrix. Unchanged on exit. The machine-dependent constants for the stopping criterion.
- lwork
-
(local)
This must be at least 2*ceil(ceil((i-l)/mb_a )/ lcm(nprow,npcol)). Here lcm is least common multiple and nprowxnpcol is the logical grid size.
- k
-
(global)
On exit, this yields the bottom portion of the unreduced submatrix. This will satisfy: l ≤ k ≤ i-1.
- buf
-
(local).
Array of size lwork.
This routine parallelizes the code from ?lahqr that looks for a single small subdiagonal element.