Statistiques
| Révision :

root / man / man3 / HPL_pdlaswp01N.3

Historique | Voir | Annoter | Télécharger (2,28 ko)

1 1 equemene
.TH HPL_pdlaswp01N 3 "September 10, 2008" "HPL 2.0" "HPL Library Functions"
2 1 equemene
.SH NAME
3 1 equemene
HPL_pdlaswp01N \- Broadcast a column panel L and swap the row panel U.
4 1 equemene
.SH SYNOPSIS
5 1 equemene
\fB\&#include "hpl.h"\fR
6 1 equemene
7 1 equemene
\fB\&void\fR
8 1 equemene
\fB\&HPL_pdlaswp01N(\fR
9 1 equemene
\fB\&HPL_T_panel *\fR
10 1 equemene
\fI\&PBCST\fR,
11 1 equemene
\fB\&int *\fR
12 1 equemene
\fI\&IFLAG\fR,
13 1 equemene
\fB\&HPL_T_panel *\fR
14 1 equemene
\fI\&PANEL\fR,
15 1 equemene
\fB\&const int\fR
16 1 equemene
\fI\&NN\fR
17 1 equemene
\fB\&);\fR
18 1 equemene
.SH DESCRIPTION
19 1 equemene
\fB\&HPL_pdlaswp01N\fR
20 1 equemene
applies the  NB  row interchanges to  NN columns of the
21 1 equemene
trailing submatrix and broadcast a column panel.
22 1 equemene
23 1 equemene
A "Spread then roll" algorithm performs  the swap :: broadcast  of the
24 1 equemene
row panel U at once,  resulting in a minimal communication volume  and
25 1 equemene
a "very good"  use of the connectivity if available.  With  P  process
26 1 equemene
rows  and  assuming  bi-directional links,  the  running time  of this
27 1 equemene
function can be approximated by:
28 1 equemene
29 1 equemene
   (log_2(P)+(P-1)) * lat +   K * NB * LocQ(N) / bdwth
30 1 equemene
31 1 equemene
where  NB  is the number of rows of the row panel U,  N is the global
32 1 equemene
number of columns being updated,  lat and bdwth  are the latency  and
33 1 equemene
bandwidth  of  the  network  for  double  precision real words.  K is
34 1 equemene
a constant in (2,3] that depends on the achieved bandwidth  during  a
35 1 equemene
simultaneous  message exchange  between two processes.  An  empirical
36 1 equemene
optimistic value of K is typically 2.4.
37 1 equemene
.SH ARGUMENTS
38 1 equemene
.TP 8
39 1 equemene
PBCST   (local input/output)    HPL_T_panel *
40 1 equemene
On entry,  PBCST  points to the data structure containing the
41 1 equemene
panel (to be broadcast) information.
42 1 equemene
.TP 8
43 1 equemene
IFLAG   (local input/output)    int *
44 1 equemene
On entry, IFLAG  indicates  whether or not  the broadcast has
45 1 equemene
already been completed.  If not,  probing will occur, and the
46 1 equemene
outcome will be contained in IFLAG on exit.
47 1 equemene
.TP 8
48 1 equemene
PANEL   (local input/output)    HPL_T_panel *
49 1 equemene
On entry,  PANEL  points to the data structure containing the
50 1 equemene
panel information.
51 1 equemene
.TP 8
52 1 equemene
NN      (local input)           const int
53 1 equemene
On entry, NN specifies  the  local  number  of columns of the
54 1 equemene
trailing  submatrix  to  be swapped and broadcast starting at
55 1 equemene
the current position. NN must be at least zero.
56 1 equemene
.SH SEE ALSO
57 1 equemene
.BR HPL_pdgesv \ (3),
58 1 equemene
.BR HPL_pdgesvK2 \ (3),
59 1 equemene
.BR HPL_pdupdateNN \ (3),
60 1 equemene
.BR HPL_pdupdateTN \ (3),
61 1 equemene
.BR HPL_pipid \ (3),
62 1 equemene
.BR HPL_plindx1 \ (3),
63 1 equemene
.BR HPL_plindx10 \ (3),
64 1 equemene
.BR HPL_spreadN \ (3),
65 1 equemene
.BR HPL_equil \ (3),
66 1 equemene
.BR HPL_rollN \ (3),
67 1 equemene
.BR HPL_dlaswp00N \ (3),
68 1 equemene
.BR HPL_dlaswp01N \ (3),
69 1 equemene
.BR HPL_dlaswp06N \ (3).