From: Norman V. <nh...@ca...> - 2007-12-29 09:58:52
|
Erik Hofman writes: > > Christian Mayer wrote: > > > This might be a case where the great BOOST Project might help us: > > > > http://www.boost.org/libs/random/index.html > > One thing to keep in mind when using random generators is > that it would > be realy nice (if not required) to generate the same output on all > supported platforms. That means everybody in a multi player > environment > would see the same objects at the same location. > > That was the main motivation for using the one that is included in > SimGear instead of a system supplied version. I would like to point out that the Simgear random number generator is one of the Boost::Random variants http://www.boost.org/libs/random/random-generators.html#mersenne_twister Note there is now a faster implementation available from the original authors http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/index.html """ SFMT is a new variant of Mersenne Twister (MT) introduced by Mutsuo Saito and Makoto Matsumoto in 2006. The algorithm was reported at MCQMC 2006. The article will apper in the proceedings of MCQMC2006. (see Prof. Matsumoto's Papers on random number generation.) SFMT is a Linear Feedbacked Shift Register (LFSR) generator that generates a 128-bit pseudorandom integer at one step. SFMT is designed with recent parallelism of modern CPUs, such as multi-stage pipelining and SIMD (e.g. 128-bit integer) instructions. It supports 32-bit and 64-bit integers, as well as double precision floating point as output. SFMT is much faster than MT, in most platforms. Not only the speed, but also the dimensions of equidistributions at v-bit precision are improved. In addition, recovery from 0-excess initial state is much faster. See Master's Thesis of Mutsuo Saito for detail (submitted). """ Norman |