eholk / harlan

A language for GPU computing.
Other
1.19k stars 82 forks source link

Add a random number generator to the library #113

Closed eholk closed 10 years ago

eholk commented 10 years ago

For larger benchmarks, we need a good random number generator that can be used from different kernel threads.

@nwhusted recommends a parallel Mersenne Twister, such as MTGP32. The following paper describes the algorithm: http://www.math.sci.hiroshima-u.ac.jp/~%20m-mat/MT/MTGP/mtgp3.pdf

We should also implement a test for randomness to make sure it's correctly implemented. The following site seems to have a pretty comprehensive random number test suite: https://www.iro.umontreal.ca/~simardr/testu01/tu01.html