1HPL_xjumpm(3) HPL Library Functions HPL_xjumpm(3)
2
3
4
6 HPL_xjumpm - Compute constants to jump in the random sequence.
7
9 #include "hpl.h"
10
11 void HPL_xjumpm( const int JUMPM, int * MULT, int * IADD, int * IRANN,
12 int * IRANM, int * IAM, int * ICM );
13
15 HPL_xjumpm computes the constants A and C to jump JUMPM numbers in
16 the random sequence: X(n+JUMPM) = A*X(n)+C. The constants encoded in
17 MULT and IADD specify how to jump from one entry in the sequence to
18 the next.
19
21 JUMPM (local input) const int
22 On entry, JUMPM specifies the number of entries in the
23 sequence to jump over. When JUMPM is less or equal than zero, A
24 and C are not computed, IRANM is set to IRANN corresponding to
25 a jump of size zero.
26
27 MULT (local input) int *
28 On entry, MULT is an array of dimension 2, that contains the
29 16-lower and 15-higher bits of the constant a to jump from
30 X(n) to X(n+1) = a*X(n) + c in the random sequence.
31
32 IADD (local input) int *
33 On entry, IADD is an array of dimension 2, that contains the
34 16-lower and 15-higher bits of the constant c to jump from
35 X(n) to X(n+1) = a*X(n) + c in the random sequence.
36
37 IRANN (local input) int *
38 On entry, IRANN is an array of dimension 2. that contains the
39 16-lower and 15-higher bits of the encoding of X(n).
40
41 IRANM (local output) int *
42 On entry, IRANM is an array of dimension 2. On exit, this
43 array contains respectively the 16-lower and 15-higher bits
44 of the encoding of X(n+JUMPM).
45
46 IAM (local output) int *
47 On entry, IAM is an array of dimension 2. On exit, when JUMPM
48 is greater than zero, this array contains the encoded
49 constant A to jump from X(n) to X(n+JUMPM) in the random
50 sequence. IAM(0:1) contains respectively the 16-lower and
51 15-higher bits of this constant A. When JUMPM is less or
52 equal than zero, this array is not referenced.
53
54 ICM (local output) int *
55 On entry, ICM is an array of dimension 2. On exit, when JUMPM
56 is greater than zero, this array contains the encoded
57 constant C to jump from X(n) to X(n+JUMPM) in the random
58 sequence. ICM(0:1) contains respectively the 16-lower and
59 15-higher bits of this constant C. When JUMPM is less or
60 equal than zero, this array is not referenced.
61
63 HPL_ladd (3), HPL_lmul (3), HPL_setran (3), HPL_jumpit (3),
64 HPL_rand (3).
65
66
67
68HPL 2.2 February 24, 2016 HPL_xjumpm(3)