1HPL_pdlaswp00N(3) HPL Library Functions HPL_pdlaswp00N(3)
2
3
4
6 HPL_pdlaswp00N - Broadcast a column panel L and swap the row panel U.
7
9 #include "hpl.h"
10
11 void HPL_pdlaswp00N( HPL_T_panel * PBCST, int * IFLAG, HPL_T_panel *
12 PANEL, const int NN );
13
15 HPL_pdlaswp00N applies the NB row interchanges to NN columns of the
16 trailing submatrix and broadcast a column panel.
17
18 Bi-directional exchange is used to perform the swap :: broadcast of
19 the row panel U at once, resulting in a lower number of messages than
20 usual as well as a lower communication volume. With P process rows and
21 assuming bi-directional links, the running time of this function can
22 be approximated by:
23
24 log_2(P) * (lat + NB*LocQ(N) / bdwth)
25
26 where NB is the number of rows of the row panel U, N is the global
27 number of columns being updated, lat and bdwth are the latency and
28 bandwidth of the network for double precision real words. Mono
29 directional links will double this communication cost.
30
32 PBCST (local input/output) HPL_T_panel *
33 On entry, PBCST points to the data structure containing the
34 panel (to be broadcast) information.
35
36 IFLAG (local input/output) int *
37 On entry, IFLAG indicates whether or not the broadcast has
38 already been completed. If not, probing will occur, and the
39 outcome will be contained in IFLAG on exit.
40
41 PANEL (local input/output) HPL_T_panel *
42 On entry, PANEL points to the data structure containing the
43 panel (to be broadcast and swapped) information.
44
45 NN (local input) const int
46 On entry, NN specifies the local number of columns of the
47 trailing submatrix to be swapped and broadcast starting at
48 the current position. NN must be at least zero.
49
51 HPL_pdgesv (3), HPL_pdgesvK2 (3), HPL_pdupdateNN (3), HPL_pdup‐
52 dateTN (3), HPL_pipid (3), HPL_plindx0 (3), HPL_dlaswp01N (3),
53 HPL_dlaswp02N (3), HPL_dlaswp03N (3), HPL_dlaswp04N (3),
54 HPL_dlaswp05N (3).
55
56
57
58HPL 2.2 February 24, 2016 HPL_pdlaswp00N(3)