Developer Reference for Intel® oneAPI Math Kernel Library for C
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
voidpslared2d ( MKL_INT*n , MKL_INT*ia , MKL_INT*ja , MKL_INT*desc , float*byrow , float*byall , float*work , MKL_INT*lwork );
voidpdlared2d ( MKL_INT*n , MKL_INT*ia , MKL_INT*ja , MKL_INT*desc , double*byrow , double*byall , double*work , MKL_INT*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)
The number of elements to be redistributed. n≥ 0 .
ia , ja
(global) ia , ja must be equal to 1.
desc
(local) 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) The size of the work array. lwork ≥ numroc(n, desc(nb_)desc[nb_], 0, 0, npcol) .
Output Parameters
byall
(global).
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.