Next: Application structure
Up: General overview
Previous: Basic Nomenclature
Contents
The PSBLAS library consists of various classes of subroutines:
- Computational routines
- comprising:
- Sparse matrix by dense matrix product;
- Sparse triangular
systems solution for block diagonal matrices;
- Vector and matrix norms;
- Dense matrix sums;
- Dot products.
- Communication routines
- handling halo and overlap
communications;
- Data management and auxiliary routines
- including:
- Parallel environment management
- Communication descriptors allocation;
- Dense and sparse matrix allocation;
- Dense and sparse matrix build and update;
- Sparse matrix and data distribution preprocessing.
- Preconditioner routines
-
- Iterative methods
- a subset of Krylov subspace iterative
methods
The following naming scheme has been adopted for all the symbols
internally defined in the PSBLAS software package:
- all symbols (i.e. subroutine names, data types...) are
prefixed by
psb_
- all data type names are suffixed by
_type
- all constants are suffixed by
_
- all top-level subroutine names follow the rule
psb_xxname
where
xx
can be either:
ge
: the routine is related to dense data,
sp
: the routine is related to sparse data,
cd
: the routine is related to communication descriptor
(see 3).
For example the psb_geins
, psb_spins
and
psb_cdins
perform the same action (see 6) on
dense matrices, sparse matrices and communication descriptors
respectively.
Interface overloading allows the usage of the same subroutine
names for both real and complex data.
In the description of the subroutines, arguments or argument entries
are classified as:
- global
- For input arguments, the value must be the same on all processes
participating in the subroutine call; for output arguments the value
is guaranteed to be the same.
- local
- Each process has its own value(s) independently.
To finish our general description, we define a version string with the
constant
whose current value is 3.0.0
Next: Application structure
Up: General overview
Previous: Basic Nomenclature
Contents