RNGTS logo

    Welcome to the home of RNGTS,
the Random Number Generator Test Suite

Examples
Documentation
. License
. Download

Framework
Documentation
. License
Download

Tests
Documentation

Contact
. RNGTS Members

Support
FAQ
Report Bugs
Suggest Features

Other Resources
. Publications
. Presentations

Links
www.comp-phys.org
www.boost.org

 

The RNGTS project (Random Number GeneratorTest Suite) supports a Framework to test random numbers for their quality.

The heart of every Monte Carlo simulation is a source of high quality random numbers and the generator has to be picked carefully. Since the  Ferrenberg affair  it is known to a broad community that statistical tests alone do not suffice to determine the quality of a generator, but also application-based tests are needed. With the inclusion of an extensible random number library and the definition of a generic interface into the revised C++ standard it will be important to have access to an extensive C++ random number test suite. Most currently available test suites are limited to a subset of tests are written in Fortran or C and cannot easily be used with the C++ random number generator library.

The RNGTS project is a generic random number test suite written in C++. The framework is based on the Boost reference implementation of the forthcoming C++ standard random number generator library. The Boost implementation so far contains most modern random number generators. Employing generic programming techniques the test suite is flexible, easily extensible and can be used with any random number generator library, including those written in C and Fortran. Test results are produced in an XML format, which through the use of XSLT transformations allows extraction of summaries or detailed reports, and conversion to HTML, PDF, PostScript or any other format.


At this time, the test suite contains a wide range of different test, including the standard tests described by Knuth, Vattulainen's physical tests, parts of Marsaglia's 'Diehard' test suite, and a number of number of newer tests.

Current status

The first version 1.0 has been released the 04 June 2004
  • The Diehard Tests are included now
  • Multiple other new tests were added
  • 'iterate_test' support for the 'MultipleTest' class added

History

This is the first version (1.0 alpha) of the RNGTS project
  • 22 different random number generator tests (all from Knuth, some from 'Diehard' and the 'Helsinki' suite)
  • supports all random number generator from boost which meet the standard (WG21 Proposal,IV. Proposed Text)

Future Plans

For the next release we plan to provide in addition the following components:
  • Tests, we want to have more Tests...

License

The codes in the RNGTS project are free for non-commercial scientific use as long as the use of RNGTS is acknowledged and cited in any scientific publication based partially or fully on RNGTS libraries and the RNGTS applications, as discussed in the library license, and application license files.

Search RNGTS

Google

Participation

If you are interested in the project or in contributing please consult one of the mailing lists.


Revised 16 March, 2004