mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-15 02:19:05 +00:00
Updated description of DOT and friends to account for optional GLOBAL
var.
This commit is contained in:
+59
-20
@@ -23,26 +23,26 @@
|
||||
<BODY >
|
||||
|
||||
<DIV CLASS="navigation"><!--Navigation Panel-->
|
||||
<A NAME="tex2html922"
|
||||
<A NAME="tex2html923"
|
||||
HREF="node55.html">
|
||||
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
||||
<A NAME="tex2html918"
|
||||
<A NAME="tex2html919"
|
||||
HREF="node52.html">
|
||||
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
||||
<A NAME="tex2html912"
|
||||
<A NAME="tex2html913"
|
||||
HREF="node53.html">
|
||||
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
||||
<A NAME="tex2html920"
|
||||
<A NAME="tex2html921"
|
||||
HREF="node1.html">
|
||||
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
|
||||
<BR>
|
||||
<B> Next:</B> <A NAME="tex2html923"
|
||||
<B> Next:</B> <A NAME="tex2html924"
|
||||
HREF="node55.html">psb_gedots Generalized</A>
|
||||
<B> Up:</B> <A NAME="tex2html919"
|
||||
<B> Up:</B> <A NAME="tex2html920"
|
||||
HREF="node52.html">Computational routines</A>
|
||||
<B> Previous:</B> <A NAME="tex2html913"
|
||||
<B> Previous:</B> <A NAME="tex2html914"
|
||||
HREF="node53.html">psb_geaxpby General</A>
|
||||
<B> <A NAME="tex2html921"
|
||||
<B> <A NAME="tex2html922"
|
||||
HREF="node1.html">Contents</A></B>
|
||||
<BR>
|
||||
<BR></DIV>
|
||||
@@ -110,10 +110,10 @@ dot \leftarrow x^H y
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
psb_gedot(x, y, desc_a, info)
|
||||
psb_gedot(x, y, desc_a, info [,global])
|
||||
</PRE>
|
||||
<BR><P></P>
|
||||
<DIV ALIGN="CENTER"><A NAME="1978"></A>
|
||||
<DIV ALIGN="CENTER"><A NAME="2010"></A>
|
||||
<TABLE>
|
||||
<CAPTION><STRONG>Table 2:</STRONG>
|
||||
Data types</CAPTION>
|
||||
@@ -215,7 +215,20 @@ Type: <B>required</B>
|
||||
Intent: <B>in</B>.
|
||||
<BR>
|
||||
Specified as: an object of type descdata<TT>psb_desc_type</TT>.
|
||||
|
||||
</DD>
|
||||
<DT><STRONG>global</STRONG></DT>
|
||||
<DD>Specifies whether the computation should include the
|
||||
global reduction across all processes.
|
||||
<BR>
|
||||
Scope: <B>global</B>
|
||||
<BR>
|
||||
Type: <B>optional</B>.
|
||||
<BR>
|
||||
Intent: <B>in</B>.
|
||||
<BR>
|
||||
Specified as: a logical scalar.
|
||||
Default: <code>global=.true.</code>
|
||||
<BR>
|
||||
<P>
|
||||
</DD>
|
||||
<DT><STRONG><B>On Return</B></STRONG></DT>
|
||||
@@ -230,7 +243,8 @@ Specified as: an object of type descdata<TT>psb_desc_type</TT>.
|
||||
SRC="img21.png"
|
||||
ALT="$y$"></SPAN>.
|
||||
<BR>
|
||||
Scope: <B>global</B>
|
||||
Scope: <B>global</B> unless the optional variable
|
||||
<code>global=.false.</code> as been specified
|
||||
<BR>
|
||||
Specified as: a number of the data type indicated in Table <A HREF="#tab:f90dot">2</A>.
|
||||
</DD>
|
||||
@@ -247,30 +261,55 @@ An integer value; 0 means no error has been detected.
|
||||
</DD>
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
<BIG CLASS="LARGE"><B>Notes</B></BIG>
|
||||
|
||||
<OL>
|
||||
<LI>The computation of a global result requires a global
|
||||
communication, which entails a significant overhead. It may be
|
||||
necessary and/or advisable to compute multiple dot products at the same
|
||||
time; in this case, it is possible to improve the runtime efficiency
|
||||
by using the following scheme:
|
||||
<BR>
|
||||
<IMG
|
||||
WIDTH="500" HEIGHT="73" ALIGN="BOTTOM" BORDER="0"
|
||||
SRC="img27.png"
|
||||
ALT="\begin{lstlisting}
|
||||
vres(1) = psb_gedot(x1,y1,desc_a,info,global=.false.)
|
||||
vres(...
|
||||
...,y3,desc_a,info,global=.false.)
|
||||
call psb_sum(ictxt,vres(1:3))
|
||||
\end{lstlisting}">
|
||||
<BR>
|
||||
In this way the global communication, which for small sizes is a
|
||||
latency-bound operation, is invoked only once.
|
||||
</LI>
|
||||
</OL>
|
||||
|
||||
<P>
|
||||
|
||||
<DIV CLASS="navigation"><HR>
|
||||
<!--Navigation Panel-->
|
||||
<A NAME="tex2html922"
|
||||
<A NAME="tex2html923"
|
||||
HREF="node55.html">
|
||||
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
||||
<A NAME="tex2html918"
|
||||
<A NAME="tex2html919"
|
||||
HREF="node52.html">
|
||||
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
||||
<A NAME="tex2html912"
|
||||
<A NAME="tex2html913"
|
||||
HREF="node53.html">
|
||||
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
||||
<A NAME="tex2html920"
|
||||
<A NAME="tex2html921"
|
||||
HREF="node1.html">
|
||||
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
|
||||
<BR>
|
||||
<B> Next:</B> <A NAME="tex2html923"
|
||||
<B> Next:</B> <A NAME="tex2html924"
|
||||
HREF="node55.html">psb_gedots Generalized</A>
|
||||
<B> Up:</B> <A NAME="tex2html919"
|
||||
<B> Up:</B> <A NAME="tex2html920"
|
||||
HREF="node52.html">Computational routines</A>
|
||||
<B> Previous:</B> <A NAME="tex2html913"
|
||||
<B> Previous:</B> <A NAME="tex2html914"
|
||||
HREF="node53.html">psb_geaxpby General</A>
|
||||
<B> <A NAME="tex2html921"
|
||||
<B> <A NAME="tex2html922"
|
||||
HREF="node1.html">Contents</A></B> </DIV>
|
||||
<!--End of Navigation Panel-->
|
||||
|
||||
|
||||
Reference in New Issue
Block a user