@hackage mwc-random0.4.1
Fast, high quality pseudo random numbers
Categories
License
BSD-3-Clause
Maintainer
Bryan O'Sullivan <bos@serpentine.com>
Links
- Homepage
- Documentation
- No source repository
- Security
Versions
Installation
Dependencies (3)
Dependents (183)
@hackage/pava, @hackage/accelerate-bignum, @hackage/random, @hackage/vinyl, @hackage/online, @hackage/critbit, Show all…
Efficient, general purpose pseudo-random number generation
This package provides the System.Random.MWC module, a Haskell library for generating high-quality pseudo-random numbers in a space- and time-efficient way.
Performance
This library has been carefully optimised for high performance. To obtain the best runtime efficiency, it is imperative to compile libraries and applications that use this library using a high level of optimisation.
Suggested GHC options:
-O -fvia-C -funbox-strict-fields
To illustrate, here are the times (in seconds) to generate and sum 250 million random Word32 values, on a laptop with a 2.4GHz Core2 Duo P8600 processor, running Fedora 11 and GHC 6.10.3:
no flags 200+ -O 1.249 -O -fvia-C 0.991
As the numbers above suggest, compiling without optimisation will yield unacceptable performance.
Get involved!
Please feel welcome to contribute new code or bug fixes. You can fetch the source repository from here:
darcs get http://darcs.serpentine.com/mwc-random
Authors
Bryan O'Sullivan bos@serpentine.com