]> AND Private Git Repository - prng_gpu.git/commitdiff
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Relecture de l'état de l'art
authorguyeux <guyeux@gmail.com>
Wed, 30 Nov 2011 09:33:54 +0000 (10:33 +0100)
committerguyeux <guyeux@gmail.com>
Wed, 30 Nov 2011 09:33:54 +0000 (10:33 +0100)
prng_gpu.tex

index 3a677e2c2928640219232d2d3a4b926895dfb196..ada74d4d9230ef7321b78df4bc8084b3d1fcd26e 100644 (file)
@@ -173,7 +173,7 @@ A million numbers  per second will be simply written as
 In \cite{Pang:2008:cec}  a PRNG based on  cellular automata is defined
 with no  requirement to an high  precision  integer   arithmetic  or to any bitwise
 operations. Authors can   generate  about
 In \cite{Pang:2008:cec}  a PRNG based on  cellular automata is defined
 with no  requirement to an high  precision  integer   arithmetic  or to any bitwise
 operations. Authors can   generate  about
-3.2MSample/s on a GeForce 7800 GTX GPU, which is quite an old card now.
+3.2MSamples/s on a GeForce 7800 GTX GPU, which is quite an old card now.
 However, there is neither a mention of statistical tests nor any proof of
 chaos or cryptography in this document.
 
 However, there is neither a mention of statistical tests nor any proof of
 chaos or cryptography in this document.
 
@@ -186,26 +186,31 @@ However the evaluations of the proposed PRNGs are only statistical ones.
 
 
 Authors of~\cite{conf/fpga/ThomasHL09}  have studied the  implementation of some
 
 
 Authors of~\cite{conf/fpga/ThomasHL09}  have studied the  implementation of some
-PRNGs on  diferrent computing architectures: CPU,  field-programmable gate array
-(FPGA), GPU and massively parallel  processor. This study is interesting because
-it  shows the  performance  of the  same  PRNGs on  different architectures.   For
-example,  the FPGA  is globally  the  fastest architecture  and it  is also  the
-efficient one because it provides the fastest number of generated random numbers
-per joule. Concerning the GPU,  authors can generate betweend 11 and 16GSample/s
-with a GTX 280  GPU. The drawback of this work is  that those PRNGs only succeed
-the {\it Crush} test which is easier than the {\it Big Crush} test.
-
-Cuda  has developped  a  library for  the  generation of  random numbers  called
-Curand~\cite{curand11}.        Several       PRNGs        are       implemented:
-Xorwow~\cite{Marsaglia2003} and  some variants of Sobol. Some  tests report that
-the  fastest version provides  15GSample/s on  the new  Fermi C2050  card. Their
-PRNGs fail to succeed the whole tests of TestU01 on only one test.
+PRNGs on  different computing architectures: CPU,  field-programmable gate array
+(FPGA), massively parallel  processors, and GPU. This study is of interest, because
+the  performance  of the  same  PRNGs on  different architectures are compared. 
+FPGA appears as  the  fastest  and the most
+efficient architecture, providing the fastest number of generated pseudorandom numbers
+per joule. 
+However, we can notice that authors can ``only'' generate between 11 and 16GSamples/s
+with a GTX 280  GPU, which should be compared with
+the results presented in this document.
+We can remark too that the PRNGs proposed in~\cite{conf/fpga/ThomasHL09} are only
+able to pass the {\it Crush} battery, which is very easy compared to the {\it Big Crush} one.
+
+Lastly, Cuda  has developed  a  library for  the  generation of  pseudorandom numbers  called
+Curand~\cite{curand11}.        Several       PRNGs        are       implemented, among
+other things 
+Xorwow~\cite{Marsaglia2003} and  some variants of Sobol. The  tests reported show that
+their  fastest version provides  15GSamples/s on  the new  Fermi C2050  card. 
+But their PRNGs cannot pass the whole TestU01 battery (only one test is failed).
 \newline
 \newline
 \newline
 \newline
-To the best of our knowledge no GPU implementation have been proven to have chaotic properties.
+We can finally remark that, to the best of our knowledge, no GPU implementation have been proven to be chaotic, and the cryptographically secure property is surprisingly never regarded.
 
 \section{Basic Recalls}
 \label{section:BASIC RECALLS}
 
 \section{Basic Recalls}
 \label{section:BASIC RECALLS}
+
 This section is devoted to basic definitions and terminologies in the fields of
 topological chaos and chaotic iterations.
 \subsection{Devaney's Chaotic Dynamical Systems}
 This section is devoted to basic definitions and terminologies in the fields of
 topological chaos and chaotic iterations.
 \subsection{Devaney's Chaotic Dynamical Systems}