RDieHarder is an R program that allows users to interface with the DieHarder random number generator test suite.
The rationale behind creating RDieHarder is to use GNU R to enable further analysis and visualization of the test results. By doing this, the software aims to help with the development of further tests statistics for RNGs, as well as to facilitate new or different analysis of the existing test statistics. The package's future goals include allowing for the analysis of user-contributed RNGs that are supplied via R's interface, analysis of parallel RNGs like SPRNG and some of Pierre L'Ecuyer's parallel generators (both of which R can use for parallel/high-performance computing), and analysis of other generators accessible to R such as the AES generator packaged by Thomas Lumley.
Using RDieHarder is straightforward. All you need to do is load the package and call the dieharder function. For instance, this command is used to test a 'randu' generator known to be one of the worst available ones:
> library(RDieHarder)
> dhtest
print(dhtest)
The above commands will output the results of the minimum-distance / 2dsphere test. The outputs show that the generator failed the minimum-distance / 2dsphere test, proving how degenerate the results are for this test statistics with the minimum to median p-value being 0.2086, and we are clearly not seeing a uniform distribution over the range from zero to one.
Apart from the histogram shown by dieharder's command-line tool, the summary method function also shows more detail, including a simple stem plot. This stem plot and the summary statistics make it clear how degenerate the results are for this test statistics.
Additionally, the package provides other methods like the one-sample Kolmogorov-Smirnov test and Wilcoxon signed rank test with continuity correction. However, in some cases, it returns a warning message about ties among the hundred p-values. Overall, RDieHarder is a powerful tool useful for testing random number generators.
Version 0.0.5: N/A