Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
p?lared2d
Redistributes an array assuming that the input array byrow is distributed across columns and that all process rows contain the same copy of byrow .
Syntax
call pslared2d ( n , ia , ja , desc , byrow , byall , work , lwork )
call pdlared2d ( n , ia , ja , desc , byrow , byall , work , lwork )
Include Files
mkl_scalapack.h
Description
pslared2d pdlared2d The p?lared2d routine function redistributes a 1D array. It assumes that the input array byrow is distributed across columns and that all process rows contain the same copy of byrow . The output array byall will be identical on all processes and will contain the entire array.
Input Parameters
np = Number of local rows in byrow ()
n
(global) INTEGER .
The number of elements to be redistributed. n≥ 0 .
ia , ja
(global) INTEGER . ia , ja must be equal to 1.
desc
(local) INTEGER array of size dlen_ . A 2D array descriptor, which describes byrow .
- byrow
-
(local). REAL for pslared2d DOUBLE PRECISION for pdlared2d COMPLEX for pclared2d COMPLEX*16 for pzlared2d .
- work
-
(local). REAL for pslared2d DOUBLE PRECISION for pdlared2d COMPLEX for pclared2d COMPLEX*16 for pzlared2d . size lwork . Used to hold the buffers sent from one process to another.
lwork
(local) INTEGER . The size of the work array. lwork ≥ numroc(n, desc(nb_)desc[nb_], 0, 0, npcol) .
Output Parameters
byall
(global). REAL for pslared2d
DOUBLE PRECISION for pdlared2d COMPLEX for pclared2d COMPLEX*16 for pzlared2d . Global size n , local size n . byall is exactly duplicated on all processes. It contains the same values as byrow , but it is replicated across all processes rather than being distributed.