Developer Reference

Contents

p?lacpy

Copies all or part of one two-dimensional array to another.

Syntax

void
pslacpy
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
float
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
float
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
void
pdlacpy
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
double
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
double
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
void
pclacpy
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
MKL_Complex8
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_Complex8
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
void
pzlacpy
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
MKL_Complex16
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_Complex16
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
Include Files
  • mkl_scalapack.h
Description
The
p?lacpy
function
copies all or part of a distributed matrix
A
to another distributed matrix
B
. No communication is performed,
p?lacpy
performs a local copy sub(
B
):= sub(
A
), where sub(
A
) denotes
A
(
ia
:
ia
+
m
-1,
ja
:
ja
+
n
-1)
and sub(
B
) denotes
B
(
ib
:
ib
+
m
-1,
jb
:
jb
+
n
-1)
.
Input Parameters
uplo
(global) Specifies the part of the distributed matrix sub(
A
) to be copied:
=
'U'
: Upper triangular part; the strictly lower triangular part of sub(
A
) is not referenced;
=
'L'
: Lower triangular part; the strictly upper triangular part of sub(
A
) is not referenced.
Otherwise: all of the matrix sub(
A
) is copied.
m
(global)
The number of rows in the distributed matrix sub(
A
).
(
m
0)
.
n
(global)
The number of columns in the distributed matrix sub(
A
).
(
n
0)
.
a
(local).
Pointer into the local memory to an array of size
lld_a
*
LOCc
(
ja
+
n
-1)
.
On entry, this array contains the local pieces of the distributed matrix sub(
A
).
ia
,
ja
(global) The row and column indices in the global matrix
A
indicating the first row and the first column of the matrix sub(
A
), respectively.
desca
(global and local) array of size
dlen_
. The array descriptor for the distributed matrix A.
ib
,
jb
(global) The row and column indices in the global matrix
B
indicating the first row and the first column of sub(
B
) respectively.
descb
(global and local) array of size
dlen_
. The array descriptor for the distributed matrix A.
Output Parameters
b
(local).
Pointer into the local memory to an array of size
lld_b
*
LOCc
(
jb
+
n
-1)
. This array contains on exit the local pieces of the distributed matrix sub(B) set as follows:
if
uplo
=
'U'
,
B
(
ib
+
i
-1,
jb
+
j
-1) =
A
(
ia
+
i
-1,
ja
+
j
-1), 1≤
i
j
, 1≤
j
n
;
if
uplo
=
'L'
,
B
(
ib
+
i
-1,
jb
+
j
-1) =
A
(
ia
+
i
-1,
ja
+
j
-1),
j
i
m
, 1≤
j
n
;
otherwise,
B
(
ib
+
i
-1,
jb
+
j
-1) =
A
(
ia
+
i
-1,
ja
+
j
-1), 1≤
i
m
, 1≤
j
n
.

Product and Performance Information

1

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