Parallel Mersenne Twister

The problem of random number generation is important for many different tasks, particularly the simulation of physical and mathematical systems using Monte-Carlo methods. The iterative nature of most random number generators doesn't map very well onto the traditional graphics GPGPU paradigm because of its limitations on the number and position of memory outputs. This sample demonstrates how the Mersenne Twister, one of the best available random number generators, can be implemented in parallel using the CUDA programming model.