Developer Reference

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

p?lasmsub

Looks for a small subdiagonal element from the bottom of the matrix that it can safely set to zero.

Syntax

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
);
Include Files
  • mkl_scalapack.h
Description
The
p?lasmsub
function
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.
Input Parameters
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
nprow
x
npcol
is the logical grid size.
Output Parameters
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
.
Application Notes
This routine parallelizes the code from
?lahqr
that looks for a single small subdiagonal element.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.