Developer Reference

  • 2020.2
  • 07/15/2020
  • Public Content
Contents

p?lared1d

Redistributes an array assuming that the input array,
bycol
, is distributed across rows and that all process columns contain the same copy of
bycol
.

Syntax

call pslared1d
(
n
,
ia
,
ja
,
desc
,
bycol
,
byall
,
work
,
lwork
)
call pdlared1d
(
n
,
ia
,
ja
,
desc
,
bycol
,
byall
,
work
,
lwork
)
Description
The
p?lared1d
routine
redistributes a 1D array. It assumes that the input array
bycol
is distributed across rows and that all process column contain the same copy of
bycol
. The output array
byall
is identical on all processes and contains the entire array.
Input Parameters
np
= Number of local rows in
bycol
()
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 9. A 2D array descriptor, which describes
bycol
.
bycol
(local).
REAL
for
pslared1d
DOUBLE PRECISION
for
pdlared1d
COMPLEX
for
pclared1d
COMPLEX*16
for
pzlared1d
.
Distributed block cyclic array of global size
n
and of local size
np
.
bycol
is distributed across the process rows. All process columns are assumed to contain the same value.
work
(local).
REAL
for
pslared1d
DOUBLE PRECISION
for
pdlared1d
COMPLEX
for
pclared1d
COMPLEX*16
for
pzlared1d
.
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_
)
, 0, 0,
npcol
)
.
Output Parameters
byall
(global).
REAL
for
pslared1d
DOUBLE PRECISION
for
pdlared1d
COMPLEX
for
pclared1d
COMPLEX*16
for
pzlared1d
.
Global size
n
, local size
n
.
byall
is exactly duplicated on all processes. It contains the same values as
bycol
, but it is replicated across all processes rather than being distributed.

Product and Performance Information

1