root / man / man3 / HPL_plindx10.3
Historique | Voir | Annoter | Télécharger (2,27 ko)
1 | 1 | equemene | .TH HPL_plindx10 3 "September 10, 2008" "HPL 2.0" "HPL Library Functions" |
---|---|---|---|
2 | 1 | equemene | .SH NAME |
3 | 1 | equemene | HPL_plindx10 \- Compute the logarithmic maps for the spreading. |
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_plindx10(\fR |
9 | 1 | equemene | \fB\&HPL_T_panel *\fR |
10 | 1 | equemene | \fI\&PANEL\fR, |
11 | 1 | equemene | \fB\&const int\fR |
12 | 1 | equemene | \fI\&K\fR, |
13 | 1 | equemene | \fB\&const int *\fR |
14 | 1 | equemene | \fI\&IPID\fR, |
15 | 1 | equemene | \fB\&int *\fR |
16 | 1 | equemene | \fI\&IPLEN\fR, |
17 | 1 | equemene | \fB\&int *\fR |
18 | 1 | equemene | \fI\&IPMAP\fR, |
19 | 1 | equemene | \fB\&int *\fR |
20 | 1 | equemene | \fI\&IPMAPM1\fR |
21 | 1 | equemene | \fB\&);\fR |
22 | 1 | equemene | .SH DESCRIPTION |
23 | 1 | equemene | \fB\&HPL_plindx10\fR |
24 | 1 | equemene | computes three arrays IPLEN, IPMAP and IPMAPM1 that |
25 | 1 | equemene | contain the logarithmic mapping information for the spreading phase. |
26 | 1 | equemene | .SH ARGUMENTS |
27 | 1 | equemene | .TP 8 |
28 | 1 | equemene | PANEL (local input/output) HPL_T_panel * |
29 | 1 | equemene | On entry, PANEL points to the data structure containing the |
30 | 1 | equemene | panel information. |
31 | 1 | equemene | .TP 8 |
32 | 1 | equemene | K (global input) const int |
33 | 1 | equemene | On entry, K specifies the number of entries in IPID. K is at |
34 | 1 | equemene | least 2*N, and at most 4*N. |
35 | 1 | equemene | .TP 8 |
36 | 1 | equemene | IPID (global input) const int * |
37 | 1 | equemene | On entry, IPID is an array of length K. The first K entries |
38 | 1 | equemene | of that array contain the src and final destination resulting |
39 | 1 | equemene | from the application of the interchanges. |
40 | 1 | equemene | .TP 8 |
41 | 1 | equemene | IPLEN (global output) int * |
42 | 1 | equemene | On entry, IPLEN is an array of dimension NPROW + 1. On exit, |
43 | 1 | equemene | this array is such that IPLEN[i] is the number of rows of A |
44 | 1 | equemene | in the processes before process IMAP[i] after the sort, with |
45 | 1 | equemene | the convention that IPLEN[nprow] is the total number of rows. |
46 | 1 | equemene | In other words, IPLEN[i+1] - IPLEN[i] is the local number of |
47 | 1 | equemene | rows of A that should be moved for each process. IPLEN is |
48 | 1 | equemene | such that the number of rows of the source process row can be |
49 | 1 | equemene | computed as IPLEN[1] - IPLEN[0], and the remaining entries of |
50 | 1 | equemene | this array are sorted so that the quantities IPLEN[i+1] - |
51 | 1 | equemene | IPLEN[i] are logarithmically sorted. |
52 | 1 | equemene | .TP 8 |
53 | 1 | equemene | IPMAP (global output) int * |
54 | 1 | equemene | On entry, IPMAP is an array of dimension NPROW. On exit, this |
55 | 1 | equemene | array contains the logarithmic mapping of the processes. In |
56 | 1 | equemene | other words, IPMAP[myrow] is the corresponding sorted process |
57 | 1 | equemene | coordinate. |
58 | 1 | equemene | .TP 8 |
59 | 1 | equemene | IPMAPM1 (global output) int * |
60 | 1 | equemene | On entry, IPMAPM1 is an array of dimension NPROW. On exit, |
61 | 1 | equemene | this array contains the inverse of the logarithmic mapping |
62 | 1 | equemene | contained in IPMAP: IPMAPM1[ IPMAP[i] ] = i, for all i in |
63 | 1 | equemene | [0.. NPROW) |
64 | 1 | equemene | .SH SEE ALSO |
65 | 1 | equemene | .BR HPL_pdlaswp00N \ (3), |
66 | 1 | equemene | .BR HPL_pdlaswp00T \ (3), |
67 | 1 | equemene | .BR HPL_pdlaswp01N \ (3), |
68 | 1 | equemene | .BR HPL_pdlaswp01T \ (3). |