This section provides an overview of the subroutines in each of the areas of Parallel ESSL.
The Level 2 PBLAS include a subset of the standard set of distributed memory parallel versions of the Level 2 BLAS.
Note: |
The message passing subroutines were designed in accordance with the proposed
Level 2 PBLAS standard. (See references [14], [15], and [17].) If these
subroutines do not comply with the standard as approved, IBM will consider
updating them to do so.
The HPF subroutines were designed to be consistent with the proposals for the Fortran 90 BLAS and the Fortran 90 LAPACK. (See references [30] and [31].) If these subroutines do not comply with any eventual proposal for HPF interfaces to the PBLAS and ScaLAPACK, IBM will consider updating them to do so. If IBM updates these subroutines, the update could require modifications of the calling application program. |
Table 2. List of Level 2 PBLAS
The Level 3 PBLAS include a subset of the standard set of distributed memory parallel versions of the Level 3 BLAS.
Note: |
The message passing subroutines were designed in accordance with the proposed
Level 3 PBLAS standard. (See references [14], [15], and [17].) If these
subroutines do not comply with the standard as approved, IBM will consider
updating them to do so.
The HPF subroutines were designed to be consistent with the proposals for the Fortran 90 BLAS and the Fortran 90 LAPACK. (See references [30] and [31].) If these subroutines do not comply with any eventual proposal for HPF interfaces to the PBLAS and ScaLAPACK, IBM will consider updating them to do so. If IBM updates these subroutines, the update could require modifications of the calling application program. |
Table 3. List of Level 3 PBLAS
These subroutines consist of dense, banded, and sparse subroutines, and include a subset of the ScaLAPACK subroutines.
Note: |
The message passing dense and banded linear algebraic equations subroutines
were designed in accordance with the proposed ScaLAPACK standard. (However,
PDDTTRS does not support General Tridiagonal Matrix Transpose Solve. For
details, see PDGTTRS and PDDTTRS--General Tridiagonal Matrix Solve.) See references [10], [16], [18], [27],
and [28]. If these subroutines do not comply with the standard
as approved, IBM will consider updating them to do so.
The HPF dense and banded linear algebraic equations subroutines were designed to be consistent with the proposals for the Fortran 90 BLAS and the Fortran 90 LAPACK. (See references [30] and [31].) If these subroutines do not comply with any eventual proposal for HPF interfaces to the PBLAS and ScaLAPACK, IBM will consider updating them to do so. If IBM updates these subroutines, the update could require modifications of the calling application program. |
The dense linear algebraic equation subroutines provide
solutions to linear systems of equations for real and complex general matrices
and their transposes, and for positive definite real symmetric and complex
Hermitian matrices.
Table 4. List of Dense Linear Algebraic Equation Subroutines
Descriptive Name | Long- Precision Subroutine | Page |
---|---|---|
General Matrix Factorization |
PDGETRF PZGETRF GETRF |
PDGETRF and PZGETRF--General Matrix Factorization GETRF--General Matrix Factorization |
General Matrix Solve |
PDGETRS PZGETRS GETRS |
PDGETRS and PZGETRS--General Matrix Solve GETRS--General Matrix Solve |
Positive Definite Real Symmetric or Complex Hermitian Matrix Factorization |
PDPOTRF PZPOTRF POTRF |
PDPOTRF and PZPOTRF--Positive Definite Real Symmetric or Complex Hermitian Matrix Factorization POTRF--Positive Definite Real Symmetric or Complex Hermitian Matrix Factorization |
Positive Definite Real Symmetric or Complex Hermitian Matrix Solve |
PDPOTRS PZPOTRS POTRS |
PDPOTRS and PZPOTRS--Positive Definite Real Symmetric or Complex Hermitian Matrix Solve POTRS--Positive Definite Real Symmetric or Complex Hermitian Matrix Solve |
The banded linear algebraic equation subroutines provide
solutions to linear systems of equations for real positive definite symmetric
band matrices, real general tridiagonal matrices, diagonally-dominant real
general tridiagonal matrices, and real positive definite symmetric tridiagonal
matrices.
Table 5. List of Banded Linear Algebraic Equation Subroutines
The Fortran 90 sparse linear algebraic equation subroutines provide
solutions to linear systems of equations for a real general sparse matrix. The
sparse utility subroutines provided in Parallel ESSL must be used in
conjunction with the sparse linear algebraic equation subroutines.
Table 6. List of Fortran 90 Sparse Linear Algebraic Equation Subroutines
Descriptive Name | Long-Precision Subroutine | Page |
---|---|---|
Allocates Space for an Array Descriptor for a General Sparse Matrix | PADALL | PADALL--Allocates Space for an Array Descriptor for a General Sparse Matrix |
Allocates Space for a General Sparse Matrix | PSPALL | PSPALL--Allocates Space for a General Sparse Matrix |
Allocates Space for a Dense Vector | PGEALL | PGEALL--Allocates Space for a Dense Vector |
Inserts Local Data into a General Sparse Matrix | PSPINS | PSPINS--Inserts Local Data into a General Sparse Matrix |
Inserts Local Data into a Dense Vector | PGEINS | PGEINS--Inserts Local Data into a Dense Vector |
Assembles a General Sparse Matrix | PSPASB | PSPASB--Assembles a General Sparse Matrix |
Assembles a Dense Vector | PGEASB | PGEASB--Assembles a Dense Vector |
Preconditioner for a General Sparse Matrix | PSPGPR | PSPGPR--Preconditioner for a General Sparse Matrix |
Iterative Linear System Solver for a General Sparse Matrix | PSPGIS | PSPGIS--Iterative Linear System Solver for a General Sparse Matrix |
Deallocates Space for a Dense Vector | PGEFREE | PGEFREE--Deallocates Space for a Dense Vector |
Deallocates Space for a General Sparse Matrix | PSPFREE | PSPFREE--Deallocates Space for a General Sparse Matrix |
Deallocates Space for an Array Descriptor for a General Sparse Matrix | PADFREE | PADFREE--Deallocates Space for an Array Descriptor for a General Sparse Matrix |
The Fortran 77 sparse linear algebraic equation subroutines provide
solutions to linear systems of equations for a real general sparse matrix. The
sparse utility subroutines provided in Parallel ESSL must be used in
conjunction with the sparse linear algebraic equation subroutines.
Table 7. List of The Fortran 77 Sparse Linear Algebraic Equation Subroutines
Descriptive Name | Long-Precision Subroutine | Page |
---|---|---|
Initializes an Array Descriptor for a General Sparse Matrix | PADINIT | PADINIT--Initializes an Array Descriptor for a General Sparse Matrix |
Initializes a General Sparse Matrix | PDSPINIT | PDSPINIT--Initializes a General Sparse Matrix |
Inserts Local Data into a General Sparse Matrix | PDSPINS | PDSPINS--Inserts Local Data into a General Sparse Matrix |
Inserts Local Data into a Dense Vector | PDGEINS | PDGEINS--Inserts Local Data into a Dense Vector |
Assembles a General Sparse Matrix | PDSPASB | PDSPASB--Assembles a General Sparse Matrix |
Assembles a Dense Vector | PDGEASB | PDGEASB--Assembles a Dense Vector |
Preconditioner for a General Sparse Matrix | PDSPGPR | PDSPGPR--Preconditioner for a General Sparse Matrix |
Iterative Linear System Solver for a General Sparse Matrix | PDSPGIS | PDSPGIS--Iterative Linear System Solver for a General Sparse Matrix |
The eigensystem analysis and singular value analysis subroutines include a subset of the ScaLAPACK subroutines. See references [19] and [20].
Note: |
The message passing subroutines were designed in accordance with the proposed
ScaLAPACK standard. If these subroutines do not comply with the standard as
approved, IBM will consider updating them to do so.
The HPF subroutines were designed to be consistent with the proposals for the Fortran 90 BLAS and the Fortran 90 LAPACK. (See references [30] and [31].) If these subroutines do not comply with any eventual proposal for HPF interfaces to the PBLAS and ScaLAPACK, IBM will consider updating them to do so. If IBM updates these subroutines, the update could require modifications of the calling application program. |
Table 8. List of Eigensystem Analysis and Singular Value Analysis Subroutines
Descriptive Name | Long- Precision Subroutine | Page |
---|---|---|
Selected Eigenvalues and, Optionally, the Eigenvectors of a Real Symmetric Matrix |
PDSYEVX SYEVX |
PDSYEVX--Selected Eigenvalues and, Optionally, the Eigenvectors of a Real Symmetric Matrix SYEVX--Selected Eigenvalues and, Optionally, the Eigenvectors of a Real Symmetric Matrix |
Reduce a Real Symmetric Matrix to Tridiagonal Form |
PDSYTRD SYTRD |
PDSYTRD--Reduce a Real Symmetric Matrix to Tridiagonal Form SYTRD--Reduce a Real Symmetric Matrix to Tridiagonal Form |
Reduce a General Matrix to Upper Hessenberg Form |
PDGEHRD GEHRD |
PDGEHRD--Reduce a General Matrix to Upper Hessenberg Form GEHRD--Reduce a General Matrix to Upper Hessenberg Form |
Reduce a General Matrix to Bidiagonal Form |
PDGEBRD GEBRD |
PDGEBRD--Reduce a General Matrix to Bidiagonal Form GEBRD--Reduce a General Matrix to Bidiagonal Form |
The Fourier transform subroutines perform mixed-radix
transforms in two and three dimensions. See references [1] and [3].
Table 9. List of Fourier Transform Subroutines
The random number generation subroutine generates uniformly distributed
random numbers.
Table 10. List of Random Number Generation Subroutines
Descriptive Name | Long- Precision Subroutine | Page |
---|---|---|
Uniform Random Number Generator |
PDURNG URNG |
PDURNG--Uniform Random Number Generator URNG--Uniform Random Number Generator |
The message passing utility subroutines perform general
service functions that support Parallel ESSL, rather than mathematical
computations.
Table 11. List of Utility Subroutines
Descriptive Name | Integer Subroutine | Page |
---|---|---|
Determine the Level of Parallel ESSL Installed on Your System | IPESSL | IPESSL--Determine the Level of Parallel ESSL Installed on Your System |
Compute the Number of Rows or Columns of a Block-Cyclically Distributed Matrix Contained in a Process | NUMROC | NUMROC--Compute the Number of Rows or Columns of a Block-Cyclically Distributed Matrix Contained in a Process |