Statistiques
| Révision :

root / www / HPL_pdmxswp.html

Historique | Voir | Annoter | Télécharger (3,24 ko)

1
<HTML>
2
<HEAD>
3
<TITLE>HPL_pdmxswp HPL 2.0 Library Functions September 10, 2008</TITLE> 
4
</HEAD>
5

    
6
<BODY BGCOLOR="WHITE" TEXT = "#000000" LINK = "#0000ff" VLINK = "#000099"
7
      ALINK = "#ffff00">
8

    
9
<H1>Name</H1>
10
<B>HPL_pdmxswp</B> swaps and broacast the pivot row.
11

    
12
<H1>Synopsis</H1>
13
<CODE>#include "hpl.h"</CODE><BR><BR>
14
<CODE>void</CODE>
15
<CODE>HPL_pdmxswp(</CODE>
16
<CODE>HPL_T_panel *</CODE>
17
<CODE>PANEL</CODE>,
18
<CODE>const int</CODE>
19
<CODE>M</CODE>,
20
<CODE>const int</CODE>
21
<CODE>II</CODE>,
22
<CODE>const int</CODE>
23
<CODE>JJ</CODE>,
24
<CODE>double *</CODE>
25
<CODE>WORK</CODE>
26
<CODE>);</CODE>
27

    
28
<H1>Description</H1>
29
<B>HPL_pdmxswp</B>
30
swaps  and  broadcasts  the  absolute value max row using
31
bi-directional exchange.  The buffer is partially set by HPL_dlocmax.
32
 
33
Bi-directional  exchange  is  used  to  perform  the  swap::broadcast
34
operations  at once  for one column in the panel.  This  results in a
35
lower number of slightly larger  messages than usual.  On P processes
36
and assuming bi-directional links,  the running time of this function
37
can be approximated by
38
 
39
   log_2( P ) * ( lat + ( 2 * N0 + 4 ) / bdwth )
40
 
41
where  lat and bdwth are the latency and bandwidth of the network for
42
double precision real elements.  Communication  only  occurs  in  one
43
process  column. Mono-directional links  will cause the communication
44
cost to double.
45

    
46
<H1>Arguments</H1>
47
<PRE>
48
PANEL   (local input/output)          HPL_T_panel *
49
        On entry,  PANEL  points to the data structure containing the
50
        panel information.
51
</PRE>
52
<PRE>
53
M       (local input)                 const int
54
        On entry,  M specifies the local number of rows of the matrix
55
        column on which this function operates.
56
</PRE>
57
<PRE>
58
II      (local input)                 const int
59
        On entry, II  specifies the row offset where the column to be
60
        operated on starts with respect to the panel.
61
</PRE>
62
<PRE>
63
JJ      (local input)                 const int
64
        On entry, JJ  specifies the column offset where the column to
65
        be operated on starts with respect to the panel.
66
</PRE>
67
<PRE>
68
WORK    (local workspace)             double *
69
        On entry, WORK  is a workarray of size at least 2 * (4+2*N0).
70
        It  is assumed that  HPL_dlocmax  was called  prior  to  this
71
        routine to  initialize  the first four entries of this array.
72
        On exit, the  N0  length max row is stored in WORK[4:4+N0-1];
73
        Note that this is also the  JJth  row  (or column) of L1. The
74
        remaining part is used as a temporary array.
75
</PRE>
76

    
77
<H1>See Also</H1>
78
<A HREF="HPL_dlocmax.html">HPL_dlocmax</A>,
79
<A HREF="HPL_dlocswpN.html">HPL_dlocswpN</A>,
80
<A HREF="HPL_dlocswpT.html">HPL_dlocswpT</A>,
81
<A HREF="HPL_pdpancrN.html">HPL_pdpancrN</A>,
82
<A HREF="HPL_pdpancrT.html">HPL_pdpancrT</A>,
83
<A HREF="HPL_pdpanllN.html">HPL_pdpanllN</A>,
84
<A HREF="HPL_pdpanllT.html">HPL_pdpanllT</A>,
85
<A HREF="HPL_pdpanrlN.html">HPL_pdpanrlN</A>,
86
<A HREF="HPL_pdpanrlT.html">HPL_pdpanrlT</A>,
87
<A HREF="HPL_pdrpancrN.html">HPL_pdrpancrN</A>,
88
<A HREF="HPL_pdrpancrT.html">HPL_pdrpancrT</A>,
89
<A HREF="HPL_pdrpanllN.html">HPL_pdrpanllN</A>,
90
<A HREF="HPL_pdrpanllT.html">HPL_pdrpanllT</A>,
91
<A HREF="HPL_pdrpanrlN.html">HPL_pdrpanrlN</A>,
92
<A HREF="HPL_pdrpanrlT.html">HPL_pdrpanrlT</A>,
93
<A HREF="HPL_pdfact.html">HPL_pdfact</A>.
94

    
95
</BODY>
96
</HTML>