./devel/hs-splitmix, Fast Splittable PRNG

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: pkgsrc-2020Q1, Version: 0.0.3, Package name: hs-splitmix-0.0.3, Maintainer: pho

Pure Haskell implementation of SplitMix described in

Guy L. Steele, Jr., Doug Lea, and Christine H. Flood. 2014. Fast
splittable pseudorandom number generators. In Proceedings of the 2014
ACM International Conference on Object Oriented Programming Systems
Languages & Applications (OOPSLA '14). ACM, New York, NY, USA,
453-472. DOI: https://doi.org/10.1145/2660193.2660195

The paper describes a new algorithm SplitMix for splittable
pseudorandom number generator that is quite fast: 9 64 bit
arithmetic/logical operations per 64 bits generated.

SplitMix is tested with two standard statistical test suites
(DieHarder and TestU01, this implementation only using the former) and
it appears to be adequate for "everyday" use, such as Monte Carlo
algorithms and randomized data structures where speed is important.

In particular, it should not be used for cryptographic or security
applications, because generated sequences of pseudorandom values are
too predictable (the mixing functions are easily inverted, and two
successive outputs suffice to reconstruct the internal state).


Master sites:

SHA1: f6ee5e20c0d7e7c6771e92b7db2422910ecf67c9
RMD160: 2f34290b5a72c2a49ac8aed8bfa85bd55111f2e1
Filesize: 13.297 KB

Version history: (Expand)