1HPL_pdmatgen(3) HPL Library Functions HPL_pdmatgen(3)
2
3
4
6 HPL_pdmatgen - Parallel random matrix generator.
7
9 #include "hpl.h"
10
11 void HPL_pdmatgen( const HPL_T_grid * GRID, const int M, const int N,
12 const int NB, double * A, const int LDA, const int ISEED );
13
15 HPL_pdmatgen generates (or regenerates) a parallel random matrix A.
16
17 The pseudo-random generator uses the linear congruential algorithm:
18 X(n+1) = (a * X(n) + c) mod m as described in the Art of Computer
19 Programming, Knuth 1973, Vol. 2.
20
22 GRID (local input) const HPL_T_grid *
23 On entry, GRID points to the data structure containing the
24 process grid information.
25
26 M (global input) const int
27 On entry, M specifies the number of rows of the matrix A.
28 M must be at least zero.
29
30 N (global input) const int
31 On entry, N specifies the number of columns of the matrix A.
32 N must be at least zero.
33
34 NB (global input) const int
35 On entry, NB specifies the blocking factor used to partition
36 and distribute the matrix A. NB must be larger than one.
37
38 A (local output) double *
39 On entry, A points to an array of dimension (LDA,LocQ(N)).
40 On exit, this array contains the coefficients of the randomly
41 generated matrix.
42
43 LDA (local input) const int
44 On entry, LDA specifies the leading dimension of the array A.
45 LDA must be at least max(1,LocP(M)).
46
47 ISEED (global input) const int
48 On entry, ISEED specifies the seed number to generate the
49 matrix A. ISEED must be at least zero.
50
52 HPL_ladd (3), HPL_lmul (3), HPL_setran (3), HPL_xjumpm (3),
53 HPL_jumpit (3), HPL_drand (3).
54
55
56
57HPL 2.1 October 26, 2012 HPL_pdmatgen(3)