Developer Reference

Contents

PBLAS Routine Naming Conventions

The naming convention for PBLAS routines is similar to that used for BLAS routines (see Routine Naming Conventions ). A general rule is that each routine name in PBLAS, which has a BLAS equivalent, is simply the BLAS name prefixed by initial letter
p
that stands for "parallel".
The
Intel® MKL
PBLAS routine names have the following structure:
p <
character
> <
name
> <
mod
> ( )
The <
character
> field indicates the Fortran data type:
s
real, single precision
c
complex, single precision
d
real, double precision
z
complex, double precision
i
integer
Some routines and functions can have combined character codes, such as
sc
or
dz
.
For example, the function
pscasum
uses a complex input array and returns a real value.
The
<name>
field, in PBLAS level 1, indicates the operation type. For example, the PBLAS level 1 routines
p?dot
,
p?swap
,
p?copy
compute a vector dot product, vector swap, and a copy vector, respectively.
In PBLAS level 2 and 3,
<name>
reflects the matrix argument type:
ge
general matrix
sy
symmetric matrix
he
Hermitian matrix
tr
triangular matrix
In PBLAS level 3, the
<name>
=
tran
indicates the transposition of the matrix.
The
<mod>
field, if present, provides additional details of the operation. The PBLAS level 1 names can have the following characters in the
<mod>
field:
c
conjugated vector
u
unconjugated vector
The PBLAS level 2 names can have the following additional characters in the
<mod>
field:
mv
matrix-vector product
sv
solving a system of linear equations with matrix-vector operations
r
rank-1 update of a matrix
r2
rank-2 update of a matrix.
The PBLAS level 3 names can have the following additional characters in the
<mod>
field:
mm
matrix-matrix product
sm
solving a system of linear equations with matrix-matrix operations
rk
rank-
k
update of a matrix
r2k
rank-2
k
update of a matrix.
The examples below show how to interpret PBLAS routine names:
pddot
<p> <d> <dot>
: double-precision real distributed vector-vector dot product
pcdotc
<p> <c> <dot> <c>
: complex distributed vector-vector dot product, conjugated
pscasum
<p> <sc> <asum>
: sum of magnitudes of distributed vector elements, single precision real output and single precision complex input
pcdotu
<p> <c> <dot> <u>
: distributed vector-vector dot product, unconjugated, complex
psgemv
<p> <s> <ge> <mv>
: distributed matrix-vector product, general matrix, single precision
pztrmm
<p> <z> <tr> <mm>
: distributed matrix-matrix product, triangular matrix, double-precision complex.
Optimization Notice
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804
This notice covers the following instruction sets: SSE2, SSE4.2, AVX2, AVX-512.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804