Visible to Intel only — GUID: GUID-E936F8B0-9489-464B-A638-62998627FBEA
Visible to Intel only — GUID: GUID-E936F8B0-9489-464B-A638-62998627FBEA
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® oneAPI Math Kernel Library (oneMKL) 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-2k 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. |
Product and Performance Information |
---|
Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex. Notice revision #20201201 |