SmokeRand: new test suite for pseudorandom numbers generators (Announce)
Hello!
I've created SmokeRand: a new cross-platform test suite for 32-bit and 64-bit pseudorandom number generators written in C99 (MIT license). It combines ideas from TestU01, PractRand and gjrand and includes four predefined general purpose batteries, ~250 PRNG examples and several pre-defined heuristic scoring for tested PRNGs. The batteries is much more sensitive than DIEHARD or even Diehader and closer to TestU01 and PractRand.
Two interfaces for generators are supported: either stdin/stdout or plugins. In DOS the most reliable method would be plugins.
Three compilers are supported for DOS:
1. Open Watcom C v2, the makefile for WMake can be obtained by running the Lua scripts supplied with SmokeRand. Plugins with PRNGs will be compiled as freestanding DLLs for 32-bit Windows NT and the simplified custom DLL loader will be used to load them under DOS extender.
2. DJGPP: Makefile.gnu contains an experimental support of this compiler. Plugins will be compiled as DXE modules.
3. Any 16-bit C90 compliant compiler a for simplified "express" battery (see "apps/sr_tiny.c"): autogenerated makefile for Open Watcom C builds such version too. Of course, it may be slow on real 16-bit computers and take minutes and even hours.
There is one problem: all batteries except express are memory hogs that will require at least 512 MiB or RAM, they will also be slow on older computers. It can be partially solved by customization of batteries that can be made even without recompilation. Also 32-bit DOS version will try to use RDTSC instruction for performance measurements.
Repo with source code: https://github.com/alvoskov/SmokeRand
Complete thread:
- SmokeRand: new test suite for pseudorandom numbers generators - avoskov, 15.12.2025, 00:12 (Announce)
![Open in board view [Board]](img/board_d.gif)
![Open in mix view [Mix]](img/mix_d.gif)
- SmokeRand: new test suite for pseudorandom numbers generators - Rugxulo, 15.12.2025, 05:34
- SmokeRand: new test suite for pseudorandom numbers generators - avoskov, 15.12.2025, 08:53
- SmokeRand: new test suite for pseudorandom numbers generators - Rugxulo, 15.12.2025, 11:22
- SmokeRand: new test suite for pseudorandom numbers generators - avoskov, 15.12.2025, 12:06
- SmokeRand: new test suite for pseudorandom numbers generators - Rugxulo, 15.12.2025, 11:22
- SmokeRand: new test suite for pseudorandom numbers generators - avoskov, 15.12.2025, 08:53
- SmokeRand: new test suite for pseudorandom numbers generators - Rugxulo, 15.12.2025, 05:34
Mix view