rngtest::TestU01Suite class

TestU01 random number generator test suite used polymorphically with Battery.

This class is a Charm++ chare and does the asynchronous distribution, run, and evaluation of all statistical tests within a TestU01 battery.

Public static functions

static void nodeInit()
Configure all instances of the TestU01 library running on a node.

Constructors, destructors, conversion operators

TestU01Suite(ctr::BatteryType suite) explicit
Constructor.

Public functions

void npval(std::size_t n)
Collect number of p-values from a test.
void names(std::vector<std::string> n)
Collect test name(s) from a test.
void evaluate(std::vector<std::vector<std::string>> status)
Evaluate a statistical test.
void time(std::pair<std::string, tk::real> t)
Collect test run time from a test.

Function documentation

static void rngtest::TestU01Suite::nodeInit()

Configure all instances of the TestU01 library running on a node.

The Charm++ runtime system executes the nodeInit routine below exactly once on every logical node early on in the Charm++ init sequence. Must be static as it is called without and object. See also: Section "Initializations at Program Startup" at in the Charm++ manual http://charm.cs.illinois.edu/manuals/html/charm++/manual.html.

void rngtest::TestU01Suite::npval(std::size_t n)

Collect number of p-values from a test.

Parameters
in Number of p-values the test contributes to the total

void rngtest::TestU01Suite::names(std::vector<std::string> n)

Collect test name(s) from a test.

Parameters
in Vector of test names (there can be more than one from one test)

void rngtest::TestU01Suite::evaluate(std::vector<std::vector<std::string>> status)

Evaluate a statistical test.

Parameters
status in Status vectors of strings for a test

void rngtest::TestU01Suite::time(std::pair<std::string, tk::real> t)

Collect test run time from a test.

Parameters
in Measured time to do the test for an RNG