Evaluation of the randomness quality of a random number generator requires an efficient suite of statistical tests which takes advantage of the processing power of today's multi-core processing power in order to cope with the large amount of data to be processed. While, in theory, most complex processing algorithms can be tuned for concurrent execution, the solution will eventually reach a state in which a compromise needs to be made between the overall performance and the configurability and usability of the application. Our solution is based on completely re-designing the TestU01 architecture to include the notion of parallel computing as part of the general requirements, and not as a tool used for increasing performance. Implementation of this design is done using concepts from the object-oriented paradigm, and uses the .NET Task Parallel Library. Experimental results show that the parallel OOP based implementation of the TestU01 library not only obtains similar results as the previous parallel version, but in some cases a better speedup is obtained.
[1]
Elaine B. Barker,et al.
A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications
,
2000
.
[2]
Elaine B. Barker,et al.
A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications
,
2000
.
[3]
A. Suciu,et al.
Parallel implementation of the TestU01 statistical test suite
,
2012,
2012 IEEE 8th International Conference on Intelligent Computer Communication and Processing.
[4]
Pierre L'Ecuyer,et al.
TestU01: A C library for empirical testing of random number generators
,
2006,
TOMS.