From: couturie <couturie@carcariass.(none)>
Date: Sun, 11 Sep 2011 17:45:23 +0000 (+0200)
Subject: ca continue sur le gpu
X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/prng_gpu.git/commitdiff_plain/a595bc795f31e05fc7fcc8415e1549bdda84b076?ds=sidebyside

ca continue sur le gpu
---

diff --git a/prng_gpu.tex b/prng_gpu.tex
index 081ec9c..730b620 100644
--- a/prng_gpu.tex
+++ b/prng_gpu.tex
@@ -752,7 +752,7 @@ we have chosen to use the ISAAC PRNG to initalize all the parameters for the GPU
 version  of  our  PRNG.  The  implementation  of  the  three xor-like  PRNGs  is
 straightforward  as soon  as their  parameters have  been allocated  in  the GPU
 memory. Each xor-like  PRNGs used works with an internal  number $x$ which keeps
-the  last generated random  numbers. Other  internal variables  are used  by the
+the last generated random numbers. Other internal variables are also used by the
 xor-like PRNGs. More  precisely, the implementation of the  xor128, the xorshift
 and  the xorwow  respectively  require 4,  5  and 6  unsigned  long as  internal
 variables.
@@ -771,10 +771,20 @@ NumThreads: Number of threads\;}
   store internal variables in InternalVarXorLikeArray[threadId]\;
 }
 
-\caption{PRNG with chaotic functions}
-\label{main kernel for the chaotic iterations based PRNG GPU version}
+\caption{main kernel for the chaotic iterations based PRNG GPU version}
+\label{algo:gpu_kernel}
 \end{algorithm}
 
+According to  the available  memory in the  GPU and  the number of  threads used
+simultenaously, the number of random numbers that a thread can generate inside a
+kernel     is     limited,      i.e.      the     variable     \texttt{n}     in
+algorithm~\ref{algo:gpu_kernel}. For example, if  $100,000$ threads are used and
+if $n=100$\footnote{in fact, we need to add the initial seed (a 32-bits number)}
+then   the  memory   required   to  store   internals   variables  of   xor-like
+PRNGs\footnote{we multiply this number by $2$ in order to count 32-bits numbers}
+and  random  number of  our  PRNG  is  equals to  $100,000\times  ((4+5+6)\times
+2+(1+100))=1,310,000$ 32-bits numbers, i.e. about $52$Mb.
+
 \section{Experiments}
 
 On passe le BigCrush\\