446 Designing Scientific Applications on GPUs
In Listing 19.1 a sequential version of the proposed PRNG based on chaotic
iterations is presented, which extends the generator family formerly presented
in [4,5]. The xor operator is represented by ˆ. This function uses three classical
64-bit PRNGs, namely the xorshift, the xor128, and the xorwow [13].
In the following, we call them “xor-like PRNGs”. As each xor-like PRNG
uses 64-bits whereas our proposed generator works with 32-bits, we use the
command (unsigned int), which selects the 32 least significant bits of a
given integer, and the code (unsigned int)(t>>32) in order to obtain
the 32 most significant bits of t.
Thus producing a pseudorandom number needs 6 xor operations with 6 32-
bit numbers that