Document DESC%CNV method and MOLD arguments to CDASB and PREC%BUILD

This commit is contained in:
Salvatore Filippone
2017-12-14 17:09:59 +00:00
parent 4beef03aec
commit c3633b6fb2
140 changed files with 24695 additions and 24798 deletions
+40 -13
View File
@@ -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
View File
@@ -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.
+6 -1
View File
@@ -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}