Update docs for collectives

maint-3.7.1
Salvatore Filippone 3 years ago
parent 7064777e2e
commit 040d619d08

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

@ -350,7 +350,7 @@ process).
<div class="center"
>
<!--l. 160--><p class="noindent" >
<div class="fbox"><div class="minipage"><pre class="verbatim" id="verbatim-78">
<div class="fbox"><div class="minipage"><pre class="verbatim" id="verbatim-85">
==========================================================
Process:&#x00A0;0.&#x00A0;&#x00A0;PSBLAS&#x00A0;Error&#x00A0;(4010)&#x00A0;in&#x00A0;subroutine:&#x00A0;df_sample
Error&#x00A0;from&#x00A0;call&#x00A0;to&#x00A0;subroutine&#x00A0;mat&#x00A0;dist

@ -86,7 +86,9 @@ class="newline" />Type: <span
class="cmbx-10">optional</span>.<br
class="newline" />Intent: <span
class="cmbx-10">in</span>.<br
class="newline" />Specified as: an integer, with the value determined by the bitwise OR of
class="newline" />Specified as: an integer value. The action to be taken is determined by
its bit fields, which can be set with bitwise <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">OR</span></span></span>. Basic action values are
<span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_start_</span></span></span>, <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_end_</span></span></span>. Default: both fields are
@ -108,7 +110,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 327--><p class="indent" >
<!--l. 328--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -139,18 +141,40 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 345--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
class="enumerate" id="x77-114002x1">The <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument is both input and output, and its value may be changed
even on processes different from the final result destination.
</li>
<li
class="enumerate" id="x77-114004x2">When splitting the operation in two calls, the <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument must not be
accessed between calls:
<div class="center"
>
<!--l. 361--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-70">
&#x00A0;&#x00A0;call&#x00A0;psb_bcast(ctxt,dat,mode=psb_collective_start_,request=bcast_request)
&#x00A0;&#x00A0;.......
&#x00A0;&#x00A0;call&#x00A0;psb_bcast(ctxt,dat,mode=psb_collective_end_,&#x00A0;request=bcast_request)
</pre>
<!--l. 367--><p class="nopar" ></div></div>
</li></ol>
<!--l. 345--><div class="crosslinks"><p class="noindent">[<a
<!--l. 376--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu69.html" >next</a>] [<a
href="userhtmlsu64.html" >prev</a>] [<a
href="userhtmlsu64.html#tailuserhtmlsu64.html" >prev-tail</a>] [<a
href="userhtmlsu65.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlsu68.html" >up</a>] </p></div>
<!--l. 345--><p class="indent" > <a
<!--l. 376--><p class="indent" > <a
id="tailuserhtmlsu65.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 345--><div class="crosslinks"><p class="noindent">[<a
<!--l. 376--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu70.html" >next</a>] [<a
href="userhtmlsu65.html" >prev</a>] [<a
href="userhtmlsu65.html#tailuserhtmlsu65.html" >prev-tail</a>] [<a
@ -21,11 +21,11 @@ href="userhtmlsu59.html#userhtmlsu69.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-70">
<pre class="verbatim" id="verbatim-71">
call&#x00A0;psb_sum(ctxt,&#x00A0;dat&#x00A0;[,&#x00A0;root,&#x00A0;mode,&#x00A0;request])
</pre>
<!--l. 349--><p class="nopar" >
<!--l. 351--><p class="indent" > This subroutine implements a sum reduction operation based on the underlying
<!--l. 380--><p class="nopar" >
<!--l. 382--><p class="indent" > This subroutine implements a sum reduction operation based on the underlying
communication library.
<dl class="description"><dt class="description">
<span
@ -86,7 +86,9 @@ class="newline" />Type: <span
class="cmbx-10">optional</span>.<br
class="newline" />Intent: <span
class="cmbx-10">in</span>.<br
class="newline" />Specified as: an integer, with the value determined by the bitwise OR of
class="newline" />Specified as: an integer value. The action to be taken is determined by
its bit fields, which can be set with bitwise <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">OR</span></span></span>. Basic action values are
<span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_start_</span></span></span>, <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_end_</span></span></span>. Default: both fields are
@ -105,7 +107,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 392--><p class="indent" >
<!--l. 423--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -136,7 +138,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 409--><p class="noindent" ><span
<!--l. 440--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
@ -145,20 +147,31 @@ class="cmtt-10">dat</span></span></span> argument is both input and output, and
even on processes different from the final result destination.
</li>
<li
class="enumerate" id="x78-115004x2">The <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument may also be a long integer scalar.</li></ol>
class="enumerate" id="x78-115004x2">When splitting the operation in two calls, the <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument must not be
accessed between calls:
<div class="center"
>
<!--l. 456--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-72">
&#x00A0;&#x00A0;call&#x00A0;psb_sum(ctxt,dat,mode=psb_collective_start_,request=sum_request)
&#x00A0;&#x00A0;.......
&#x00A0;&#x00A0;call&#x00A0;psb_sum(ctxt,dat,mode=psb_collective_end_,request=sum_request)
</pre>
<!--l. 462--><p class="nopar" ></div></div>
</li></ol>
<!--l. 419--><div class="crosslinks"><p class="noindent">[<a
<!--l. 470--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu70.html" >next</a>] [<a
href="userhtmlsu65.html" >prev</a>] [<a
href="userhtmlsu65.html#tailuserhtmlsu65.html" >prev-tail</a>] [<a
href="userhtmlsu66.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlsu69.html" >up</a>] </p></div>
<!--l. 419--><p class="indent" > <a
<!--l. 470--><p class="indent" > <a
id="tailuserhtmlsu66.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 419--><div class="crosslinks"><p class="noindent">[<a
<!--l. 470--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu71.html" >next</a>] [<a
href="userhtmlsu66.html" >prev</a>] [<a
href="userhtmlsu66.html#tailuserhtmlsu66.html" >prev-tail</a>] [<a
@ -21,11 +21,11 @@ href="userhtmlsu59.html#userhtmlsu70.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-71">
<pre class="verbatim" id="verbatim-73">
call&#x00A0;psb_max(ctxt,&#x00A0;dat&#x00A0;[,&#x00A0;root,&#x00A0;mode,&#x00A0;request])
</pre>
<!--l. 423--><p class="nopar" >
<!--l. 425--><p class="indent" > This subroutine implements a maximum valuereduction operation based on the
<!--l. 474--><p class="nopar" >
<!--l. 476--><p class="indent" > This subroutine implements a maximum valuereduction operation based on the
underlying communication library.
<dl class="description"><dt class="description">
<span
@ -88,7 +88,9 @@ class="newline" />Type: <span
class="cmbx-10">optional</span>.<br
class="newline" />Intent: <span
class="cmbx-10">in</span>.<br
class="newline" />Specified as: an integer, with the value determined by the bitwise OR of
class="newline" />Specified as: an integer value. The action to be taken is determined by
its bit fields, which can be set with bitwise <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">OR</span></span></span>. Basic action values are
<span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_start_</span></span></span>, <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_end_</span></span></span>. Default: both fields are
@ -110,7 +112,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 466--><p class="indent" >
<!--l. 518--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -140,7 +142,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 484--><p class="noindent" ><span
<!--l. 536--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
@ -149,20 +151,31 @@ class="cmtt-10">dat</span></span></span> argument is both input and output, and
even on processes different from the final result destination.
</li>
<li
class="enumerate" id="x79-116004x2">The <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument may also be a long integer scalar.</li></ol>
class="enumerate" id="x79-116004x2">When splitting the operation in two calls, the <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument must not be
accessed between calls:
<div class="center"
>
<!--l. 552--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-74">
&#x00A0;&#x00A0;call&#x00A0;psb_max(ctxt,dat,mode=psb_collective_start_,request=max_request)
&#x00A0;&#x00A0;.......
&#x00A0;&#x00A0;call&#x00A0;psb_max(ctxt,dat,mode=psb_collective_end_,request=max_request)
</pre>
<!--l. 558--><p class="nopar" ></div></div>
</li></ol>
<!--l. 492--><div class="crosslinks"><p class="noindent">[<a
<!--l. 564--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu71.html" >next</a>] [<a
href="userhtmlsu66.html" >prev</a>] [<a
href="userhtmlsu66.html#tailuserhtmlsu66.html" >prev-tail</a>] [<a
href="userhtmlsu67.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlsu70.html" >up</a>] </p></div>
<!--l. 492--><p class="indent" > <a
<!--l. 564--><p class="indent" > <a
id="tailuserhtmlsu67.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 492--><div class="crosslinks"><p class="noindent">[<a
<!--l. 564--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu72.html" >next</a>] [<a
href="userhtmlsu67.html" >prev</a>] [<a
href="userhtmlsu67.html#tailuserhtmlsu67.html" >prev-tail</a>] [<a
@ -21,11 +21,11 @@ href="userhtmlsu59.html#userhtmlsu71.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-72">
<pre class="verbatim" id="verbatim-75">
call&#x00A0;psb_min(ctxt,&#x00A0;dat&#x00A0;[,&#x00A0;root,&#x00A0;mode,&#x00A0;request])
</pre>
<!--l. 496--><p class="nopar" >
<!--l. 498--><p class="indent" > This subroutine implements a minimum value reduction operation based on the
<!--l. 568--><p class="nopar" >
<!--l. 570--><p class="indent" > This subroutine implements a minimum value reduction operation based on the
underlying communication library.
<dl class="description"><dt class="description">
<span
@ -87,12 +87,17 @@ class="newline" />Type: <span
class="cmbx-10">optional</span>.<br
class="newline" />Intent: <span
class="cmbx-10">in</span>.<br
class="newline" />Specified as: an integer, with the value determined by the bitwise OR of
class="newline" />Specified as: an integer value. The action to be taken is determined by
its bit fields, which can be set with bitwise <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">OR</span></span></span>. Basic action values are
<span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_start_</span></span></span>, <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_end_</span></span></span>. Default: both fields are
selected (i.e. require synchronous completion).<br
class="newline" />
</dd><dt class="description">
<span
class="cmbx-10">request</span> </dt><dd
@ -106,7 +111,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 539--><p class="indent" >
<!--l. 612--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -137,7 +142,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 557--><p class="noindent" ><span
<!--l. 630--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
@ -146,20 +151,31 @@ class="cmtt-10">dat</span></span></span> argument is both input and output, and
even on processes different from the final result destination.
</li>
<li
class="enumerate" id="x80-117004x2">The <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument may also be a long integer scalar.</li></ol>
class="enumerate" id="x80-117004x2">When splitting the operation in two calls, the <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument must not be
accessed between calls:
<div class="center"
>
<!--l. 646--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-76">
&#x00A0;&#x00A0;call&#x00A0;psb_min(ctxt,dat,mode=psb_collective_start_,request=min_request)
&#x00A0;&#x00A0;.......
&#x00A0;&#x00A0;call&#x00A0;psb_min(ctxt,dat,mode=psb_collective_end_,request=min_request)
</pre>
<!--l. 652--><p class="nopar" ></div></div>
</li></ol>
<!--l. 565--><div class="crosslinks"><p class="noindent">[<a
<!--l. 658--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu72.html" >next</a>] [<a
href="userhtmlsu67.html" >prev</a>] [<a
href="userhtmlsu67.html#tailuserhtmlsu67.html" >prev-tail</a>] [<a
href="userhtmlsu68.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlsu71.html" >up</a>] </p></div>
<!--l. 565--><p class="indent" > <a
<!--l. 658--><p class="indent" > <a
id="tailuserhtmlsu68.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 565--><div class="crosslinks"><p class="noindent">[<a
<!--l. 658--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu73.html" >next</a>] [<a
href="userhtmlsu68.html" >prev</a>] [<a
href="userhtmlsu68.html#tailuserhtmlsu68.html" >prev-tail</a>] [<a
@ -21,11 +21,11 @@ href="userhtmlsu59.html#userhtmlsu72.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-73">
<pre class="verbatim" id="verbatim-77">
call&#x00A0;psb_amx(ctxt,&#x00A0;dat&#x00A0;[,&#x00A0;root,&#x00A0;mode,&#x00A0;request])
</pre>
<!--l. 569--><p class="nopar" >
<!--l. 571--><p class="indent" > This subroutine implements a maximum absolute value reduction operation based
<!--l. 662--><p class="nopar" >
<!--l. 664--><p class="indent" > This subroutine implements a maximum absolute value reduction operation based
on the underlying communication library.
<dl class="description"><dt class="description">
<span
@ -87,12 +87,17 @@ class="newline" />Type: <span
class="cmbx-10">optional</span>.<br
class="newline" />Intent: <span
class="cmbx-10">in</span>.<br
class="newline" />Specified as: an integer, with the value determined by the bitwise OR of
class="newline" />Specified as: an integer value. The action to be taken is determined by
its bit fields, which can be set with bitwise <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">OR</span></span></span>. Basic action values are
<span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_start_</span></span></span>, <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_end_</span></span></span>. Default: both fields are
selected (i.e. require synchronous completion).<br
class="newline" />
</dd><dt class="description">
<span
class="cmbx-10">request</span> </dt><dd
@ -106,7 +111,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 612--><p class="indent" >
<!--l. 706--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -136,7 +141,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 630--><p class="noindent" ><span
<!--l. 724--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
@ -145,20 +150,31 @@ class="cmtt-10">dat</span></span></span> argument is both input and output, and
even on processes different from the final result destination.
</li>
<li
class="enumerate" id="x81-118004x2">The <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument may also be a long integer scalar.</li></ol>
class="enumerate" id="x81-118004x2">When splitting the operation in two calls, the <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument must not be
accessed between calls:
<div class="center"
>
<!--l. 740--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-78">
&#x00A0;&#x00A0;call&#x00A0;psb_amx(ctxt,dat,mode=psb_collective_start_,request=amx_request)
&#x00A0;&#x00A0;.......
&#x00A0;&#x00A0;call&#x00A0;psb_amx(ctxt,dat,mode=psb_collective_end_,request=amx_request)
</pre>
<!--l. 746--><p class="nopar" ></div></div>
</li></ol>
<!--l. 638--><div class="crosslinks"><p class="noindent">[<a
<!--l. 752--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu73.html" >next</a>] [<a
href="userhtmlsu68.html" >prev</a>] [<a
href="userhtmlsu68.html#tailuserhtmlsu68.html" >prev-tail</a>] [<a
href="userhtmlsu69.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlsu72.html" >up</a>] </p></div>
<!--l. 638--><p class="indent" > <a
<!--l. 752--><p class="indent" > <a
id="tailuserhtmlsu69.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 638--><div class="crosslinks"><p class="noindent">[<a
<!--l. 752--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlse8.html" >next</a>] [<a
href="userhtmlsu69.html" >prev</a>] [<a
href="userhtmlsu69.html#tailuserhtmlsu69.html" >prev-tail</a>] [<a
@ -21,11 +21,11 @@ href="userhtmlsu59.html#userhtmlsu73.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-74">
<pre class="verbatim" id="verbatim-79">
call&#x00A0;psb_amn(ctxt,&#x00A0;dat&#x00A0;[,&#x00A0;root,&#x00A0;mode,&#x00A0;request])
</pre>
<!--l. 642--><p class="nopar" >
<!--l. 644--><p class="indent" > This subroutine implements a minimum absolute value reduction operation based
<!--l. 756--><p class="nopar" >
<!--l. 758--><p class="indent" > This subroutine implements a minimum absolute value reduction operation based
on the underlying communication library.
<dl class="description"><dt class="description">
<span
@ -87,12 +87,17 @@ class="newline" />Type: <span
class="cmbx-10">optional</span>.<br
class="newline" />Intent: <span
class="cmbx-10">in</span>.<br
class="newline" />Specified as: an integer, with the value determined by the bitwise OR of
class="newline" />Specified as: an integer value. The action to be taken is determined by
its bit fields, which can be set with bitwise <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">OR</span></span></span>. Basic action values are
<span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_start_</span></span></span>, <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_end_</span></span></span>. Default: both fields are
selected (i.e. require synchronous completion).<br
class="newline" />
</dd><dt class="description">
<span
class="cmbx-10">request</span> </dt><dd
@ -106,7 +111,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 685--><p class="indent" >
<!--l. 800--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -137,7 +142,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 703--><p class="noindent" ><span
<!--l. 818--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
@ -146,20 +151,31 @@ class="cmtt-10">dat</span></span></span> argument is both input and output, and
even on processes different from the final result destination.
</li>
<li
class="enumerate" id="x82-119004x2">The <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument may also be a long integer scalar.</li></ol>
class="enumerate" id="x82-119004x2">When splitting the operation in two calls, the <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument must not be
accessed between calls:
<div class="center"
>
<!--l. 834--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-80">
&#x00A0;&#x00A0;call&#x00A0;psb_amn(ctxt,dat,mode=psb_collective_start_,request=amn_request)
&#x00A0;&#x00A0;.......
&#x00A0;&#x00A0;call&#x00A0;psb_amn(ctxt,dat,mode=psb_collective_end_,request=amn_request)
</pre>
<!--l. 840--><p class="nopar" ></div></div>
</li></ol>
<!--l. 711--><div class="crosslinks"><p class="noindent">[<a
<!--l. 846--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlse8.html" >next</a>] [<a
href="userhtmlsu69.html" >prev</a>] [<a
href="userhtmlsu69.html#tailuserhtmlsu69.html" >prev-tail</a>] [<a
href="userhtmlsu70.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlsu73.html" >up</a>] </p></div>
<!--l. 711--><p class="indent" > <a
<!--l. 846--><p class="indent" > <a
id="tailuserhtmlsu70.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 711--><div class="crosslinks"><p class="noindent">[<a
<!--l. 846--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu74.html" >next</a>] [<a
href="userhtmlsu70.html" >prev</a>] [<a
href="userhtmlsu70.html#tailuserhtmlsu70.html" >prev-tail</a>] [<a
@ -21,11 +21,11 @@ href="userhtmlsu59.html#userhtmlse8.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-75">
<pre class="verbatim" id="verbatim-81">
call&#x00A0;psb_nrm2(ctxt,&#x00A0;dat&#x00A0;[,&#x00A0;root,&#x00A0;mode,&#x00A0;request])
</pre>
<!--l. 715--><p class="nopar" >
<!--l. 717--><p class="indent" > This subroutine implements a 2-norm value reduction operation based on the
<!--l. 850--><p class="nopar" >
<!--l. 852--><p class="indent" > This subroutine implements a 2-norm value reduction operation based on the
underlying communication library.
<dl class="description"><dt class="description">
<span
@ -87,12 +87,17 @@ class="newline" />Type: <span
class="cmbx-10">optional</span>.<br
class="newline" />Intent: <span
class="cmbx-10">in</span>.<br
class="newline" />Specified as: an integer, with the value determined by the bitwise OR of
class="newline" />Specified as: an integer value. The action to be taken is determined by
its bit fields, which can be set with bitwise <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">OR</span></span></span>. Basic action values are
<span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_start_</span></span></span>, <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">psb_collective_end_</span></span></span>. Default: both fields are
selected (i.e. require synchronous completion).<br
class="newline" />
</dd><dt class="description">
<span
class="cmbx-10">request</span> </dt><dd
@ -106,7 +111,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 759--><p class="indent" >
<!--l. 894--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -136,7 +141,7 @@ class="cmbx-10">inout</span>.<br
class="newline" />If <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">mode</span></span></span> does not specify synchronous completion, then this variable must
be present.</dd></dl>
<!--l. 777--><p class="noindent" ><span
<!--l. 912--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
@ -153,29 +158,46 @@ class="cmmi-10">res</span>
is equivalent to the computation of
<center class="math-display" >
<img
src="userhtml29x.png" alt=" &#x2218; -------
&#x2211; 2
res = dati,
src="userhtml29x.png" alt=" &#x2218; &#x2211;------
res = dat2i,
i
" class="math-display" ></center>
<!--l. 783--><p class="nopar" > with care taken to avoid unnecessary overflow.
<!--l. 918--><p class="nopar" > with care taken to avoid unnecessary overflow.
</li>
<li
class="enumerate" id="x83-120006x3">The <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument is both input and output, and its value may be changed
even on processes different from the final result destination.</li></ol>
even on processes different from the final result destination.
</li>
<li
class="enumerate" id="x83-120008x4">When splitting the operation in two calls, the <span class="obeylines-h"><span class="verb"><span
class="cmtt-10">dat</span></span></span> argument must not be
accessed between calls:
<div class="center"
>
<!--l. 934--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-82">
&#x00A0;&#x00A0;call&#x00A0;psb_nrm2(ctxt,dat,mode=psb_collective_start_,request=nrm2_request)
&#x00A0;&#x00A0;.......
&#x00A0;&#x00A0;call&#x00A0;psb_nrm2(ctxt,dat,mode=psb_collective_end_,request=nrm2_request)
</pre>
<!--l. 940--><p class="nopar" ></div></div>
</li></ol>
<!--l. 792--><div class="crosslinks"><p class="noindent">[<a
<!--l. 948--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu74.html" >next</a>] [<a
href="userhtmlsu70.html" >prev</a>] [<a
href="userhtmlsu70.html#tailuserhtmlsu70.html" >prev-tail</a>] [<a
href="userhtmlsu71.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlse8.html" >up</a>] </p></div>
<!--l. 792--><p class="indent" > <a
<!--l. 948--><p class="indent" > <a
id="tailuserhtmlsu71.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 792--><div class="crosslinks"><p class="noindent">[<a
<!--l. 948--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu75.html" >next</a>] [<a
href="userhtmlsu71.html" >prev</a>] [<a
href="userhtmlsu71.html#tailuserhtmlsu71.html" >prev-tail</a>] [<a
@ -21,11 +21,11 @@ href="userhtmlsu59.html#userhtmlsu74.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-76">
<pre class="verbatim" id="verbatim-83">
call&#x00A0;psb_snd(ctxt,&#x00A0;dat,&#x00A0;dst,&#x00A0;m)
</pre>
<!--l. 796--><p class="nopar" >
<!--l. 798--><p class="indent" > This subroutine sends a packet of data to a destination.
<!--l. 952--><p class="nopar" >
<!--l. 954--><p class="indent" > This subroutine sends a packet of data to a destination.
<dl class="description"><dt class="description">
<span
class="cmbx-10">Type:</span> </dt><dd
@ -97,7 +97,7 @@ class="cmmi-10">dat </span>is a rank 2 array, specifies the number of r
class="cmmi-10">size</span>(<span
class="cmmi-10">dat,</span>1); must have the same
value on sending and receiving processes.</dd></dl>
<!--l. 832--><p class="indent" >
<!--l. 988--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -105,7 +105,7 @@ class="description"></dd></dl>
<!--l. 836--><p class="noindent" ><span
<!--l. 992--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li
@ -118,12 +118,12 @@ class="cmmi-10">dst</span>.</li></ol>
<!--l. 843--><div class="crosslinks"><p class="noindent">[<a
<!--l. 999--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu75.html" >next</a>] [<a
href="userhtmlsu71.html" >prev</a>] [<a
href="userhtmlsu71.html#tailuserhtmlsu71.html" >prev-tail</a>] [<a
href="userhtmlsu72.html" >front</a>] [<a
href="userhtmlsu59.html#userhtmlsu74.html" >up</a>] </p></div>
<!--l. 843--><p class="indent" > <a
<!--l. 999--><p class="indent" > <a
id="tailuserhtmlsu72.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 843--><div class="crosslinks"><p class="noindent">[<a
<!--l. 999--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu72.html" >prev</a>] [<a
href="userhtmlsu72.html#tailuserhtmlsu72.html" >prev-tail</a>] [<a
href="userhtmlsu70.html#tailuserhtmlsu73.html">tail</a>] [<a
@ -20,11 +20,11 @@ href="userhtmlsu59.html#userhtmlsu75.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-77">
<pre class="verbatim" id="verbatim-84">
call&#x00A0;psb_rcv(ctxt,&#x00A0;dat,&#x00A0;src,&#x00A0;m)
</pre>
<!--l. 847--><p class="nopar" >
<!--l. 849--><p class="indent" > This subroutine receives a packet of data to a destination.
<!--l. 1003--><p class="nopar" >
<!--l. 1005--><p class="indent" > This subroutine receives a packet of data to a destination.
<dl class="description"><dt class="description">
<span
class="cmbx-10">Type:</span> </dt><dd
@ -81,7 +81,7 @@ class="cmmi-10">dat </span>is a rank 2 array, specifies the number of r
class="cmmi-10">size</span>(<span
class="cmmi-10">dat,</span>1); must have the same
value on sending and receiving processes.</dd></dl>
<!--l. 875--><p class="indent" >
<!--l. 1031--><p class="indent" >
<dl class="description"><dt class="description">
<span
class="cmbx-10">On Return</span> </dt><dd
@ -104,7 +104,7 @@ class="cmmi-10">m </span>is not specified, size
<!--l. 887--><p class="noindent" ><span
<!--l. 1043--><p class="noindent" ><span
class="cmbx-12">Notes</span>
<ol class="enumerate1" >
<li

@ -19,7 +19,7 @@ href="userhtmlsu86.html#userhtmlsu87.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-79">
<pre class="verbatim" id="verbatim-86">
call&#x00A0;prec%init(icontxt,ptype,&#x00A0;info)
</pre>
<!--l. 30--><p class="nopar" >

@ -21,7 +21,7 @@ href="userhtmlsu86.html#userhtmlsu89.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-80">
<pre class="verbatim" id="verbatim-87">
call&#x00A0;prec%build(a,&#x00A0;desc_a,&#x00A0;info[,amold,vmold,imold])
</pre>
<!--l. 91--><p class="nopar" >

@ -21,7 +21,7 @@ href="userhtmlsu86.html#userhtmlse11.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-81">
<pre class="verbatim" id="verbatim-88">
call&#x00A0;prec%apply(x,y,desc_a,info,trans,work)
call&#x00A0;prec%apply(x,desc_a,info,trans)
</pre>

@ -21,7 +21,7 @@ href="userhtmlsu86.html#userhtmlsu90.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-82">
<pre class="verbatim" id="verbatim-89">
call&#x00A0;prec%descr(info)
call&#x00A0;prec%descr(info,iout,&#x00A0;root)
</pre>

@ -20,7 +20,7 @@ href="userhtmlsu86.html#userhtmlli2.html" >up</a>] </p></div>
<pre class="verbatim" id="verbatim-83">
<pre class="verbatim" id="verbatim-90">
call&#x00A0;&#x00A0;prec%clone(precout,info)
</pre>
<!--l. 248--><p class="nopar" >

@ -20,7 +20,7 @@ href="userhtmlsu86.html# " >up</a>] </p></div>
<pre class="verbatim" id="verbatim-84">
<pre class="verbatim" id="verbatim-91">
call&#x00A0;prec%free(info)
</pre>
<!--l. 271--><p class="nopar" >

@ -388,10 +388,6 @@ class="newline" />An integer value; 0 means no error has been detected.</dd></dl
<!--l. 124--><p class="indent" >
<!--l. 2--><div class="crosslinks"><p class="noindent">[<a
href="userhtmlsu90.html" >front</a>] [<a
href="# " >up</a>] </p></div>

File diff suppressed because it is too large Load Diff

@ -312,8 +312,9 @@ Specified as: an integer value $0<= root <= np-1$, default 0 \
Scope: {\bf global}.\\
Type: {\bf optional}.\\
Intent: {\bf in}.\\
Specified as: an integer, with the value determined by the bitwise OR
of \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Specified as: an integer value. The action to be taken is determined
by its bit fields, which can be set with bitwise \verb|OR|. Basic
action values are \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous completion).\\
\item[request] A request variable to check for operation completion.\\
Scope: {\bf local}.\\
@ -341,6 +342,36 @@ If \verb|mode| does not specify synchronous completion, then this
variable must be present.
\end{description}
{\par\noindent\large\bfseries Notes}
\begin{enumerate}
\item The \verb|dat| argument is both input and output, and its
value may be changed even on processes different from the final
result destination.
\item When splitting the operation in two calls, the \verb|dat|
argument must not be accessed between calls:
\ifpdf
\begin{minted}[breaklines=true,bgcolor=bg,fontsize=\small]{fortran}
call psb_bcast(ctxt,dat,mode=psb_collective_start_,&
& request=bcast_request)
.......
call psb_bcast(ctxt,dat,mode=psb_collective_end_,&
& request=bcast_request)
\end{minted}
\else
\begin{center}
\begin{minipage}[tl]{0.9\textwidth}
\begin{verbatim}
call psb_bcast(ctxt,dat,mode=psb_collective_start_,request=bcast_request)
.......
call psb_bcast(ctxt,dat,mode=psb_collective_end_, request=bcast_request)
\end{verbatim}
\end{minipage}
\end{center}
\fi
\end{enumerate}
\clearpage\subsection{psb\_sum --- Global sum}
@ -377,8 +408,9 @@ Specified as: an integer value $-1<= root <= np-1$, default -1. \
Scope: {\bf global}.\\
Type: {\bf optional}.\\
Intent: {\bf in}.\\
Specified as: an integer, with the value determined by the bitwise OR
of \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Specified as: an integer value. The action to be taken is determined
by its bit fields, which can be set with bitwise \verb|OR|. Basic
action values are \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous completion).\\
\item[request] A request variable to check for operation completion.\\
Scope: {\bf local}.\\
@ -388,7 +420,6 @@ If \verb|mode| does not specify synchronous completion, then this
variable must be present.
\end{description}
\begin{description}
\item[\bf On Return]
\item[dat] On destination process(es), the result of the sum operation.\\
@ -411,7 +442,27 @@ variable must be present.
\item The \verb|dat| argument is both input and output, and its
value may be changed even on processes different from the final
result destination.
\item The \verb|dat| argument may also be a long integer scalar.
\item When splitting the operation in two calls, the \verb|dat|
argument must not be accessed between calls:
\ifpdf
\begin{minted}[breaklines=true,bgcolor=bg,fontsize=\small]{fortran}
call psb_sum(ctxt,dat,mode=psb_collective_start_,&
& request=sum_request)
.......
call psb_sum(ctxt,dat,mode=psb_collective_end_,&
& request=sum_request)
\end{minted}
\else
\begin{center}
\begin{minipage}[tl]{0.9\textwidth}
\begin{verbatim}
call psb_sum(ctxt,dat,mode=psb_collective_start_,request=sum_request)
.......
call psb_sum(ctxt,dat,mode=psb_collective_end_,request=sum_request)
\end{verbatim}
\end{minipage}
\end{center}
\fi
\end{enumerate}
@ -451,8 +502,9 @@ Specified as: an integer value $-1<= root <= np-1$, default -1. \\
Scope: {\bf global}.\\
Type: {\bf optional}.\\
Intent: {\bf in}.\\
Specified as: an integer, with the value determined by the bitwise OR
of \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Specified as: an integer value. The action to be taken is determined
by its bit fields, which can be set with bitwise \verb|OR|. Basic
action values are \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous completion).\\
\item[request] A request variable to check for operation completion.\\
Scope: {\bf local}.\\
@ -486,7 +538,27 @@ variable must be present.
\item The \verb|dat| argument is both input and output, and its
value may be changed even on processes different from the final
result destination.
\item The \verb|dat| argument may also be a long integer scalar.
\item When splitting the operation in two calls, the \verb|dat|
argument must not be accessed between calls:
\ifpdf
\begin{minted}[breaklines=true,bgcolor=bg,fontsize=\small]{fortran}
call psb_max(ctxt,dat,mode=psb_collective_start_,&
& request=max_request)
.......
call psb_max(ctxt,dat,mode=psb_collective_end_,&
& request=max_request)
\end{minted}
\else
\begin{center}
\begin{minipage}[tl]{0.9\textwidth}
\begin{verbatim}
call psb_max(ctxt,dat,mode=psb_collective_start_,request=max_request)
.......
call psb_max(ctxt,dat,mode=psb_collective_end_,request=max_request)
\end{verbatim}
\end{minipage}
\end{center}
\fi
\end{enumerate}
\clearpage\subsection{psb\_min --- Global minimum}
@ -524,8 +596,9 @@ Specified as: an integer value $-1<= root <= np-1$, default -1. \\
Scope: {\bf global}.\\
Type: {\bf optional}.\\
Intent: {\bf in}.\\
Specified as: an integer, with the value determined by the bitwise OR
of \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Specified as: an integer value. The action to be taken is determined
by its bit fields, which can be set with bitwise \verb|OR|. Basic
action values are \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous completion).\\
\item[request] A request variable to check for operation completion.\\
Scope: {\bf local}.\\
@ -559,7 +632,27 @@ variable must be present.
\item The \verb|dat| argument is both input and output, and its
value may be changed even on processes different from the final
result destination.
\item The \verb|dat| argument may also be a long integer scalar.
\item When splitting the operation in two calls, the \verb|dat|
argument must not be accessed between calls:
\ifpdf
\begin{minted}[breaklines=true,bgcolor=bg,fontsize=\small]{fortran}
call psb_min(ctxt,dat,mode=psb_collective_start_,&
& request=min_request)
.......
call psb_min(ctxt,dat,mode=psb_collective_end_,&
& request=min_request)
\end{minted}
\else
\begin{center}
\begin{minipage}[tl]{0.9\textwidth}
\begin{verbatim}
call psb_min(ctxt,dat,mode=psb_collective_start_,request=min_request)
.......
call psb_min(ctxt,dat,mode=psb_collective_end_,request=min_request)
\end{verbatim}
\end{minipage}
\end{center}
\fi
\end{enumerate}
\clearpage\subsection{psb\_amx --- Global maximum absolute value}
@ -597,8 +690,9 @@ Specified as: an integer value $-1<= root <= np-1$, default -1. \\
Scope: {\bf global}.\\
Type: {\bf optional}.\\
Intent: {\bf in}.\\
Specified as: an integer, with the value determined by the bitwise OR
of \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Specified as: an integer value. The action to be taken is determined
by its bit fields, which can be set with bitwise \verb|OR|. Basic
action values are \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous completion).\\
\item[request] A request variable to check for operation completion.\\
Scope: {\bf local}.\\
@ -632,7 +726,27 @@ variable must be present.
\item The \verb|dat| argument is both input and output, and its
value may be changed even on processes different from the final
result destination.
\item The \verb|dat| argument may also be a long integer scalar.
\item When splitting the operation in two calls, the \verb|dat|
argument must not be accessed between calls:
\ifpdf
\begin{minted}[breaklines=true,bgcolor=bg,fontsize=\small]{fortran}
call psb_amx(ctxt,dat,mode=psb_collective_start_,&
& request=amx_request)
.......
call psb_amx(ctxt,dat,mode=psb_collective_end_,&
& request=amx_request)
\end{minted}
\else
\begin{center}
\begin{minipage}[tl]{0.9\textwidth}
\begin{verbatim}
call psb_amx(ctxt,dat,mode=psb_collective_start_,request=amx_request)
.......
call psb_amx(ctxt,dat,mode=psb_collective_end_,request=amx_request)
\end{verbatim}
\end{minipage}
\end{center}
\fi
\end{enumerate}
\clearpage\subsection{psb\_amn --- Global minimum absolute value}
@ -670,8 +784,9 @@ Specified as: an integer value $-1<= root <= np-1$, default -1. \\
Scope: {\bf global}.\\
Type: {\bf optional}.\\
Intent: {\bf in}.\\
Specified as: an integer, with the value determined by the bitwise OR
of \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Specified as: an integer value. The action to be taken is determined
by its bit fields, which can be set with bitwise \verb|OR|. Basic
action values are \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous completion).\\
\item[request] A request variable to check for operation completion.\\
Scope: {\bf local}.\\
@ -705,7 +820,27 @@ variable must be present.
\item The \verb|dat| argument is both input and output, and its
value may be changed even on processes different from the final
result destination.
\item The \verb|dat| argument may also be a long integer scalar.
\item When splitting the operation in two calls, the \verb|dat|
argument must not be accessed between calls:
\ifpdf
\begin{minted}[breaklines=true,bgcolor=bg,fontsize=\small]{fortran}
call psb_amn(ctxt,dat,mode=psb_collective_start_,&
& request=amn_request)
.......
call psb_amn(ctxt,dat,mode=psb_collective_end_,&
& request=amn_request)
\end{minted}
\else
\begin{center}
\begin{minipage}[tl]{0.9\textwidth}
\begin{verbatim}
call psb_amn(ctxt,dat,mode=psb_collective_start_,request=amn_request)
.......
call psb_amn(ctxt,dat,mode=psb_collective_end_,request=amn_request)
\end{verbatim}
\end{minipage}
\end{center}
\fi
\end{enumerate}
\clearpage\subsection{psb\_nrm2 --- Global 2-norm reduction}
@ -743,10 +878,10 @@ Specified as: an integer value $-1<= root <= np-1$, default -1. \\
Scope: {\bf global}.\\
Type: {\bf optional}.\\
Intent: {\bf in}.\\
Specified as: an integer, with the value determined by the bitwise OR
of \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous
completion).\\
Specified as: an integer value. The action to be taken is determined
by its bit fields, which can be set with bitwise \verb|OR|. Basic
action values are \verb|psb_collective_start_|, \verb|psb_collective_end_|.
Default: both fields are selected (i.e. require synchronous completion).\\
\item[request] A request variable to check for operation completion.\\
Scope: {\bf local}.\\
Type: {\bf optional}.\\
@ -785,6 +920,27 @@ variable must be present.
\item The \verb|dat| argument is both input and output, and its
value may be changed even on processes different from the final
result destination.
\item When splitting the operation in two calls, the \verb|dat|
argument must not be accessed between calls:
\ifpdf
\begin{minted}[breaklines=true,bgcolor=bg,fontsize=\small]{fortran}
call psb_nrm2(ctxt,dat,mode=psb_collective_start_,&
& request=nrm2_request)
.......
call psb_nrm2(ctxt,dat,mode=psb_collective_end_,&
& request=nrm2_request)
\end{minted}
\else
\begin{center}
\begin{minipage}[tl]{0.9\textwidth}
\begin{verbatim}
call psb_nrm2(ctxt,dat,mode=psb_collective_start_,request=nrm2_request)
.......
call psb_nrm2(ctxt,dat,mode=psb_collective_end_,request=nrm2_request)
\end{verbatim}
\end{minipage}
\end{center}
\fi
\end{enumerate}

Loading…
Cancel
Save