Pointer to the stream state structure to which block-splitting method is applied
Number of summands in
Partitioned number of skipped elements
VSLStreamStatePtr stream1; VSLStreamStatePtr stream2; VSLStreamStatePtr stream3; /* Creating the 1st stream */ status = vslNewStream(&stream1, VSL_BRNG_MCG31, 174); /* To skip 2^64 elements in the random stream SkipAheadStreamEx(nskip) function should be called with nskip represented as nskip = 2^64 = 0 + 1 * 2^64 */ MKL_UINT64 nskip; nskip=0; nskip=1; /* Skipping ahead by 2^64 elements the 2nd stream /* status = vslCopyStream(&stream2, stream1); status = vslSkipAheadStreamEx (stream2, 2, nskip); /* Skipping ahead by 2^64 elements the 3rd stream /* status = vslCopyStream(&stream3, stream2); status = vslSkipAheadStreamEx (stream3, 2, nskip); /* Generating random numbers */ ... /* Deleting the streams */ status = vslDeleteStream(&stream1); status = vslDeleteStream(&stream2); status = vslDeleteStream(&stream3); ...
- Indicates no error, execution is successful.
- streamis aNULLpointer.
- streamis not a valid random stream.
- BRNG does not support the advanced Skip-Ahead method.