Developer Reference

Contents

MT2203

This is a set of 6024 Mersenne Twister pseudorandom number generators (
j
= 1, ..., 6024):
,
,
,                      
,                                    
,               
,
.
Matrix
Aj
(32x32) has the following format:
with the 32-bit vector
aj = a
31,
j
...
a
0,
j
.
The set of 6024 basic pseudorandom number generators MT2203 is a natural addition to MT19937 generator. MT2203 generators are intended for use in large scale Monte Carlo simulations performed on multi-processor computer systems. These generators possess a smaller period length but the number of 2
2203
to the method described in [Matsum2000].
Real Implementation (Single and Double Precision)
The output vector is the sequence of the floating-point values
u
0
,
u
1
, ... .
Integer Implementation
The output vector of 32-bit integers
y
0,
j
,
y
1,
j
, ... .
Stream Initialization by Function
vslNewStream
MT2203 generates the stream and initializes it specifying the input 32-bit unsigned integer parameter seed. The stream state, that is, the array of 69 32-bit integers
x
0
, ...,
x
68
, is initialized by the procedure described in [MT2002] and based on the seed value.
MT2203 generator is a set of 6024 basic generators. To select an MT2203 generator, add an offset to the named constant
VSL_BRNG_MT2203
, for example,
VSL_BRNG_MT2203+0, VSL_BRNG_ MT2203+1, ...
. The following example illustrates the initialization of the 10th (of 6024) MT2203 generator:
vslNewStream (&stream, VSL_BRNG_MT2203+9, seed);
Stream Initialization of Function
vslNewStreamEx
MT2203 generates the stream and initializes it specifying the array
params[]
of
n
32-bit unsigned integers:
  1. If
    n
    ≥ 1, perform initialization as described in [MT2002] using array
    params[]
    on input.
  2. If
    n
    = 0, assume params[0] = 1,
    n
    = 1 and perform initialization as described in the previous item.
Subsequences Selection Methods
vslSkipAheadStream
Not supported
vslSkipAheadStreamEx
Not supported
vslLeapfrogStream
Not supported
Generator Period
Empirical Testing Results Summary
Test Name
vsRngUniform
vdRngUniform
viRngUniform
viRngUniformBits
3D Spheres Test
OK (20% errors) 
OK (20% errors) 
Not applicable
OK (20% errors) 
Birthday Spacing Test
Not applicable
Not applicable
Not applicable 
OK (0% errors) 
Bitstream Test
Not applicable
Not applicable
Not applicable 
OK (15% errors) 
Rank of 31x31 Binary Matrices Test
Not applicable
Not applicable 
Not applicable
OK (10% errors) 
Rank of 32x32 Binary Matrices Test
Not applicable
Not applicable
Not applicable
OK (0% errors) 
Rank of 6x8 Binary Matrices Test
Not applicable
Not applicable
Not applicable
OK (0% errors) 
Counts-the-1’s Test (stream of bits)
Not applicable
Not applicable 
Not applicable
OK (0% errors) 
Counts-the-1’s Test (stream of specific bytes)
Not applicable
Not applicable
Not applicable
OK (0% errors) 
Craps Test
OK (20% errors) 
OK (20% errors) 
OK (20% errors) 
OK (20% errors) 
Parking Lot Test
OK (0% errors) 
OK (0% errors) 
Not applicable
OK (0% errors) 
2D Self-Avoiding Random Walk Test
OK (10% errors) 
OK (0% errors) 
Not applicable
OK (0% errors) 
Note
  1. The tabulated data is obtained using the one-level (threshold) testing technique. The OK result indicates FAIL < 50%. The run fails when p-value falls outside the interval [0.05, 0.95].
  2. The stream tested is generated by calling the function
    vslNewStream
    with seed=7,777,777. 

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804