# 
# RandomSource: JSF_32
# RNG: org.apache.commons.rng.core.source32.JenkinsSmallFast32
# Seed: 3df7807c
# 
# Java: 1.8.0_202
# Runtime: Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
# JVM: Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
# OS: Linux 3.13.0-91-generic amd64
# Native byte-order: LITTLE_ENDIAN
# Output byte-order: LITTLE_ENDIAN
# 
# Analyzer: /home/ah403/git/commons-rng/commons-rng-examples/examples-stress/stdin2testu01 BigCrush 
# 
# Start: 2019-10-10 16:33:56
# 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                 Starting BigCrush
                 Version: TestU01 1.2.3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


***********************************************************
Test smarsa_SerialOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  0,   d =  256,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =           16777216
       Expected number per cell =   59.604645
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0083558402,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 16711680
Value of the statistic                : 1.67e+7
p-value of test                       :    0.18


-----------------------------------------------
CPU time used                    :  00:02:01.60

Generator state:
N/A



***********************************************************
Test smarsa_SerialOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r = 22,   d =  256,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =           16777216
       Expected number per cell =   59.604645
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0083558402,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 16711680
Value of the statistic                : 1.67e+7
p-value of test                       :    0.02


-----------------------------------------------
CPU time used                    :  00:02:07.13

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d = 2097152,   t =  2,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1356
p-value of test                       :    0.58

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334476
  j =  1                              :        599997288
  j =  2                              :             1356
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:03:26.07

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  9,   d = 2097152,   t =  2,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1342
p-value of test                       :    0.72

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334462
  j =  1                              :        599997316
  j =  2                              :             1342
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:03:48.39

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d = 16384,   t =  3,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1453
p-value of test                       :  8.9e-3

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334573
  j =  1                              :        599997094
  j =  2                              :             1453
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:36.25

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 16,   d = 16384,   t =  3,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1357
p-value of test                       :    0.57

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334477
  j =  1                              :        599997286
  j =  2                              :             1357
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:44.59

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =   64,   t =  7,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1335
p-value of test                       :    0.78

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334455
  j =  1                              :        599997330
  j =  2                              :             1335
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:43.75

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 24,   d =   64,   t =  7,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1355
p-value of test                       :    0.59

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334475
  j =  1                              :        599997290
  j =  2                              :             1355
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:52.74

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =    8,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1429
p-value of test                       :    0.04

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334549
  j =  1                              :        599997142
  j =  2                              :             1429
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:51.59

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 27,   d =    8,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1347
p-value of test                       :    0.67

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334467
  j =  1                              :        599997306
  j =  2                              :             1347
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:07.30

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =    4,   t = 21,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1281
p-value of test                       :    0.99

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334401
  j =  1                              :        599997438
  j =  2                              :             1281
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:05.76

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 28,   d =    4,   t = 21,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1420
p-value of test                       :    0.07

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334540
  j =  1                              :        599997160
  j =  2                              :             1420
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:09.82

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 100,  n = 10000000,  r =  0,    d = 2147483648,    t = 2,    p = 1


      Number of cells = d^t = 4611686018427387904
      Lambda = Poisson mean =      54.2101


----------------------------------------------------
Total expected number = N*Lambda      :    5421.01
Total observed number                 :    5431
p-value of test                       :    0.45


-----------------------------------------------
CPU time used                    :  00:05:20.61

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,    d = 2097152,    t = 3,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4467
p-value of test                       :    0.02


-----------------------------------------------
CPU time used                    :  00:02:20.59

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 14,    d = 65536,    t = 4,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7143
p-value of test                       :    0.98


-----------------------------------------------
CPU time used                    :  00:03:54.21

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,    d = 512,    t = 7,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4364
p-value of test                       :    0.34


-----------------------------------------------
CPU time used                    :  00:02:54.23

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  7,    d = 512,    t = 7,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4472
p-value of test                       :    0.02


-----------------------------------------------
CPU time used                    :  00:02:58.63

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 14,    d = 256,    t = 8,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7276
p-value of test                       :    0.69


-----------------------------------------------
CPU time used                    :  00:04:50.67

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 22,    d = 256,    t = 8,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7423
p-value of test                       :    0.11


-----------------------------------------------
CPU time used                    :  00:05:01.64

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r =  0,    d = 16,    t = 16,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7253
p-value of test                       :    0.78


-----------------------------------------------
CPU time used                    :  00:06:35.11

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 26,    d = 16,    t = 16,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7194
p-value of test                       :    0.93


-----------------------------------------------
CPU time used                    :  00:07:01.52

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 30,  n = 6000000,  r =  0,  t = 3,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    0.44
p-value of test                       :    0.81


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    0.53
p-value of test                       :    0.71

Test on the Nm values of W_{n,i}(mNP1):    0.46
p-value of test                       :    0.79

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     900
Number of jumps of Y                  :     903
p-value of test                       :    0.46

Stat. AD (mNP2)                       :    0.28
p-value of test                       :    0.95

Stat. AD after spacings (mNP2-S)      :    0.32
p-value of test                       :    0.92

-----------------------------------------------
CPU time used                    :  00:03:51.38

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 20,  n = 4000000,  r =  0,  t = 5,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    1.96
p-value of test                       :    0.10


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    0.27
p-value of test                       :    0.96

Test on the Nm values of W_{n,i}(mNP1):    0.80
p-value of test                       :    0.48

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     600
Number of jumps of Y                  :     585
p-value of test                       :    0.72

Stat. AD (mNP2)                       :    0.73
p-value of test                       :    0.53

Stat. AD after spacings (mNP2-S)      :    1.53
p-value of test                       :    0.17

-----------------------------------------------
CPU time used                    :  00:02:26.26

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 10,  n = 3000000,  r =  0,  t = 9,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    2.42
p-value of test                       :    0.06


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    0.79
p-value of test                       :    0.49

Test on the Nm values of W_{n,i}(mNP1):    0.42
p-value of test                       :    0.83

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     300
Number of jumps of Y                  :     297
p-value of test                       :    0.55

Stat. AD (mNP2)                       :    0.67
p-value of test                       :    0.58

Stat. AD after spacings (mNP2-S)      :    1.37
p-value of test                       :    0.21

-----------------------------------------------
CPU time used                    :  00:03:50.06

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N =  5,  n = 2000000,  r =  0,  t = 16,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    0.43
p-value of test                       :    0.81


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    1.04
p-value of test                       :    0.33

Test on the Nm values of W_{n,i}(mNP1):    2.34
p-value of test                       :    0.06

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     150
Number of jumps of Y                  :     122
p-value of test                       :    0.99

Stat. AD (mNP2)                       :    0.33
p-value of test                       :    0.91

Stat. AD after spacings (mNP2-S)      :    0.36
p-value of test                       :    0.88

-----------------------------------------------
CPU time used                    :  00:04:26.09

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 400000000,  r =  0,   d =    8,   k =    8


-----------------------------------------------
Number of degrees of freedom          :    7
Chi-square statistic                  :   15.40
p-value of test                       :    0.03

-----------------------------------------------
CPU time used                    :  00:01:41.67

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 400000000,  r = 27,   d =    8,   k =    8


-----------------------------------------------
Number of degrees of freedom          :    7
Chi-square statistic                  :    5.02
p-value of test                       :    0.66

-----------------------------------------------
CPU time used                    :  00:02:01.48

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   d =   32,   k =   32


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   12.62
p-value of test                       :    0.81

-----------------------------------------------
CPU time used                    :  00:01:32.36

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 25,   d =   32,   k =   32


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   21.59
p-value of test                       :    0.25

-----------------------------------------------
CPU time used                    :  00:01:56.26

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r =  0,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   58.20
p-value of test                       :    0.32

-----------------------------------------------
CPU time used                    :  00:02:08.68

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 10,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   50.52
p-value of test                       :    0.61

-----------------------------------------------
CPU time used                    :  00:02:33.05

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 20,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   48.21
p-value of test                       :    0.70

-----------------------------------------------
CPU time used                    :  00:02:34.14

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 27,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   51.38
p-value of test                       :    0.58

-----------------------------------------------
CPU time used                    :  00:02:38.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  0,   Alpha =        0,   Beta  =   0.0625


-----------------------------------------------
Number of degrees of freedom          :  232
Chi-square statistic                  :  188.62
p-value of test                       :    0.98

-----------------------------------------------
CPU time used                    :  00:03:08.69

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 300000000,  r = 25,   Alpha =        0,   Beta  =  0.03125


-----------------------------------------------
Number of degrees of freedom          :  434
Chi-square statistic                  :  438.80
p-value of test                       :    0.43

-----------------------------------------------
CPU time used                    :  00:04:02.68

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   Alpha =        0,   Beta  = 0.0078125


-----------------------------------------------
Number of degrees of freedom          : 1437
Chi-square statistic                  : 1382.95
p-value of test                       :    0.84

-----------------------------------------------
CPU time used                    :  00:04:47.65

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 20,   Alpha =        0,   Beta  = 0.000976562


-----------------------------------------------
Number of degrees of freedom          : 7046
Chi-square statistic                  : 7034.49
p-value of test                       :    0.54

-----------------------------------------------
CPU time used                    :  00:04:32.26

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Run test:
-----------------------------------------------
   N =  5,  n = 1000000000,  r =  0,   Up = FALSE


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.43
p-value of test                       :    0.12

Kolmogorov-Smirnov- statistic = D-    :   0.035
p-value of test                       :    0.96

Anderson-Darling statistic = A2       :    1.50
p-value of test                       :    0.18

Test on the sum of all N observations
Number of degrees of freedom          :   30
Chi-square statistic                  :   19.25
p-value of test                       :    0.93

-----------------------------------------------
CPU time used                    :  00:02:33.78

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Run test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r = 15,   Up =  TRUE


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.033
p-value of test                       :    0.96

Kolmogorov-Smirnov- statistic = D-    :    0.23
p-value of test                       :    0.30

Anderson-Darling statistic = A2       :    0.73
p-value of test                       :    0.53

Test on the sum of all N observations
Number of degrees of freedom          :   60
Chi-square statistic                  :   69.34
p-value of test                       :    0.19

-----------------------------------------------
CPU time used                    :  00:05:27.35

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  5,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =                  6
       Expected number per cell =  1.6666667e+08
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  2.5000002e-09,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          :    5
Value of the statistic                :    5.24
p-value of test                       :    0.39


-----------------------------------------------
CPU time used                    :  00:01:42.56

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  5,   t =  5,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =                120
       Expected number per cell =   8333333.3
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  5.9500005e-08,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          :  119
Value of the statistic                :  139.21
p-value of test                       :    0.10


-----------------------------------------------
CPU time used                    :  00:02:56.47

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  5,   t =  7,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =               5040
       Expected number per cell =   99206.349
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  5.0390004e-06,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 5039
Value of the statistic                : 4986.42
p-value of test                       :    0.70


-----------------------------------------------
CPU time used                    :  00:02:08.61

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 500000000,  r = 10,   t = 10,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =            3628800
       Expected number per cell =    137.7866
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0036287993,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 3628799
Value of the statistic                : 3.63e+6
p-value of test                       :    0.54


-----------------------------------------------
CPU time used                    :  00:03:50.69

Generator state:
N/A



***********************************************************
Test sknuth_CollisionPermut calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =        87178291200
       Expected number per cell =  1 /  4358.9146
       EColl = n^2 / (2k) =   2294.14912
       Hashing =   TRUE

       Collision test,    Mu =      2293.9736,    Sigma =    47.8841

-----------------------------------------------
Test Results for Collisions

For the total number of collisions, we use
      the Poisson approximation:
Expected number of collisions = N*Mu  :    45879.47
Observed number of collisions         :    46077
p-value of test                       :    0.18


-----------------------------
Total number of cells containing j balls

  j =  0                              :    1743165870077
  j =  1                              :        399907849
  j =  2                              :            46071
  j =  3                              :                3
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:08.23

Generator state:
N/A



***********************************************************
Test sknuth_CollisionPermut calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N = 20,  n = 20000000,  r = 10,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =        87178291200
       Expected number per cell =  1 /  4358.9146
       EColl = n^2 / (2k) =   2294.14912
       Hashing =   TRUE

       Collision test,    Mu =      2293.9736,    Sigma =    47.8841

-----------------------------------------------
Test Results for Collisions

For the total number of collisions, we use
      the Poisson approximation:
Expected number of collisions = N*Mu  :    45879.47
Observed number of collisions         :    46000
p-value of test                       :    0.29


-----------------------------
Total number of cells containing j balls

  j =  0                              :    1743165870000
  j =  1                              :        399908002
  j =  2                              :            45996
  j =  3                              :                2
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:21.43

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 40,  n = 10000000,  r =  0,   d = 100000,   t =  8

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :   0.094
p-value of test                       :    0.46

Kolmogorov-Smirnov- statistic = D-    :   0.067
p-value of test                       :    0.67

Anderson-Darling statistic = A2       :    0.32
p-value of test                       :    0.93

Test on the sum of all N observations
Number of degrees of freedom          : 3999960
Chi-square statistic                  : 4.00e+6
p-value of test                       :    0.52


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :   0.077
p-value of test                       :    0.59

Kolmogorov-Smirnov- statistic = D-    :   0.064
p-value of test                       :    0.69

Anderson-Darling statistic = A2       :    0.22
p-value of test                       :    0.98


-----------------------------------------------
CPU time used                    :  00:04:27.57

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 30,  n = 10000000,  r =  0,   d = 100000,   t = 16

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :    0.14
p-value of test                       :    0.29

Kolmogorov-Smirnov- statistic = D-    :    0.10
p-value of test                       :    0.50

Anderson-Darling statistic = A2       :    0.91
p-value of test                       :    0.41

Test on the sum of all N observations
Number of degrees of freedom          : 2999970
Chi-square statistic                  : 3.00e+6
p-value of test                       :    0.55


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.20
p-value of test                       :    0.07

Kolmogorov-Smirnov- statistic = D-    :   0.033
p-value of test                       :    0.92

Anderson-Darling statistic = A2       :    1.94
p-value of test                       :    0.10


-----------------------------------------------
CPU time used                    :  00:04:14.13

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   d = 100000,   t = 24

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :    0.15
p-value of test                       :    0.39

Kolmogorov-Smirnov- statistic = D-    :    0.21
p-value of test                       :    0.16

Anderson-Darling statistic = A2       :    1.37
p-value of test                       :    0.21

Test on the sum of all N observations
Number of degrees of freedom          : 1999980
Chi-square statistic                  : 2.00e+6
p-value of test                       :    0.49


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.27
p-value of test                       :    0.05

Kolmogorov-Smirnov- statistic = D-    :   0.099
p-value of test                       :    0.63

Anderson-Darling statistic = A2       :    1.42
p-value of test                       :    0.20


-----------------------------------------------
CPU time used                    :  00:03:15.88

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   d = 100000,   t = 32

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :    0.20
p-value of test                       :    0.19

Kolmogorov-Smirnov- statistic = D-    :   0.061
p-value of test                       :    0.83

Anderson-Darling statistic = A2       :    0.53
p-value of test                       :    0.71

Test on the sum of all N observations
Number of degrees of freedom          : 1999980
Chi-square statistic                  : 2.00e+6
p-value of test                       :    0.66


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.12
p-value of test                       :    0.54

Kolmogorov-Smirnov- statistic = D-    :    0.15
p-value of test                       :    0.38

Anderson-Darling statistic = A2       :    0.32
p-value of test                       :    0.93


-----------------------------------------------
CPU time used                    :  00:03:54.67

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 40,  n = 10000000,  r =  0,   t = 8


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.036
p-value of test                       :    0.88

Kolmogorov-Smirnov- statistic = D-    :    0.20
p-value of test                       :    0.04

Anderson-Darling statistic = A2       :    1.75
p-value of test                       :    0.13

-----------------------------------------------
CPU time used                    :  00:03:26.35

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   t = 16


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.014
p-value of test                       :    0.98

Kolmogorov-Smirnov- statistic = D-    :    0.36
p-value of test                       :  3.5e-3

Anderson-Darling statistic = A2       :    4.12
p-value of test                       :  7.8e-3

-----------------------------------------------
CPU time used                    :  00:02:34.37

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   t = 24


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.22
p-value of test                       :    0.13

Kolmogorov-Smirnov- statistic = D-    :   0.050
p-value of test                       :    0.87

Anderson-Darling statistic = A2       :    0.69
p-value of test                       :    0.56

-----------------------------------------------
CPU time used                    :  00:03:30.06

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleMean test:
-----------------------------------------------
   N = 20000000,  n = 30,  r =  0


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 1.32e-4
p-value of test                       :    0.50

Kolmogorov-Smirnov- statistic = D-    : 9.70e-5
p-value of test                       :    0.69

Anderson-Darling statistic = A2       :    0.35
p-value of test                       :    0.90

-----------------------------------------------
CPU time used                    :  00:00:46.00

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleMean test:
-----------------------------------------------
   N = 20000000,  n = 30,  r = 10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 1.65e-4
p-value of test                       :    0.34

Kolmogorov-Smirnov- statistic = D-    : 1.69e-4
p-value of test                       :    0.32

Anderson-Darling statistic = A2       :    0.72
p-value of test                       :    0.54

-----------------------------------------------
CPU time used                    :  00:00:46.00

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleCorr test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   k = 1


-----------------------------------------------
Normal statistic                      :   -0.45
p-value of test                       :    0.67

-----------------------------------------------
CPU time used                    :  00:00:50.45

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleCorr test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   k = 2


-----------------------------------------------
Normal statistic                      :   -1.19
p-value of test                       :    0.88

-----------------------------------------------
CPU time used                    :  00:00:48.84

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_AppearanceSpacings test:
-----------------------------------------------
   N =  1,   Q = 10000000,   K = 1000000000,   r = 0,   s = 3,   L = 15

   Sequences of n = (K + Q)L =  15150000000 bits
   Q = 10000000 initialization blocks
   K = 1000000000 blocks for the test
   the blocks have L = 15 bits



-----------------------------------------------
Normal statistic                      :   -0.46
p-value of test                       :    0.68

-----------------------------------------------
CPU time used                    :  00:02:25.21

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_AppearanceSpacings test:
-----------------------------------------------
   N =  1,   Q = 10000000,   K = 1000000000,   r = 27,   s = 3,   L = 15

   Sequences of n = (K + Q)L =  15150000000 bits
   Q = 10000000 initialization blocks
   K = 1000000000 blocks for the test
   the blocks have L = 15 bits



-----------------------------------------------
Normal statistic                      :   -0.48
p-value of test                       :    0.68

-----------------------------------------------
CPU time used                    :  00:02:30.17

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r =  0,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   68.66
p-value of test                       :    0.42

-----------------------------------------------
CPU time used                    :  00:01:55.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 20,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   47.47
p-value of test                       :    0.97

-----------------------------------------------
CPU time used                    :  00:02:06.26

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 28,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   69.18
p-value of test                       :    0.40

-----------------------------------------------
CPU time used                    :  00:02:12.59

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r =  0,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   36.12
p-value of test                       :    0.51

-----------------------------------------------
CPU time used                    :  00:02:01.69

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 10,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   46.39
p-value of test                       :    0.14

-----------------------------------------------
CPU time used                    :  00:02:18.97

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 26,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   26.68
p-value of test                       :    0.90

-----------------------------------------------
CPU time used                    :  00:02:16.80

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SumCollector test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  0,   g = 10


-----------------------------------------------
Number of degrees of freedom          :   29
Chi-square statistic                  :   27.35
p-value of test                       :    0.55

-----------------------------------------------
CPU time used                    :  00:04:12.20

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N = 10,  n = 1000000,  r =  0,    s = 5,    L = 30,    k = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.17
p-value of test                       :    0.52

Kolmogorov-Smirnov- statistic = D-    :    0.31
p-value of test                       :    0.11

Anderson-Darling statistic = A2       :    1.30
p-value of test                       :    0.23

Test on the sum of all N observations
Number of degrees of freedom          :   40
Chi-square statistic                  :   43.54
p-value of test                       :    0.32

-----------------------------------------------
CPU time used                    :  00:01:48.98

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N = 10,  n = 1000000,  r = 25,    s = 5,    L = 30,    k = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.13
p-value of test                       :    0.64

Kolmogorov-Smirnov- statistic = D-    :    0.24
p-value of test                       :    0.27

Anderson-Darling statistic = A2       :    0.69
p-value of test                       :    0.57

Test on the sum of all N observations
Number of degrees of freedom          :   40
Chi-square statistic                  :   45.69
p-value of test                       :    0.25

-----------------------------------------------
CPU time used                    :  00:01:50.12

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 5000,  r =  0,    s = 4,    L = 1000,    k = 1000


-----------------------------------------------
Number of degrees of freedom          :    3
Chi-square statistic                  :    6.75
p-value of test                       :    0.08

-----------------------------------------------
CPU time used                    :  00:02:49.52

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 5000,  r = 26,    s = 4,    L = 1000,    k = 1000


-----------------------------------------------
Number of degrees of freedom          :    3
Chi-square statistic                  :    2.21
p-value of test                       :    0.53

-----------------------------------------------
CPU time used                    :  00:02:54.46

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 80,  r = 15,    s = 15,    L = 5000,    k = 5000


-----------------------------------------------
Number of degrees of freedom          :    2
Chi-square statistic                  :    0.91
p-value of test                       :    0.64

-----------------------------------------------
CPU time used                    :  00:02:21.62

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 80,  r =  0,    s = 30,    L = 5000,    k = 5000


-----------------------------------------------
Number of degrees of freedom          :    2
Chi-square statistic                  :    4.36
p-value of test                       :    0.11

-----------------------------------------------
CPU time used                    :  00:02:00.72

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_Savir2 test:
-----------------------------------------------
   N = 10,  n = 10000000,  r = 10,    m = 1048576,    t = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.42
p-value of test                       :    0.02

Kolmogorov-Smirnov- statistic = D-    :   0.014
p-value of test                       :    0.98

Anderson-Darling statistic = A2       :    2.92
p-value of test                       :    0.03

Test on the sum of all N observations
Number of degrees of freedom          :  130
Chi-square statistic                  :   98.89
p-value of test                       :    0.98

-----------------------------------------------
CPU time used                    :  00:01:21.94

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_GCD test:
-----------------------------------------------
   N = 10,  n = 50000000,  r =  0,   s = 30


-----------------------------------------------
Test results for GCD values:

Kolmogorov-Smirnov+ statistic = D+    :    0.19
p-value of test                       :    0.44

Kolmogorov-Smirnov- statistic = D-    :    0.13
p-value of test                       :    0.64

Anderson-Darling statistic = A2       :    0.56
p-value of test                       :    0.68

Test on the sum of all N observations
Number of degrees of freedom          : 17430
Chi-square statistic                  :17460.27
p-value of test                       :    0.43



-----------------------------------------------
CPU time used                    :  00:02:03.63

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   s = 5,   L0 =   50,   L1 =   50



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :   36
ChiSquare statistic                   :   41.60
p-value of test                       :    0.24


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :   35
ChiSquare statistic                   :   26.30
p-value of test                       :    0.86


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :   25
ChiSquare statistic                   :   36.66
p-value of test                       :    0.06


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :   24
ChiSquare statistic                   :   30.44
p-value of test                       :    0.17


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   17
ChiSquare statistic                   :    7.76
p-value of test                       :    0.97


-----------------------------------------------
CPU time used                    :  00:01:11.39

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 25,   s = 5,   L0 =   50,   L1 =   50



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :   36
ChiSquare statistic                   :   27.20
p-value of test                       :    0.85


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :   35
ChiSquare statistic                   :   25.43
p-value of test                       :    0.88


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :   25
ChiSquare statistic                   :   23.05
p-value of test                       :    0.57


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :   24
ChiSquare statistic                   :   24.94
p-value of test                       :    0.41


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   17
ChiSquare statistic                   :   17.09
p-value of test                       :    0.45


-----------------------------------------------
CPU time used                    :  00:01:11.14

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 10000000,  r =  0,   s = 10,   L0 = 1000,   L1 = 1000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  146
ChiSquare statistic                   :  137.71
p-value of test                       :    0.68


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  146
ChiSquare statistic                   :  144.97
p-value of test                       :    0.51


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :  500
ChiSquare statistic                   :  509.66
p-value of test                       :    0.37


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  136
ChiSquare statistic                   :  142.18
p-value of test                       :    0.34


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   74
ChiSquare statistic                   :   87.59
p-value of test                       :    0.13


-----------------------------------------------
CPU time used                    :  00:01:24.47

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 20,   s = 10,   L0 = 1000,   L1 = 1000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  146
ChiSquare statistic                   :  153.77
p-value of test                       :    0.31


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  146
ChiSquare statistic                   :  169.37
p-value of test                       :    0.09


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :  500
ChiSquare statistic                   :  519.28
p-value of test                       :    0.27


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  136
ChiSquare statistic                   :  141.35
p-value of test                       :    0.36


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   74
ChiSquare statistic                   :   67.00
p-value of test                       :    0.71


-----------------------------------------------
CPU time used                    :  00:01:23.71

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 1000000,  r =  0,   s = 15,   L0 = 10000,   L1 = 10000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  384
ChiSquare statistic                   :  367.95
p-value of test                       :    0.71


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  384
ChiSquare statistic                   :  349.69
p-value of test                       :    0.89


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 5070.36
p-value of test                       :    0.24


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  378
ChiSquare statistic                   :  409.46
p-value of test                       :    0.13


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :  200
ChiSquare statistic                   :  187.78
p-value of test                       :    0.72


-----------------------------------------------
CPU time used                    :  00:01:30.86

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 1000000,  r = 15,   s = 15,   L0 = 10000,   L1 = 10000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  384
ChiSquare statistic                   :  386.55
p-value of test                       :    0.45


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  384
ChiSquare statistic                   :  403.82
p-value of test                       :    0.23


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 4935.81
p-value of test                       :    0.74


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  378
ChiSquare statistic                   :  398.37
p-value of test                       :    0.23


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :  200
ChiSquare statistic                   :  245.59
p-value of test                       :    0.02


-----------------------------------------------
CPU time used                    :  00:01:24.27

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LinearComp test:
-----------------------------------------------
   N =  1,  n = 400020,  r =  0,    s = 1



-----------------------------------------------
Number of degrees of freedom          :   12
Chi2 statistic for size of jumps      :   11.87
p-value of test                       :    0.46


-----------------------------------------------
Normal statistic for number of jumps  :    0.79
p-value of test                       :    0.22



-----------------------------------------------
CPU time used                    :  00:02:39.80

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LinearComp test:
-----------------------------------------------
   N =  1,  n = 400020,  r = 29,    s = 1



-----------------------------------------------
Number of degrees of freedom          :   12
Chi2 statistic for size of jumps      :   11.17
p-value of test                       :    0.51


-----------------------------------------------
Normal statistic for number of jumps  :    0.23
p-value of test                       :    0.41



-----------------------------------------------
CPU time used                    :  00:02:58.12

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LempelZiv test:
-----------------------------------------------
   N = 10,  n = 134217728,  r =  0,   s =   30,   k =   27


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.27
p-value of test                       :    0.20

Kolmogorov-Smirnov- statistic = D-    :    0.19
p-value of test                       :    0.43

Anderson-Darling statistic = A2       :    1.04
p-value of test                       :    0.34

Tests on the sum of all N observations
Standardized normal statistic         :   -0.41
p-value of test                       :    0.66

Sample variance                       :    0.29
p-value of test                       :    0.98

-----------------------------------------------
CPU time used                    :  00:01:23.64

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LempelZiv test:
-----------------------------------------------
   N = 10,  n = 134217728,  r = 15,   s =   15,   k =   27


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.19
p-value of test                       :    0.45

Kolmogorov-Smirnov- statistic = D-    :    0.19
p-value of test                       :    0.44

Anderson-Darling statistic = A2       :    0.87
p-value of test                       :    0.43

Tests on the sum of all N observations
Standardized normal statistic         :   -0.51
p-value of test                       :    0.69

Sample variance                       :    1.32
p-value of test                       :    0.22

-----------------------------------------------
CPU time used                    :  00:01:16.98

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sspectral_Fourier3 test:
-----------------------------------------------
   N = 100000,  n = 16384,  r =  0,   s =    3,   k =   14


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.018
p-value of test                       :    0.07

Kolmogorov-Smirnov- statistic = D-    :   0.011
p-value of test                       :    0.34

Anderson-Darling statistic = A2       :    1.73
p-value of test                       :    0.13

-----------------------------------------------
CPU time used                    :  00:00:55.28

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sspectral_Fourier3 test:
-----------------------------------------------
   N = 100000,  n = 16384,  r = 27,   s =    3,   k =   14


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.015
p-value of test                       :    0.16

Kolmogorov-Smirnov- statistic = D-    : 8.15e-3
p-value of test                       :    0.58

Anderson-Darling statistic = A2       :    0.74
p-value of test                       :    0.53

-----------------------------------------------
CPU time used                    :  00:00:53.30

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_LongestHeadRun test:
-----------------------------------------------
   N =  1,  n = 1000,  r =  0,   s = 3,   L = 10000020


-----------------------------------------------
Number of degrees of freedom          :    8
Chi-square statistic                  :    4.33
p-value of test                       :    0.83

-----------------------------------------------
Global longest run of 1               :   33.00
p-value of test                       :    0.44



-----------------------------------------------
CPU time used                    :  00:01:40.06

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_LongestHeadRun test:
-----------------------------------------------
   N =  1,  n = 1000,  r = 27,   s = 3,   L = 10000020


-----------------------------------------------
Number of degrees of freedom          :    8
Chi-square statistic                  :   12.65
p-value of test                       :    0.12

-----------------------------------------------
Global longest run of 1               :   32.00
p-value of test                       :    0.50



-----------------------------------------------
CPU time used                    :  00:01:39.32

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_PeriodsInStrings test:
-----------------------------------------------
   N = 10,  n = 500000000,  r =  0,   s =   10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.12
p-value of test                       :    0.71

Kolmogorov-Smirnov- statistic = D-    :   0.091
p-value of test                       :    0.80

Anderson-Darling statistic = A2       :    0.21
p-value of test                       :    0.99

Test on the sum of all N observations
Number of degrees of freedom          :  200
Chi-square statistic                  :  191.63
p-value of test                       :    0.65

-----------------------------------------------
CPU time used                    :  00:03:39.89

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_PeriodsInStrings test:
-----------------------------------------------
   N = 10,  n = 500000000,  r = 20,   s =   10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.34
p-value of test                       :    0.07

Kolmogorov-Smirnov- statistic = D-    :   0.040
p-value of test                       :    0.94

Anderson-Darling statistic = A2       :    1.58
p-value of test                       :    0.16

Test on the sum of all N observations
Number of degrees of freedom          :  200
Chi-square statistic                  :  168.25
p-value of test                       :    0.95

-----------------------------------------------
CPU time used                    :  00:03:54.82

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingWeight2 test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r =  0,   s = 3,   L = 1000000


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.45
p-value of test                       :    0.01

Kolmogorov-Smirnov- statistic = D-    :   0.050
p-value of test                       :    0.92

Anderson-Darling statistic = A2       :    3.80
p-value of test                       :    0.01

Test on the sum of all N observations
Number of degrees of freedom          : 10000
Chi-square statistic                  : 9688.73
p-value of test                       :    0.99

-----------------------------------------------
CPU time used                    :  00:01:16.20

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingWeight2 test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r = 27,   s = 3,   L = 1000000


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.16
p-value of test                       :    0.56

Kolmogorov-Smirnov- statistic = D-    :    0.13
p-value of test                       :    0.68

Anderson-Darling statistic = A2       :    0.28
p-value of test                       :    0.95

Test on the sum of all N observations
Number of degrees of freedom          : 10000
Chi-square statistic                  : 9956.60
p-value of test                       :    0.62

-----------------------------------------------
CPU time used                    :  00:01:17.71

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r = 10,   s = 10,   L = 30



-----------------------------------------------
Normal statistic                      :    0.33
p-value of test                       :    0.37

-----------------------------------------------
CPU time used                    :  00:01:37.75

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 10,   s = 10,   L = 300



-----------------------------------------------
Normal statistic                      :   -0.43
p-value of test                       :    0.67

-----------------------------------------------
CPU time used                    :  00:01:24.89

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 10,   s = 10,   L = 1200



-----------------------------------------------
Normal statistic                      :  -0.017
p-value of test                       :    0.51

-----------------------------------------------
CPU time used                    :  00:05:45.99

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N = 10,  n = 30000000,  r =  0,   s = 3,   L = 30,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.054
p-value of test                       :    0.91

Kolmogorov-Smirnov- statistic = D-    :    0.21
p-value of test                       :    0.35

Anderson-Darling statistic = A2       :    0.55
p-value of test                       :    0.69

Test on the sum of all N observations
Number of degrees of freedom          : 4890
Chi-square statistic                  : 4967.97
p-value of test                       :    0.21

-----------------------------------------------
CPU time used                    :  00:02:43.40

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N = 10,  n = 30000000,  r = 27,   s = 3,   L = 30,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.26
p-value of test                       :    0.21

Kolmogorov-Smirnov- statistic = D-    :    0.17
p-value of test                       :    0.51

Anderson-Darling statistic = A2       :    0.60
p-value of test                       :    0.64

Test on the sum of all N observations
Number of degrees of freedom          : 4890
Chi-square statistic                  : 4884.11
p-value of test                       :    0.52

-----------------------------------------------
CPU time used                    :  00:02:51.29

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 30000000,  r =  0,   s = 4,   L = 300,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 4117
Chi-square statistic                  : 3960.53
p-value of test                       :    0.96

-----------------------------------------------
CPU time used                    :  00:02:00.11

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 30000000,  r = 26,   s = 4,   L = 300,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 4117
Chi-square statistic                  : 4175.79
p-value of test                       :    0.26

-----------------------------------------------
CPU time used                    :  00:02:00.61

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 10000000,  r =  0,   s = 5,   L = 1200,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 11825
Chi-square statistic                  :11827.15
p-value of test                       :    0.49

-----------------------------------------------
CPU time used                    :  00:02:13.66

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 25,   s = 5,   L = 1200,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 11825
Chi-square statistic                  :11884.98
p-value of test                       :    0.35

-----------------------------------------------
CPU time used                    :  00:02:14.77

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_Run test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   s =    3


-----------------------------------------------
Total number of 1 runs:  2000000000

Number of degrees of freedom          :   54
Chi2 statistic for number of runs     :   63.60
p-value of test                       :    0.17


-----------------------------------------------
Total number of bits:  8000114193

Normal statistic for number of bits   :    0.90
p-value of test                       :    0.18



-----------------------------------------------
CPU time used                    :  00:01:46.43

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_Run test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r = 27,   s =    3


-----------------------------------------------
Total number of 1 runs:  2000000000

Number of degrees of freedom          :   54
Chi2 statistic for number of runs     :   49.25
p-value of test                       :    0.66


-----------------------------------------------
Total number of bits:  7999944444

Normal statistic for number of bits   :   -0.44
p-value of test                       :    0.67



-----------------------------------------------
CPU time used                    :  00:01:48.15

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000030,  r =  0,   s = 3,   d = 1


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.38
p-value of test                       :    0.04

Kolmogorov-Smirnov- statistic = D-    :    0.16
p-value of test                       :    0.55

Anderson-Darling statistic = A2       :    1.38
p-value of test                       :    0.21

Tests on the sum of all N observations
Standardized normal statistic         :   -0.95
p-value of test                       :    0.83

Sample variance                       :    0.46
p-value of test                       :    0.90

-----------------------------------------------
CPU time used                    :  00:03:18.59

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000029,  r =  0,   s = 3,   d = 3


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.18
p-value of test                       :    0.47

Kolmogorov-Smirnov- statistic = D-    :    0.11
p-value of test                       :    0.72

Anderson-Darling statistic = A2       :    0.28
p-value of test                       :    0.95

Tests on the sum of all N observations
Standardized normal statistic         :   -0.25
p-value of test                       :    0.60

Sample variance                       :    0.84
p-value of test                       :    0.58

-----------------------------------------------
CPU time used                    :  00:03:01.43

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000030,  r = 27,   s = 3,   d = 1


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.46
p-value of test                       :  8.7e-3

Kolmogorov-Smirnov- statistic = D-    :   0.081
p-value of test                       :    0.84

Anderson-Darling statistic = A2       :    2.32
p-value of test                       :    0.06

Tests on the sum of all N observations
Standardized normal statistic         :   -1.25
p-value of test                       :    0.89

Sample variance                       :    0.90
p-value of test                       :    0.52

-----------------------------------------------
CPU time used                    :  00:03:18.52

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000029,  r = 27,   s = 3,   d = 3


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.10
p-value of test                       :    0.75

Kolmogorov-Smirnov- statistic = D-    :    0.24
p-value of test                       :    0.28

Anderson-Darling statistic = A2       :    0.53
p-value of test                       :    0.72

Tests on the sum of all N observations
Standardized normal statistic         :    0.28
p-value of test                       :    0.39

Sample variance                       :    1.21
p-value of test                       :    0.28

-----------------------------------------------
CPU time used                    :  00:03:00.65

Generator state:
N/A




========= Summary results of BigCrush =========

 Version:          TestU01 1.2.3
 Generator:        stdin
 Number of statistics:  160
 Total CPU time:   05:07:25.40

 All tests were passed



# 
# End: 2019-10-10 21:47:18
# 
# Exit value: 0
# Bytes used: 1428410490880 >= 2^40 (1.4 TB)
# 
# Test duration: 313.36250523635005 minutes
# 
