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

Private GIT Repository
modif reponse aux reviewers
[prng_gpu.git] / prng_gpu.tex
index 8d4f21bc587cdb03dc563cf63bd271e9027d5ca7..27702e86deb5c8a719f4556331f233075bfe5a68 100644 (file)
@@ -1544,20 +1544,20 @@ NumThreads: Number of threads\;
 array\_comb1, array\_comb2: Arrays containing combinations of size combination\_size\;}
 
 \KwOut{NewNb: array containing random numbers in global memory}
 array\_comb1, array\_comb2: Arrays containing combinations of size combination\_size\;}
 
 \KwOut{NewNb: array containing random numbers in global memory}
-\If{threadId is concerned} {
-  retrieve data from InternalVarXorLikeArray[threadId] in local variables including shared memory and x\;
+\If{threadIdx is concerned} {
+  retrieve data from InternalVarXorLikeArray[threadIdx] in local variables including shared memory and x\;
   offset = threadIdx\%combination\_size\;
   o1 = threadIdx-offset+array\_comb1[offset]\;
   o2 = threadIdx-offset+array\_comb2[offset]\;
   \For{i=1 to n} {
     t=xor-like()\;
     t=t\textasciicircum shmem[o1]\textasciicircum shmem[o2]\;
   offset = threadIdx\%combination\_size\;
   o1 = threadIdx-offset+array\_comb1[offset]\;
   o2 = threadIdx-offset+array\_comb2[offset]\;
   \For{i=1 to n} {
     t=xor-like()\;
     t=t\textasciicircum shmem[o1]\textasciicircum shmem[o2]\;
-    shared\_mem[threadId]=t\;
+    shared\_mem[threadIdx]=t\;
     x = x\textasciicircum t\;
 
     x = x\textasciicircum t\;
 
-    store the new PRNG in NewNb[NumThreads*threadId+i]\;
+    store the new PRNG in NewNb[NumThreads*threadIdx+i]\;
   }
   }
-  store internal variables in InternalVarXorLikeArray[threadId]\;
+  store internal variables in InternalVarXorLikeArray[threadIdx]\;
 }
 \end{small}
 \caption{Main kernel for the chaotic iterations based PRNG GPU efficient
 }
 \end{small}
 \caption{Main kernel for the chaotic iterations based PRNG GPU efficient
@@ -1947,8 +1947,8 @@ array\_shift[4]=\{0,1,3,7\}\;
 }
 
 \KwOut{NewNb: array containing random numbers in global memory}
 }
 
 \KwOut{NewNb: array containing random numbers in global memory}
-\If{threadId is concerned} {
-  retrieve data from InternalVarBBSArray[threadId] in local variables including shared memory and x\;
+\If{threadIdx is concerned} {
+  retrieve data from InternalVarBBSArray[threadIdx] in local variables including shared memory and x\;
   we consider that bbs1 ... bbs8 represent the internal states of the 8 BBS numbers\;
   offset = threadIdx\%combination\_size\;
   o1 = threadIdx-offset+array\_comb[bbs1\&7][offset]\;
   we consider that bbs1 ... bbs8 represent the internal states of the 8 BBS numbers\;
   offset = threadIdx\%combination\_size\;
   o1 = threadIdx-offset+array\_comb[bbs1\&7][offset]\;
@@ -1967,12 +1967,12 @@ array\_shift[4]=\{0,1,3,7\}\;
     t$<<$=shift\;
     t|=BBS2(bbs2)\&array\_shift[shift]\;
     t=t\textasciicircum  shmem[o1]\textasciicircum     shmem[o2]\;
     t$<<$=shift\;
     t|=BBS2(bbs2)\&array\_shift[shift]\;
     t=t\textasciicircum  shmem[o1]\textasciicircum     shmem[o2]\;
-    shared\_mem[threadId]=t\;
+    shared\_mem[threadIdx]=t\;
     x = x\textasciicircum   t\;
 
     x = x\textasciicircum   t\;
 
-    store the new PRNG in NewNb[NumThreads*threadId+i]\;
+    store the new PRNG in NewNb[NumThreads*threadIdx+i]\;
   }
   }
-  store internal variables in InternalVarXorLikeArray[threadId] using a rotation\;
+  store internal variables in InternalVarXorLikeArray[threadIdx] using a rotation\;
 }
 \end{small}
 \caption{main kernel for the BBS based PRNG GPU}
 }
 \end{small}
 \caption{main kernel for the BBS based PRNG GPU}