mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-17 03:12:15 +00:00
Document DESC%CNV method and MOLD arguments to CDASB and PREC%BUILD
This commit is contained in:
+40
-13
@@ -105,12 +105,13 @@ processes with which it is necessary to communicate:
|
||||
\item Number of points to be sent;
|
||||
\item Indices of points to be sent;
|
||||
\end{enumerate}
|
||||
The list may contain an arbitrary number of groups; its end is marked
|
||||
by a -1.\\
|
||||
Specified as: an allocatable integer array of rank one.
|
||||
% The list may contain an arbitrary number of groups; its end is marked
|
||||
% by a -1.\\
|
||||
Specified as: a vector of integer type, see~\ref{sec:vecttype}.
|
||||
\item[{\bf ext\_index}] A list of element indices to be exchanged to
|
||||
implement the mapping between a base descriptor and a descriptor
|
||||
with overlap.
|
||||
with overlap. \\
|
||||
Specified as: a vector of integer type, see~\ref{sec:vecttype}.
|
||||
\item [{\bf ovrlap\_index}] A list of the overlap elements for the
|
||||
current process, organized in groups like the previous vector:
|
||||
\begin{enumerate}
|
||||
@@ -120,12 +121,12 @@ current process, organized in groups like the previous vector:
|
||||
\item Number of points to be sent;
|
||||
\item Indices of points to be sent;
|
||||
\end{enumerate}
|
||||
The list may contain an arbitrary number of groups; its end is marked
|
||||
by a -1.\\
|
||||
Specified as: an allocatable integer array of rank one.
|
||||
% The list may contain an arbitrary number of groups; its end is marked
|
||||
% by a -1.\\
|
||||
Specified as: a vector of integer type, see~\ref{sec:vecttype}.
|
||||
\item [{\bf ovr\_mst\_idx}] A list to retrieve the value of each
|
||||
overlap element from the respective master process.\\
|
||||
Specified as: an allocatable integer array of rank one.
|
||||
Specified as: a vector of integer type, see~\ref{sec:vecttype}.
|
||||
\item [{\bf ovrlap\_elem}] For all overlap points belonging to th
|
||||
ecurrent process:
|
||||
\begin{enumerate}
|
||||
@@ -146,11 +147,11 @@ as follows:
|
||||
\begin{verbatim}
|
||||
type psb_desc_type
|
||||
class(psb_indx_map), allocatable :: indxmap
|
||||
integer, allocatable :: halo_index(:)
|
||||
integer, allocatable :: ext_index(:)
|
||||
integer, allocatable :: ovrlap_index(:)
|
||||
type(psb_i_vect_type) :: v_halo_index
|
||||
type(psb_i_vect_type) :: v_ext_index
|
||||
type(psb_i_vect_type) :: v_ovrlap_index
|
||||
type(psb_i_vect_type) :: v_ovr_mst_idx
|
||||
integer, allocatable :: ovrlap_elem(:,:)
|
||||
integer, allocatable :: ovr_mst_idx(:)
|
||||
integer, allocatable :: bnd_elem(:)
|
||||
end type psb_desc_type
|
||||
\end{verbatim}
|
||||
@@ -164,7 +165,6 @@ end type psb_desc_type
|
||||
\caption{\label{fig:desctype}The PSBLAS defined data type that
|
||||
contains the communication descriptor.}
|
||||
\end{figure}
|
||||
|
||||
A communication descriptor associated with a sparse matrix has a
|
||||
state, which can take the following values:
|
||||
\begin{description}
|
||||
@@ -353,6 +353,30 @@ Scope: {\bf local}.\\
|
||||
\end{description}
|
||||
|
||||
|
||||
\subsubsection*{CNV --- convert internal storage format}
|
||||
\addcontentsline{toc}{paragraph}{CNV}
|
||||
|
||||
\begin{verbatim}
|
||||
call desc%cnv(mold)
|
||||
\end{verbatim}
|
||||
|
||||
\begin{description}
|
||||
\item[Type:] Asynchronous.
|
||||
\item[\bf On Entry]
|
||||
\item[desc] the communication descriptor.\\
|
||||
Scope: {\bf local}.\\
|
||||
\item[mold] the desred integer storage format.\\
|
||||
Scope: {\bf local}.\\
|
||||
% Type: {\bf required}.\\
|
||||
% Intent: {\bf in}.\\
|
||||
Specified as: a object of type derived from (integer) \vbasedata.
|
||||
\end{description}
|
||||
The \verb|mold| arguments may be
|
||||
employed to interface with special devices, such as GPUs and other
|
||||
accelerators.
|
||||
|
||||
|
||||
|
||||
\subsubsection*{psb\_cd\_get\_large\_threshold --- Get threshold for
|
||||
index mapping switch}
|
||||
\addcontentsline{toc}{paragraph}{psb\_cd\_get\_large\_threshold}
|
||||
@@ -725,6 +749,9 @@ Type: optional.
|
||||
A variable of type \verb|psb_Tspmat_type|.
|
||||
\item[info] Return code.
|
||||
\end{description}
|
||||
The \verb|mold| arguments may be
|
||||
employed to interface with special devices, such as GPUs and other
|
||||
accelerators.
|
||||
|
||||
|
||||
\subsubsection*{csclip --- Reduce to a submatrix}
|
||||
|
||||
+9
-2
@@ -85,7 +85,7 @@ $ptype$ string as follows\footnote{The string is case-insensitive}:
|
||||
\addcontentsline{toc}{subsection}{prec\%build}
|
||||
|
||||
\begin{verbatim}
|
||||
call prec%build(a, desc_a, info,amold,vmold)
|
||||
call prec%build(a, desc_a, info[,amold,vmold,imold])
|
||||
\end{verbatim}
|
||||
|
||||
\begin{description}
|
||||
@@ -121,7 +121,11 @@ Scope: {\bf local}.\\
|
||||
Type: {\bf optional}.\\
|
||||
Intent: {\bf in}.\\
|
||||
Specified as: an object of a class derived from \vbasedata.
|
||||
|
||||
\item[imold] The desired dynamic type for the internal integer vector storage.\\
|
||||
Scope: {\bf local}.\\
|
||||
Type: {\bf optional}.\\
|
||||
Intent: {\bf in}.\\
|
||||
Specified as: an object of a class derived from (integer) \vbasedata.
|
||||
\end{description}
|
||||
|
||||
\begin{description}
|
||||
@@ -137,6 +141,9 @@ Type: {\bf required} \\
|
||||
Intent: {\bf out}.\\
|
||||
An integer value; 0 means no error has been detected.
|
||||
\end{description}
|
||||
The \verb|amold|, \verb|vmold| and \verb|imold| arguments may be
|
||||
employed to interface with special devices, such as GPUs and other
|
||||
accelerators.
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -297,7 +297,7 @@ nor the end vertex belong to the current process.
|
||||
\addcontentsline{toc}{subsection}{psb\_cdasb}
|
||||
|
||||
\begin{verbatim}
|
||||
call psb_cdasb(desc_a, info)
|
||||
call psb_cdasb(desc_a, info [, mold])
|
||||
\end{verbatim}
|
||||
|
||||
\begin{description}
|
||||
@@ -308,6 +308,11 @@ Scope:{\bf local}.\\
|
||||
Type:{\bf required}.\\
|
||||
Intent: {\bf inout}.\\
|
||||
Specified as: a structured data of type \descdata.
|
||||
\item[mold] The desired dynamic type for the internal index storage.\\
|
||||
Scope: {\bf local}.\\
|
||||
Type: {\bf optional}.\\
|
||||
Intent: {\bf in}.\\
|
||||
Specified as: a object of type derived from (integer) \vbasedata.
|
||||
\end{description}
|
||||
|
||||
\begin{description}
|
||||
|
||||
Reference in New Issue
Block a user