RNGTest control file keywords

This page documents the control file keywords of RNGTest.

List of all control file keywords

                accurate            Select the accurate algorithm for uniform RNG
             beta_method     string Select an Intel MKL beta RNG method
                bigcrush            Select RNG battery BigCrush
               boxmuller            Select the Box-Muller algorithm for sampling a Gaussian
              boxmuller2            Select the Box-Muller 2 algorithm for sampling a Gaussian
                     cja            Select the Cheng, Johnk, Atkinson algorithm for sampling a beta
            cja_accurate            Select the accurate Cheng, Johnk, Atkinson algorithm for sampling a beta
                   crush            Select RNG battery Crush
                     end            End of an input block
            gamma_method     string Select an Intel MKL gamma RNG method
         gaussian_method     string Select an Intel MKL Gaussian RNG method
       gaussianmv_method     string Select an Intel MKL multi-variate Gaussian RNG method
                   gnorm            Select the GNORM (see MKL doc) algorithm for sampling a gamma
          gnorm_accurate            Select the accurate GNORM (see MKL doc) algorithm for sampling a gamma
                    icdf            Use inverse cumulative distribution function for sampling a Gaussian
               mkl_mcg31            Select Intel MKL MCG31 RNG
               mkl_mcg59            Select Intel MKL MCG59 RNG
            mkl_mrg32k3a            Select Intel MKL MRG32K3A RNG
             mkl_mt19937            Select Intel MKL MT19937 RNG
              mkl_mt2203            Select Intel MKL MT2203 RNG
             mkl_niederr            Select Intel MKL NIEDERR RNG
           mkl_nondeterm            Select Intel MKL NONDETERM RNG
                mkl_r250            Select Intel MKL R250 RNG
           mkl_sfmt19937            Select Intel MKL SFMT19937 RNG
               mkl_sobol            Select Intel MKL SOBOL RNG
                  mkl_wh            Select Intel MKL WH RNG
             r123_philox            Select Random123 Philox RNG
           r123_threefry            Select Random123 ThreeFry RNG
             rngsse_gm19            Select RNGSSE GM19 RNG
             rngsse_gm29            Select RNGSSE GM29 RNG
             rngsse_gm31            Select RNGSSE GM31 RNG
             rngsse_gm55            Select RNGSSE GM55 RNG
             rngsse_gm61            Select RNGSSE GM61 RNG
           rngsse_gq58.1            Select RNGSSE GQ58.1 RNG
           rngsse_gq58.3            Select RNGSSE GQ58.3 RNG
           rngsse_gq58.4            Select RNGSSE GQ58.4 RNG
          rngsse_lfsr113            Select RNGSSE LFSR113 RNG
         rngsse_mrg32k3a            Select RNGSSE MRG32K3A RNG
          rngsse_mt19937            Select RNGSSE MT19937 RNG
                    seed       uint Set random number generator seed
                  seqlen     string Specify the RNGSSE RNG sequence length
              smallcrush            Select RNG battery SmallCrush
                standard            Select the standard algorithm for uniform RNG
                   title     string Set analysis title
          uniform_method     string Select an Intel MKL uniform RNG method

Detailed description of control file keywords

Keyword 'accurate'

Select the accurate algorithm for uniform RNG

This keyword is used to select the accurate method used to generate uniform random numbers using the Intel Math Kernel Library (MKL) random number generators. Valid options are 'standard' and 'accurate'.

Keyword 'beta_method'

Select an Intel MKL beta RNG method

This keyword is used to specify the method used to generate beta random numbers using the Intel Math Kernel Library (MKL) random number generators. Valid options are 'cja' and 'cja_accurate'.

Expected type: string

Expected valid choices: 'cja' | 'cja_accurate'

Keyword 'bigcrush'

Select RNG battery BigCrush

This keyword is used to introduce the description of the random number generator test suite, i.e., battery, 'BigCrush'. BigCrush is a suite of very stringent statistical tests, O(100), defined in TestU01, a library for the empirical testing of random number generators. For more info, see http://www.iro.umontreal.ca/~simardr/testu01/tu01.html.

Keyword 'boxmuller'

Select the Box-Muller algorithm for sampling a Gaussian

This keyword is used to select the Box-Muller method used to generate Gaussian random numbers using the Intel Math Kernel Library (MKL) random random number generators. Valid options are 'boxmuller', 'boxmuller2', and 'icdf'.

Keyword 'boxmuller2'

Select the Box-Muller 2 algorithm for sampling a Gaussian

This keyword is used to specify the Box-Muller 2 method used to generate Gaussian random numbers using the Intel Math Kernel Library (MKL) random number generators.

Keyword 'cja'

Select the Cheng, Johnk, Atkinson algorithm for sampling a beta

This keyword is used to select the Cheng-Johnk-Atkinson method used to generate beta random numbers using the Intel Math Kernel Library (MKL) random number generators.

Keyword 'cja_accurate'

Select the accurate Cheng, Johnk, Atkinson algorithm for sampling a beta

This keyword is used to select the accurate version of the Cheng-Johnk-Atkinson method used to generate beta random numbers using the Intel Math Kernel Library (MKL) random number generators.

Keyword 'crush'

Select RNG battery Crush

This keyword is used to introduce the description of the random number generator test suite, i.e., battery, 'Crush'. Crush is a suite of stringent statistical tests, O(100), defined in TestU01, a library for the empirical testing of random number generators. For more info, see http://www.iro.umontreal.ca/~simardr/testu01/tu01.html.

Keyword 'end'

End of an input block

The end of a block is given by the 'end' keyword in the input file. Example: "rngs ... end".

Keyword 'gamma_method'

Select an Intel MKL gamma RNG method

This keyword is used to specify the method used to generate gamma random numbers using the Intel Math Kernel Library (MKL) random number generators. Valid options are 'gnorm' and 'gnorm_accurate'.

Expected type: string

Expected valid choices: 'gnorm' | 'gnorm_accurate'

Keyword 'gaussian_method'

Select an Intel MKL Gaussian RNG method

This keyword is used to specify the method used to generate Gaussian random numbers using the Intel Math Kernel Library (MKL) random number generators. Valid options are 'boxmuller', 'boxmuller2', and 'icdf'.

Expected type: string

Expected valid choices: 'boxmuller' | 'boxmuller2' | 'icdf'

Keyword 'gaussianmv_method'

Select an Intel MKL multi-variate Gaussian RNG method

This keyword is used to specify the method used to generate multi-variate Gaussian random numbers using the Intel Math Kernel Library (MKL) random number generators. Valid options are 'boxmuller', 'boxmuller2', and 'icdf'.

Expected type: string

Expected valid choices: 'boxmuller' | 'boxmuller2' | 'icdf'

Keyword 'gnorm'

Select the GNORM (see MKL doc) algorithm for sampling a gamma

This keyword is used to select the GNORM method used to generate gamma random numbers using the Intel Math Kernel Library (MKL) random number generators.

Keyword 'gnorm_accurate'

Select the accurate GNORM (see MKL doc) algorithm for sampling a gamma

This keyword is used to select the accurate version of the GNORM method used to generate gamma random numbers using the Intel Math Kernel Library (MKL) random number generator.

Keyword 'icdf'

Use inverse cumulative distribution function for sampling a Gaussian

This keyword is used to specify the inverse cumulative distribution function (ICDF) method used to generate Gaussian random numbers using the Intel Math Kernel Library (MKL) random number generators.

Keyword 'mkl_mcg31'

Select Intel MKL MCG31 RNG

This keyword is used to select 'VSL_BRNG_MCG31', a 31-bit multiplicative congruential random number generator, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_mcg59'

Select Intel MKL MCG59 RNG

This keyword is used to select 'VSL_BRNG_MCG59', a 59-bit multiplicative congruential random number generator, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_mrg32k3a'

Select Intel MKL MRG32K3A RNG

This keyword is used to select 'VSL_BRNG_MRG32K3A', a combined multiple recursive random number generator with two components of order 3, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_mt19937'

Select Intel MKL MT19937 RNG

This keyword is used to select 'VSL_BRNG_MT19937', a Mersenne Twister pseudorandom number generator, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_mt2203'

Select Intel MKL MT2203 RNG

This keyword is used to select 'VSL_BRNG_MT2203', a set of 6024 Mersenne Twister pseudorandom number generators, available in Intel's Math Kernel Library (MKL).

Keyword 'mkl_niederr'

Select Intel MKL NIEDERR RNG

This keyword is used to select 'VSL_BRNG_NIEDERR', a 32-bit Gray code-based random number generator, producing low-discrepancy sequences for dimensions 1 .le. s .le. 318 with available user-defined dimensions, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_nondeterm'

Select Intel MKL NONDETERM RNG

This keyword is used to select 'VSL_BRNG_NONDETERM', a non-deterministic random number generator, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_r250'

Select Intel MKL R250 RNG

This keyword is used to select 'VSL_BRNG_R250', a generalized feedback shift register random number generator, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_sfmt19937'

Select Intel MKL SFMT19937 RNG

This keyword is used to select 'VSL_BRNG_SFMT19937', a SIMD-oriented Fast Mersenne Twister pseudorandom number generator, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_sobol'

Select Intel MKL SOBOL RNG

This keyword is used to select 'VSL_BRNG_SOBOL', a 32-bit Gray code-based random number generator, producing low-discrepancy sequences for dimensions 1 .le. s .le. 40 with available user-defined dimensions, provided by Intel's Math Kernel Library (MKL).

Keyword 'mkl_wh'

Select Intel MKL WH RNG

This keyword is used to select 'VSL_BRNG_WH', a set of 273 Wichmann-Hill combined multiplicative congruential random number generators, provided by Intel's Math Kernel Library (MKL).

Keyword 'r123_philox'

Select Random123 Philox RNG

This keyword is used to select the Philox generator, based on Feistel network and integer multiplication, provided by the Random123 random number generator library. For more info on Random123 see http://dl.acm.org/citation.cfm?doid=2063405.

Keyword 'r123_threefry'

Select Random123 ThreeFry RNG

This keyword is used to select the ThreeFry generator, related to the Threefish block cipher from Skein Hash Function, provided by the Random123 random number generator library. For more info on Random123 see http://dl.acm.org/citation.cfm?doid=2063405.

Keyword 'rngsse_gm19'

Select RNGSSE GM19 RNG

This keyword is used to select the GM19 random number generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_gm29'

Select RNGSSE GM29 RNG

This keyword is used to select the GM29 generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_gm31'

Select RNGSSE GM31 RNG

This keyword is used to select the GM31 generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_gm55'

Select RNGSSE GM55 RNG

This keyword is used to select the GM55 generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_gm61'

Select RNGSSE GM61 RNG

This keyword is used to select the GM61 generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_gq58.1'

Select RNGSSE GQ58.1 RNG

This keyword is used to select the GQ58.1 generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_gq58.3'

Select RNGSSE GQ58.3 RNG

This keyword is used to select the GQ58.3 generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSS2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_gq58.4'

Select RNGSSE GQ58.4 RNG

This keyword is used to select the GQ58.4 generator, using a method based on parallel evolution of an ensemble of transformations of a two-dimensional torus, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_lfsr113'

Select RNGSSE LFSR113 RNG

This keyword is used to select the LFSR113 generator, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_mrg32k3a'

Select RNGSSE MRG32K3A RNG

This keyword is used to select the MRG32K3A generator, a combined multiple recursive random number generator with two components of order 3, provided by the RNGSS2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'rngsse_mt19937'

Select RNGSSE MT19937 RNG

This keyword is used to select the MT19937 generator, a Mersenne Twister generator, provided by the RNGSSE2 random number generator library. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Keyword 'seed'

Set random number generator seed

This keyword is used to specify a seed for a random number generator Example: rngmkl_mcg31 seed 1234 end

Expected type: uint

Keyword 'seqlen'

Specify the RNGSSE RNG sequence length

This keyword is used to select a random number generator sequence length, used by the RNGSSE2 random number generator library. Valid options are 'short', 'medium', and 'long'. For more info on RNGSSE see https://doi.org/10.1016/j.cpc.2011.03.022.

Expected type: string

Expected valid choices: 'short' | 'medium' | 'long'

Keyword 'smallcrush'

Select RNG battery SmallCrush

This keyword is used to introduce the description of the random number generator test suite, i.e., battery, 'SmallCrush'. SmallCrush is a battery of relatively small number, O(10), of tests, defined in TestU01, a library for the empirical testing of random number generators. For more " info, see http://www.iro.umontreal.ca/~simardr/testu01/tu01.html.

Keyword 'standard'

Select the standard algorithm for uniform RNG

This keyword is used to select the standard method used to generate uniform random numbers using the Intel Math Kernel Library (MKL) random number generators. Valid options are 'standard' and 'accurate'.

Keyword 'title'

Set analysis title

The analysis title may be specified in the input file using the 'title' keyword. The 'title' keyword must be followed by a double-quoted string specifying the analysis title. Example: title "Example problem". Specifying a title is optional.

Expected type: string

Keyword 'uniform_method'

Select an Intel MKL uniform RNG method

This keyword is used to specify the method used to generate uniform random numbers using the Intel Math Kernel Library (MKL) random number generators. Valid options are 'standard' and 'accurate'.

Expected type: string

Expected valid choices: 'standard' | 'accurate'