Drop the RNG mult shuffle.

It's surprisingly time-consuming, and until I have data showing that we
need it, I'm going to leave this bit of extra randomness voodoo out.
This commit is contained in:
Steven Robertson 2011-10-28 08:36:27 -04:00
parent 185823ad55
commit a6177edc0d

View File

@ -53,11 +53,6 @@ __device__ float mwc_next_11(mwc_st &st) {
# Create the seed structures. TODO: check that struct is 4-byte aligned # Create the seed structures. TODO: check that struct is 4-byte aligned
seeds = np.empty((3, nthreads), dtype=np.uint32, order='F') seeds = np.empty((3, nthreads), dtype=np.uint32, order='F')
# Randomness in choosing multipliers is good, but larger multipliers
# have longer periods, which is also good. This is a compromise.
mults = np.array(mults[:nthreads*4])
rand.shuffle(mults)
seeds[0][:] = mults[:nthreads] seeds[0][:] = mults[:nthreads]
# Excludes 0xffffffff for 32-bit compatibility with laziness # Excludes 0xffffffff for 32-bit compatibility with laziness