X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/prng_gpu.git/blobdiff_plain/77973c61177ccd9f68459a2095c29d48d11af26f..7c04da8823a9d68e733d60060a68207fce376a96:/prng_gpu.tex?ds=sidebyside diff --git a/prng_gpu.tex b/prng_gpu.tex index e177e24..f048253 100644 --- a/prng_gpu.tex +++ b/prng_gpu.tex @@ -47,12 +47,12 @@ unsigned int CIprng() \{\\ unsigned long t1 = xorshift();\\ unsigned long t2 = xor128();\\ unsigned long t3 = xorwow();\\ - x = x\^\ (unsigned int)t1;\\ - x = x\^\ (unsigned int)(t2$>>$32);\\ - x = x\^\ (unsigned int)(t3$>>$32);\\ - x = x\^\ (unsigned int)t2;\\ - x = x\^\ (unsigned int)(t1$>>$32);\\ - x = x\^\ (unsigned int)t3;\\ + x = x\textasciicircum (unsigned int)t1;\\ + x = x\textasciicircum (unsigned int)(t2$>>$32);\\ + x = x\textasciicircum (unsigned int)(t3$>>$32);\\ + x = x\textasciicircum (unsigned int)t2;\\ + x = x\textasciicircum (unsigned int)(t1$>>$32);\\ + x = x\textasciicircum (unsigned int)t3;\\ return x;\\ \} \end{minipage} @@ -63,12 +63,14 @@ unsigned int CIprng() \{\\ \end{figure} In Figure~\ref{algo:seqCIprng} a sequential version of our chaotic iterations -based PRNG is presented. This version uses three classical 64-bits PRNG: the +based PRNG is presented. This version uses three classical 64 bits PRNG: the \texttt{xorshift}, the \texttt{xor128} and the \texttt{xorwow}. These three -PRNGs are presented in~\cite{Marsaglia2003}. As each PRNG used works with -64-bits and as our PRNG works with 32-bits, the use of \texttt{(unsigned int)} +PRNGs are presented in~\cite{Marsaglia2003}. As each PRNG used works with +64-bits and as our PRNG works with 32 bits, the use of \texttt{(unsigned int)} selects the 32 least significant bits whereas \texttt{(unsigned int)(t3$>>$32)} -selects the 32 bits most significants bits of the variable \texttt{t}. +selects the 32 most significants bits of the variable \texttt{t}. This version +sucesses the BigCrush of the TestU01 battery [P. L’ecuyer and + R. Simard. Testu01]. \section{Efficient prng based on chaotic iterations on GPU}