You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ah...@apache.org on 2019/09/24 11:02:52 UTC

[commons-rng] branch master updated (5d2d828 -> a76c4b2)

This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/commons-rng.git.


    from 5d2d828  Fix trailing whitespace.
     new 4e3cba1  Fixed stress test APT column alignment format.
     new 6426aeb  Updated the user guide performance section.
     new 3fdf588  Added missing PCG_MCG_XSH_RR_32 stress test results.
     new a76c4b2  Update Javadoc stating that generated seeds are limited to max 128.

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../rng/examples/stress/ResultsCommand.java        |  12 +-
 .../apache/commons/rng/simple/RandomSource.java    |   5 +-
 src/site/apt/userguide/rng.apt                     | 501 ++++++++++-----------
 3 files changed, 243 insertions(+), 275 deletions(-)


[commons-rng] 03/04: Added missing PCG_MCG_XSH_RR_32 stress test results.

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-rng.git

commit 3fdf5882bee81228893e398c7ebdad13d4671877
Author: aherbert <ah...@apache.org>
AuthorDate: Tue Sep 24 10:50:49 2019 +0100

    Added missing PCG_MCG_XSH_RR_32 stress test results.
---
 src/site/apt/userguide/rng.apt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/site/apt/userguide/rng.apt b/src/site/apt/userguide/rng.apt
index 9fa1805..62c18ce 100644
--- a/src/site/apt/userguide/rng.apt
+++ b/src/site/apt/userguide/rng.apt
@@ -814,6 +814,8 @@ ListSampler.shuffle(rng, list)
 *-----------------+------------+----------------------+
 | PCG_RXS_M_XS_64 | {{{../txt/userguide/stress/dh_30_1}0}}, {{{../txt/userguide/stress/dh_30_2}0}}, {{{../txt/userguide/stress/dh_30_3}0}}, {{{../txt/userguide/stress/dh_30_4}0}}, {{{../txt/userguide/stress/dh_30_5}0}} | {{{../txt/userguide/stress/tu_30_1}0}}, {{{../txt/userguide/stress/tu_30_2}0}}, {{{../txt/userguide/stress/tu_30_3}1}}, {{{../txt/userguide/stress/tu_30_4}0}}, {{{../txt/userguide/stress/tu_30_5}0}} |
 *-----------------+------------+----------------------+
+| PCG_MCG_XSH_RR_32 | {{{../txt/userguide/stress/dh_31_1}0}}, {{{../txt/userguide/stress/dh_31_2}0}}, {{{../txt/userguide/stress/dh_31_3}0}}, {{{../txt/userguide/stress/dh_31_4}0}}, {{{../txt/userguide/stress/dh_31_5}0}} | {{{../txt/userguide/stress/tu_31_1}0}}, {{{../txt/userguide/stress/tu_31_2}0}}, {{{../txt/userguide/stress/tu_31_3}0}}, {{{../txt/userguide/stress/tu_31_4}0}}, {{{../txt/userguide/stress/tu_31_5}0}} |
+*-----------------+------------+----------------------+
 | PCG_MCG_XSH_RS_32 | {{{../txt/userguide/stress/dh_32_1}0}}, {{{../txt/userguide/stress/dh_32_2}0}}, {{{../txt/userguide/stress/dh_32_3}0}}, {{{../txt/userguide/stress/dh_32_4}0}}, {{{../txt/userguide/stress/dh_32_5}0}} | {{{../txt/userguide/stress/tu_32_1}1}}, {{{../txt/userguide/stress/tu_32_2}1}}, {{{../txt/userguide/stress/tu_32_3}0}}, {{{../txt/userguide/stress/tu_32_4}0}}, {{{../txt/userguide/stress/tu_32_5}0}} |
 *-----------------+------------+----------------------+
 | MSWS | {{{../txt/userguide/stress/dh_33_1}0}}, {{{../txt/userguide/stress/dh_33_2}0}}, {{{../txt/userguide/stress/dh_33_3}0}}, {{{../txt/userguide/stress/dh_33_4}0}}, {{{../txt/userguide/stress/dh_33_5}0}} | {{{../txt/userguide/stress/tu_33_1}0}}, {{{../txt/userguide/stress/tu_33_2}0}}, {{{../txt/userguide/stress/tu_33_3}0}}, {{{../txt/userguide/stress/tu_33_4}1}}, {{{../txt/userguide/stress/tu_33_5}0}} |


[commons-rng] 04/04: Update Javadoc stating that generated seeds are limited to max 128.

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-rng.git

commit a76c4b2493f249f83b06d559a352809895431ce1
Author: aherbert <ah...@apache.org>
AuthorDate: Tue Sep 24 12:02:48 2019 +0100

    Update Javadoc stating that generated seeds are limited to max 128.
---
 .../src/main/java/org/apache/commons/rng/simple/RandomSource.java    | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java b/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java
index 9ead40c..787fed1 100644
--- a/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java
+++ b/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java
@@ -549,8 +549,9 @@ public enum RandomSource {
      *   when the array contains more bits than the state of the generator.
      *  </li>
      *  <li>
-     *   When the {@code seed} is {@code null}, a seed of the correct type
-     *   and size (for array seeds) will be generated.
+     *   When the {@code seed} is {@code null}, a seed of the native type
+     *   will be generated. If the native type is an array, the generated
+     *   size is limited a maximum of 128.
      *  </li>
      * </ul>
      *


[commons-rng] 02/04: Updated the user guide performance section.

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-rng.git

commit 6426aeba599ed3e5b4948f9124e2cbb6d7411ec7
Author: aherbert <ah...@apache.org>
AuthorDate: Mon Sep 23 14:22:14 2019 +0100

    Updated the user guide performance section.
    
    Removed user guide table for MarsagliaNormalizedGaussianSampler. This
    table is redundant given the guide contains a table for all the
    normalized Gaussian samplers.
    
    Updated user guide performance benchmarks for next generation. The
    section now has a single table with results for next boolean, double,
    long, float and int,
    
    Updated the normalized Gaussian sampler section with new results.
    
    Updated the benchmark platform specification.
    
    Sorted tables using the order of RandomSource. This allows each table to
    be compared to the Quality section which uses the same order.
---
 src/site/apt/userguide/rng.apt | 427 +++++++++++++++++++----------------------
 1 file changed, 194 insertions(+), 233 deletions(-)

diff --git a/src/site/apt/userguide/rng.apt b/src/site/apt/userguide/rng.apt
index dbf2342..9fa1805 100644
--- a/src/site/apt/userguide/rng.apt
+++ b/src/site/apt/userguide/rng.apt
@@ -518,252 +518,211 @@ ListSampler.shuffle(rng, list)
 
   All runs were performed on a platform with the following characteristics:
 
-  * CPU: Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
+  * CPU: Intel(R) Xeon(R) CPU E5-1680 v3 @ 3.20GHz
 
-  * Java version: 1.8.0_181 (build 1.8.0_181-8u181-b13-2~deb9u1-b13)
+  * Java version: 1.8.0_222 (build 1.8.0_222-8u222-b10-1ubuntu1~16.04.1-b10)
 
-  * JVM: OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
+  * JVM: OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)
 
   []
 
-  The following tables indicate the performance (as measured by
-  {{{http://openjdk.java.net/projects/code-tools/jmh/}JMH}}) for generating
+  Performance was measured using the
+  {{{http://openjdk.java.net/projects/code-tools/jmh/}Java Micro-benchmark Harness (JMH)}}.
 
-  * a sequence of 32-bits integers (a.k.a. Java type <<<int>>>)
+  In these tables:
 
-  * a sequence of 64-bits integers (a.k.a. Java type <<<long>>>)
+  * The first column is the RNG identifier (see {{{../commons-rng-simple/apidocs/org/apache/commons/rng/simple/RandomSource.html}RandomSource}})
 
-  * a sequence of 64-bits floating point numbers (a.k.a. Java type <<<double>>>)
+  * <lower> is <better>.
 
   []
 
 
-  The first column is the RNG identifier (see {{{../commons-rng-simple/apidocs/org/apache/commons/rng/simple/RandomSource.html}RandomSource}}).
+* 4.1 Generating primitive values
+
+  The following table indicates the performance for generating:
+
+  * a sequence of true/false values (a.k.a. Java type <<<boolean>>>)
+
+  * a sequence of 64-bit floating point numbers (a.k.a. Java type <<<double>>>)
+
+  * a sequence of 64-bit integers (a.k.a. Java type <<<long>>>)
 
-  In these tables, <lower> is <better>.
-
-
-  ** Generating <<<int>>> values
-
-*--------------------------*----------------+
-|| RNG identifier          || Score (normalized to the score of <<<RandomSource.JDK>>>) |
-*--------------------------*----------------+
-| SPLIT_MIX_64             |        0.41479 |
-*--------------------------*----------------+
-| MWC_256                  |        0.45309 |
-*--------------------------*----------------+
-| TWO_CMRES                |        0.46736 |
-*--------------------------*----------------+
-| XOR_SHIFT_1024_S         |        0.47100 |
-*--------------------------*----------------+
-| MT_64                    |        0.54314 |
-*--------------------------*----------------+
-| KISS                     |        0.59604 |
-*--------------------------*----------------+
-| ISAAC                    |        0.65440 |
-*--------------------------*----------------+
-| MT                       |        0.70081 |
-*--------------------------*----------------+
-| WELL_512_A               |        0.82333 |
-*--------------------------*----------------+
-| WELL_1024_A              |        0.89367 |
-*--------------------------*----------------+
-| JDK                      |        1.00000 |
-*--------------------------*----------------+
-| WELL_19937_A             |        1.06771 |
-*--------------------------*----------------+
-| WELL_44497_A             |        1.08662 |
-*--------------------------*----------------+
-| WELL_19937_C             |        1.13443 |
-*--------------------------*----------------+
-| WELL_44497_B             |        1.17291 |
-*--------------------------*----------------+
-
-
-  ** Generating <<<long>>> values
-
-*--------------------------*----------------+
-|| RNG identifier          || Score (normalized to the score of <<<RandomSource.JDK>>>) |
-*--------------------------*----------------+
-| SPLIT_MIX_64             |        0.21751 |
-*--------------------------*----------------+
-| TWO_CMRES                |        0.25344 |
-*--------------------------*----------------+
-| XOR_SHIFT_1024_S         |        0.27299 |
-*--------------------------*----------------+
-| MWC_256                  |        0.32938 |
-*--------------------------*----------------+
-| MT_64                    |        0.36588 |
-*--------------------------*----------------+
-| KISS                     |        0.50416 |
-*--------------------------*----------------+
-| MT                       |        0.54819 |
-*--------------------------*----------------+
-| ISAAC                    |        0.60151 |
-*--------------------------*----------------+
-| WELL_1024_A              |        0.66864 |
-*--------------------------*----------------+
-| WELL_512_A               |        0.69384 |
-*--------------------------*----------------+
-| JDK                      |        1.00000 |
-*--------------------------*----------------+
-| WELL_19937_A             |        1.00596 |
-*--------------------------*----------------+
-| WELL_44497_A             |        1.05796 |
-*--------------------------*----------------+
-| WELL_19937_C             |        1.09265 |
-*--------------------------*----------------+
-| WELL_44497_B             |        1.16150 |
-*--------------------------*----------------+
-
-
-  ** Generating <<<double>>> values
-
-*--------------------------*----------------+
-|| RNG identifier          || Score (normalized to the score of <<<RandomSource.JDK>>>) |
-*--------------------------*----------------+
-| SPLIT_MIX_64             |        0.27611 |
-*--------------------------*----------------+
-| TWO_CMRES                |        0.31356 |
-*--------------------------*----------------+
-| XOR_SHIFT_1024_S         |        0.33200 |
-*--------------------------*----------------+
-| MWC_256                  |        0.38690 |
-*--------------------------*----------------+
-| MT_64                    |        0.43439 |
-*--------------------------*----------------+
-| KISS                     |        0.52137 |
-*--------------------------*----------------+
-| ISAAC                    |        0.60310 |
-*--------------------------*----------------+
-| MT                       |        0.61153 |
-*--------------------------*----------------+
-| WELL_1024_A              |        0.67584 |
-*--------------------------*----------------+
-| WELL_512_A               |        0.69410 |
-*--------------------------*----------------+
-| JDK                      |        1.00000 |
-*--------------------------*----------------+
-| WELL_19937_A             |        1.11309 |
-*--------------------------*----------------+
-| WELL_19937_C             |        1.15391 |
-*--------------------------*----------------+
-| WELL_44497_A             |        1.17865 |
-*--------------------------*----------------+
-| WELL_44497_B             |        1.20130 |
-*--------------------------*----------------+
-
-
-  ** Generating <<<boolean>>> values
-
-*--------------------------*----------------+
-|| RNG identifier          || Score (normalized to the score of <<<RandomSource.JDK>>>) |
-*--------------------------*----------------+
-| MT                       |        0.93637 |
-*--------------------------*----------------+
-| MWC_256                  |        0.95318 |
-*--------------------------*----------------+
-| WELL_19937_A             |        0.96010 |
-*--------------------------*----------------+
-| WELL_1024_A              |        0.96357 |
-*--------------------------*----------------+
-| WELL_44497_B             |        0.97277 |
-*--------------------------*----------------+
-| KISS                     |        0.97344 |
-*--------------------------*----------------+
-| WELL_19937_C             |        0.99193 |
-*--------------------------*----------------+
-| JDK                      |        1.00000 |
-*--------------------------*----------------+
-| ISAAC                    |        1.00620 |
-*--------------------------*----------------+
-| WELL_44497_A             |        1.00850 |
-*--------------------------*----------------+
-| WELL_512_A               |        1.03589 |
-*--------------------------*----------------+
-| XOR_SHIFT_1024_S         |        1.10674 |
-*--------------------------*----------------+
-| SPLIT_MIX_64             |        1.12140 |
-*--------------------------*----------------+
-| MT_64                    |        1.13390 |
-*--------------------------*----------------+
-| TWO_CMRES                |        1.13793 |
-*--------------------------*----------------+
-
-
-  ** Sampling from a <N(0,1)> Gaussian distribution ({{{../commons-rng-sampling/apidocs/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.html}MarsagliaNormalizedGaussianSampler}} implementation)
-
-*--------------------------*----------------+
-|| RNG identifier          || Score (normalized to the score of <<<RandomSource.JDK>>>) |
-*--------------------------*----------------+
-| SPLIT_MIX_64             |        0.41299 |
-*--------------------------*----------------+
-| XOR_SHIFT_1024_S         |        0.43226 |
-*--------------------------*----------------+
-| TWO_CMRES                |        0.50874 |
-*--------------------------*----------------+
-| MWC_256                  |        0.51402 |
-*--------------------------*----------------+
-| MT_64                    |        0.55053 |
-*--------------------------*----------------+
-| ISAAC                    |        0.62246 |
-*--------------------------*----------------+
-| KISS                     |        0.63574 |
-*--------------------------*----------------+
-| MT                       |        0.65961 |
-*--------------------------*----------------+
-| WELL_512_A               |        0.76610 |
-*--------------------------*----------------+
-| WELL_1024_A              |        0.82318 |
-*--------------------------*----------------+
-| WELL_19937_A             |        0.93490 |
-*--------------------------*----------------+
-| WELL_44497_A             |        0.93664 |
-*--------------------------*----------------+
-| JDK                      |        1.00000 |
-*--------------------------*----------------+
-| WELL_44497_B             |        1.01042 |
-*--------------------------*----------------+
-| WELL_19937_C             |        1.02012 |
-*--------------------------*----------------+
-
-
-  ** Comparing {{{../commons-rng-sampling/apidocs/org/apache/commons/rng/sampling/distribution/BoxMullerNormalizedGaussianSampler.html}BoxMullerNormalizedGaussianSampler}}, {{{../commons-rng-sampling/apidocs/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.html}MarsagliaNormalizedGaussianSampler}}, {{{../commons-rng-sampling/apidocs/org/apache/commons/rng/sampling/distribution/ZigguratNormalizedGaussianSampler.html}ZigguratNormalizedGaussianSampler}}.
-     Each score is normalized to the score of {{{https://docs.oracle.com/javase/8/docs/api/java/util/Random.html#nextGaussian--}nextGaussian()}} method of <<<java.util.Random>>>.
-
-*--------------------------*----------------+----------------+----------------+
-|| RNG identifier          || <<<BoxMullerNormalizedGaussianSampler>>> || <<<MarsagliaNormalizedGaussianSampler>>> || <<<ZigguratNormalizedGaussianSampler>>> |
-*--------------------------*----------------+----------------+----------------+
-| ISAAC                    |        0.98302 |        0.42238 |        0.25057 |
-*--------------------------*----------------+----------------+----------------+
-| JDK                      |        1.06425 |        0.64978 |        0.34814 |
-*--------------------------*----------------+----------------+----------------+
-| KISS                     |        0.95534 |        0.42419 |        0.22697 |
-*--------------------------*----------------+----------------+----------------+
-| MT                       |        0.96351 |        0.44536 |        0.25375 |
-*--------------------------*----------------+----------------+----------------+
-| MT_64                    |        0.88290 |        0.37917 |        0.22083 |
-*--------------------------*----------------+----------------+----------------+
-| MWC_256                  |        0.92266 |        0.35825 |        0.19624 |
-*--------------------------*----------------+----------------+----------------+
-| SPLIT_MIX_64             |        0.83485 |        0.29606 |        0.17689 |
-*--------------------------*----------------+----------------+----------------+
-| TWO_CMRES                |        0.85873 |        0.35949 |        0.20117 |
-*--------------------------*----------------+----------------+----------------+
-| WELL_1024_A              |        1.02734 |        0.53311 |        0.27986 |
-*--------------------------*----------------+----------------+----------------+
-| WELL_19937_A             |        1.08683 |        0.63207 |        0.33016 |
-*--------------------------*----------------+----------------+----------------+
-| WELL_19937_C             |        1.09748 |        0.61706 |        0.35864 |
-*--------------------------*----------------+----------------+----------------+
-| WELL_44497_A             |        1.12428 |        0.61903 |        0.35108 |
-*--------------------------*----------------+----------------+----------------+
-| WELL_44497_B             |        1.12845 |        0.65736 |        0.37151 |
-*--------------------------*----------------+----------------+----------------+
-| WELL_512_A               |        1.01548 |        0.50523 |        0.27629 |
-*--------------------------*----------------+----------------+----------------+
-| XOR_SHIFT_1024_S         |        0.86013 |        0.30990 |        0.18612 |
-*--------------------------*----------------+----------------+----------------+
+  * a sequence of 32-bit floating point numbers (a.k.a. Java type <<<float>>>)
+
+  * a sequence of 32-bit integers (a.k.a. Java type <<<int>>>)
+
+  []
+
+  Scores are normalized to the score of <<<RandomSource.JDK>>>.
+
+  Note that the core implementations use all the bits from the random source. For example a native generator of 32-bit <<<int>>> values requires 1 generation call per 32 <<<boolean>>> values; a native generator of 64-bit <<<long>>> values requires 1 generation call per 2 <<<int>>> values. This implementation is fast for all generators but requires a high quality random source. See the {{{a5._Quality}Quality}} section.
+
+*-----------------------*---------*---------*---------*---------*---------*
+|| RNG identifier       || <<<boolean>>> || <<<double>>> || <<<long>>> || <<<float>>> || <<<int>>> |
+*-----------------------+---------:---------:---------:---------:---------:
+| JDK                   |       1 |       1 |       1 |       1 |       1 |
+*-----------------------+---------:---------:---------:---------:---------:
+| WELL_512_A            | 1.22655 | 0.65071 | 0.62194 | 0.93623 | 0.78108 |
+*-----------------------+---------:---------:---------:---------:---------:
+| WELL_1024_A           | 1.39152 | 0.65642 | 0.61325 | 0.94264 | 0.75083 |
+*-----------------------+---------:---------:---------:---------:---------:
+| WELL_19937_A          | 1.26758 | 0.95801 | 0.90653 | 1.16216 | 1.12007 |
+*-----------------------+---------:---------:---------:---------:---------:
+| WELL_19937_C          | 1.63209 | 1.06124 | 0.93953 | 1.20843 | 1.12656 |
+*-----------------------+---------:---------:---------:---------:---------:
+| WELL_44497_A          | 1.27947 | 1.05099 | 0.97995 | 1.17942 | 1.14505 |
+*-----------------------+---------:---------:---------:---------:---------:
+| WELL_44497_B          | 1.29627 | 1.09318 | 1.03165 | 1.27612 | 1.20631 |
+*-----------------------+---------:---------:---------:---------:---------:
+| MT                    | 1.18432 | 0.50200 | 0.43068 | 0.68716 | 0.58454 |
+*-----------------------+---------:---------:---------:---------:---------:
+| ISAAC                 | 0.98139 | 0.54663 | 0.49022 | 0.60317 | 0.51107 |
+*-----------------------+---------:---------:---------:---------:---------:
+| SPLIT_MIX_64          | 1.14366 | 0.13497 | 0.09827 | 0.28296 | 0.19552 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XOR_SHIFT_1024_S      | 1.14959 | 0.18661 | 0.14464 | 0.34088 | 0.24819 |
+*-----------------------+---------:---------:---------:---------:---------:
+| TWO_CMRES             | 1.16246 | 0.18330 | 0.15270 | 0.34889 | 0.33741 |
+*-----------------------+---------:---------:---------:---------:---------:
+| MT_64                 | 1.17373 | 0.27447 | 0.23400 | 0.48126 | 0.36190 |
+*-----------------------+---------:---------:---------:---------:---------:
+| MWC_256               | 1.15806 | 0.25385 | 0.21488 | 0.36679 | 0.25665 |
+*-----------------------+---------:---------:---------:---------:---------:
+| KISS                  | 1.17711 | 0.41357 | 0.41569 | 0.54175 | 0.42867 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XOR_SHIFT_1024_S_PHI  | 1.16777 | 0.18515 | 0.14398 | 0.34273 | 0.24949 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_RO_SHI_RO_64_S     | 1.16587 | 0.18998 | 0.13528 | 0.24388 | 0.18467 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_RO_SHI_RO_64_SS    | 1.17344 | 0.24622 | 0.17832 | 0.29342 | 0.20841 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_SHI_RO_128_PLUS    | 1.14797 | 0.26314 | 0.18365 | 0.32612 | 0.25379 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_SHI_RO_128_SS      | 1.15925 | 0.32620 | 0.25970 | 0.58654 | 0.28701 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_RO_SHI_RO_128_PLUS | 1.15165 | 0.10623 | 0.08201 | 0.25829 | 0.17334 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_RO_SHI_RO_128_SS   | 1.15669 | 0.13465 | 0.10156 | 0.27627 | 0.20088 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_SHI_RO_256_PLUS    | 1.14012 | 0.13972 | 0.11090 | 0.29441 | 0.21667 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_SHI_RO_256_SS      | 1.14601 | 0.17540 | 0.12801 | 0.32067 | 0.23569 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_SHI_RO_512_PLUS    | 1.17019 | 0.25455 | 0.19365 | 0.40153 | 0.34492 |
+*-----------------------+---------:---------:---------:---------:---------:
+| XO_SHI_RO_512_SS      | 1.16127 | 0.27050 | 0.21896 | 0.41566 | 0.35364 |
+*-----------------------+---------:---------:---------:---------:---------:
+| PCG_XSH_RR_32         | 0.94110 | 0.30309 | 0.26161 | 0.39280 | 0.19952 |
+*-----------------------+---------:---------:---------:---------:---------:
+| PCG_XSH_RS_32         | 0.94289 | 0.24067 | 0.18844 | 0.29202 | 0.20038 |
+*-----------------------+---------:---------:---------:---------:---------:
+| PCG_RXS_M_XS_64       | 1.14866 | 0.13325 | 0.11365 | 0.29439 | 0.20838 |
+*-----------------------+---------:---------:---------:---------:---------:
+| PCG_MCG_XSH_RR_32     | 0.94086 | 0.29029 | 0.28379 | 0.36289 | 0.17871 |
+*-----------------------+---------:---------:---------:---------:---------:
+| PCG_MCG_XSH_RS_32     | 0.93713 | 0.22664 | 0.17866 | 0.26299 | 0.16919 |
+*-----------------------+---------:---------:---------:---------:---------:
+| MSWS                  | 1.12773 | 0.17979 | 0.15224 | 0.23583 | 0.19053 |
+*-----------------------+---------:---------:---------:---------:---------:
+| SFC_32                | 1.14919 | 0.28371 | 0.19399 | 0.32854 | 0.26122 |
+*-----------------------+---------:---------:---------:---------:---------:
+| SFC_64                | 1.13896 | 0.14117 | 0.26818 | 0.31351 | 0.23760 |
+*-----------------------+---------:---------:---------:---------:---------:
+| JSF_32                | 1.14369 | 0.24454 | 0.17016 | 0.29664 | 0.22666 |
+*-----------------------+---------:---------:---------:---------:---------:
+| JSF_64                | 1.13731 | 0.13444 | 0.10965 | 0.27864 | 0.21230 |
+*-----------------------+---------:---------:---------:---------:---------:
+
+  The <<<RandomSource.JDK>>> generator uses thread-safe (synchronized) <<<int>>> generation which has a performance overhead (see the <<<int>>> generation results). For the <<<boolean>>> generation the synchronization occurs 1 in 32 calls and the resulting performance is good. However the output will be low quality and this generator should not be used. See the {{{a5._Quality}Quality}} section for details.
+
+
+* 4.2 Generating Gaussian samples
+
+  The following table compares the
+  {{{../commons-rng-sampling/apidocs/org/apache/commons/rng/sampling/distribution/BoxMullerNormalizedGaussianSampler.html}BoxMullerNormalizedGaussianSampler}},
+  {{{../commons-rng-sampling/apidocs/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.html}MarsagliaNormalizedGaussianSampler}},
+  and {{{../commons-rng-sampling/apidocs/org/apache/commons/rng/sampling/distribution/ZigguratNormalizedGaussianSampler.html}ZigguratNormalizedGaussianSampler}}.
+
+  Each score is normalized to the score of {{{https://docs.oracle.com/javase/8/docs/api/java/util/Random.html#nextGaussian--}nextGaussian()}} method of <<<java.util.Random>>>.
+
+*-----------------------*---------*---------*---------*
+|| RNG identifier       || <<<BoxMullerNormalizedGaussianSampler>>> || <<<MarsagliaNormalizedGaussianSampler>>> || <<<ZigguratNormalizedGaussianSampler>>> |
+*-----------------------+---------:---------:---------:
+| JDK                   | 0.77702 | 0.73404 | 0.35962 |
+*-----------------------+---------:---------:---------:
+| WELL_512_A            | 0.74382 | 0.55948 | 0.29644 |
+*-----------------------+---------:---------:---------:
+| WELL_1024_A           | 0.76090 | 0.58622 | 0.28907 |
+*-----------------------+---------:---------:---------:
+| WELL_19937_A          | 0.82990 | 0.69155 | 0.33604 |
+*-----------------------+---------:---------:---------:
+| WELL_19937_C          | 0.84971 | 0.68691 | 0.36119 |
+*-----------------------+---------:---------:---------:
+| WELL_44497_A          | 0.87142 | 0.68325 | 0.36127 |
+*-----------------------+---------:---------:---------:
+| WELL_44497_B          | 0.87542 | 0.72058 | 0.37799 |
+*-----------------------+---------:---------:---------:
+| MT                    | 0.66909 | 0.47290 | 0.25770 |
+*-----------------------+---------:---------:---------:
+| ISAAC                 | 0.68446 | 0.44854 | 0.26808 |
+*-----------------------+---------:---------:---------:
+| SPLIT_MIX_64          | 0.57968 | 0.31845 | 0.16815 |
+*-----------------------+---------:---------:---------:
+| XOR_SHIFT_1024_S      | 0.57622 | 0.32793 | 0.18497 |
+*-----------------------+---------:---------:---------:
+| TWO_CMRES             | 0.62548 | 0.35266 | 0.20977 |
+*-----------------------+---------:---------:---------:
+| MT_64                 | 0.62083 | 0.37632 | 0.21736 |
+*-----------------------+---------:---------:---------:
+| MWC_256               | 0.58796 | 0.35393 | 0.18765 |
+*-----------------------+---------:---------:---------:
+| KISS                  | 0.65734 | 0.45035 | 0.22921 |
+*-----------------------+---------:---------:---------:
+| XOR_SHIFT_1024_S_PHI  | 0.57800 | 0.32762 | 0.18537 |
+*-----------------------+---------:---------:---------:
+| XO_RO_SHI_RO_64_S     | 0.58318 | 0.33575 | 0.17617 |
+*-----------------------+---------:---------:---------:
+| XO_RO_SHI_RO_64_SS    | 0.59105 | 0.34913 | 0.19439 |
+*-----------------------+---------:---------:---------:
+| XO_SHI_RO_128_PLUS    | 0.59106 | 0.33631 | 0.17957 |
+*-----------------------+---------:---------:---------:
+| XO_SHI_RO_128_SS      | 0.61742 | 0.37101 | 0.19600 |
+*-----------------------+---------:---------:---------:
+| XO_RO_SHI_RO_128_PLUS | 0.55609 | 0.30674 | 0.14833 |
+*-----------------------+---------:---------:---------:
+| XO_RO_SHI_RO_128_SS   | 0.55722 | 0.32036 | 0.15569 |
+*-----------------------+---------:---------:---------:
+| XO_SHI_RO_256_PLUS    | 0.56563 | 0.30972 | 0.15639 |
+*-----------------------+---------:---------:---------:
+| XO_SHI_RO_256_SS      | 0.57758 | 0.31364 | 0.16399 |
+*-----------------------+---------:---------:---------:
+| XO_SHI_RO_512_PLUS    | 0.58733 | 0.36153 | 0.18189 |
+*-----------------------+---------:---------:---------:
+| XO_SHI_RO_512_SS      | 0.58114 | 0.32797 | 0.19000 |
+*-----------------------+---------:---------:---------:
+| PCG_XSH_RR_32         | 0.60315 | 0.41543 | 0.22119 |
+*-----------------------+---------:---------:---------:
+| PCG_XSH_RS_32         | 0.59535 | 0.35324 | 0.20068 |
+*-----------------------+---------:---------:---------:
+| PCG_RXS_M_XS_64       | 0.57059 | 0.32078 | 0.18113 |
+*-----------------------+---------:---------:---------:
+| PCG_MCG_XSH_RR_32     | 0.59735 | 0.41154 | 0.21198 |
+*-----------------------+---------:---------:---------:
+| PCG_MCG_XSH_RS_32     | 0.58732 | 0.34865 | 0.18043 |
+*-----------------------+---------:---------:---------:
+| MSWS                  | 0.57420 | 0.33353 | 0.17289 |
+*-----------------------+---------:---------:---------:
+| SFC_32                | 0.58872 | 0.34649 | 0.18663 |
+*-----------------------+---------:---------:---------:
+| SFC_64                | 0.55058 | 0.38304 | 0.15942 |
+*-----------------------+---------:---------:---------:
+| JSF_32                | 0.63566 | 0.35527 | 0.17554 |
+*-----------------------+---------:---------:---------:
+| JSF_64                | 0.56291 | 0.31014 | 0.15530 |
+*-----------------------+---------:---------:---------:
+
+  Note that the reference <<<java.util.Random>>> nextGaussian() method uses the Box-Muller algorithm and a synchronized method call per sample. The <<<RandomSource.JDK>>> RNG will use 1 synchronized method call for two samples when using the <<<BoxMullerNormalizedGaussianSampler>>>, hence the observed difference. All the other RNGs are not synchronized.
 
 
 5. Quality
@@ -781,6 +740,8 @@ ListSampler.shuffle(rng, list)
 
   []
 
+  Note that the test suites accept 32-bit integer values. The RNG implementations are tested using all the output bits from the generator. Any generator of 64-bit <<<long>>> values has the upper and lower 32-bits passed to the test suite.
+
   The first column is the RNG identifier (see {{{../commons-rng-simple/apidocs/org/apache/commons/rng/simple/RandomSource.html}RandomSource}}).
   The second and third columns contain the number of tests which <Dieharder> and <TestU01>
   respectively reported as below the accepted threshold for considering the sequence as


[commons-rng] 01/04: Fixed stress test APT column alignment format.

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-rng.git

commit 4e3cba188bc6b028ad8254141829e867661ecace
Author: aherbert <ah...@apache.org>
AuthorDate: Mon Sep 23 17:14:46 2019 +0100

    Fixed stress test APT column alignment format.
---
 .../rng/examples/stress/ResultsCommand.java        | 12 ++--
 src/site/apt/userguide/rng.apt                     | 72 +++++++++++-----------
 2 files changed, 44 insertions(+), 40 deletions(-)

diff --git a/commons-rng-examples/examples-stress/src/main/java/org/apache/commons/rng/examples/stress/ResultsCommand.java b/commons-rng-examples/examples-stress/src/main/java/org/apache/commons/rng/examples/stress/ResultsCommand.java
index d526693..a564617 100644
--- a/commons-rng-examples/examples-stress/src/main/java/org/apache/commons/rng/examples/stress/ResultsCommand.java
+++ b/commons-rng-examples/examples-stress/src/main/java/org/apache/commons/rng/examples/stress/ResultsCommand.java
@@ -690,7 +690,8 @@ class ResultsCommand implements Callable<Void> {
 
         // Output
         try (BufferedWriter output = new BufferedWriter(new OutputStreamWriter(out, StandardCharsets.UTF_8))) {
-            output.write(separator);
+            // For the first line using '*' (centre) character instead of '+' (left align)
+            output.write(separator.replace('+', '*'));
             output.write(header);
             output.newLine();
             output.write(separator);
@@ -832,15 +833,18 @@ class ResultsCommand implements Callable<Void> {
     /**
      * Creates the APT separator for each table row.
      *
+     * <p>The separator is created using the '+' character to left align the columns.
+     *
      * @param header Header.
      * @return the separator
      */
     private static String createAPTSeparator(String header) {
-        // Replace everything with '-' except "||" which is replaced with "*-" or "-*" at the end
+        // Replace everything with '-' except '|' which is replaced with "*-" for the first
+        // character, "+-" for all other occurrences except "-+" at the end
         final StringBuilder sb = new StringBuilder(header);
         for (int i = 0; i < header.length(); i++) {
             if (sb.charAt(i) == '|') {
-                sb.setCharAt(i, '*');
+                sb.setCharAt(i, i == 0 ? '*' : '+');
                 sb.setCharAt(i + 1,  '-');
             } else {
                 sb.setCharAt(i,  '-');
@@ -848,7 +852,7 @@ class ResultsCommand implements Callable<Void> {
         }
         // Fix the end
         sb.setCharAt(header.length() - 2, '-');
-        sb.setCharAt(header.length() - 1, '*');
+        sb.setCharAt(header.length() - 1, '+');
         sb.append(System.lineSeparator());
         return sb.toString();
     }
diff --git a/src/site/apt/userguide/rng.apt b/src/site/apt/userguide/rng.apt
index c330c1e..dbf2342 100644
--- a/src/site/apt/userguide/rng.apt
+++ b/src/site/apt/userguide/rng.apt
@@ -794,77 +794,77 @@ ListSampler.shuffle(rng, list)
 
 *-----------------*------------*----------------------*
 || RNG identifier || Dieharder || TestU01 (BigCrush) ||
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | JDK | {{{../txt/userguide/stress/dh_1_1}4}}, {{{../txt/userguide/stress/dh_1_2}4}}, {{{../txt/userguide/stress/dh_1_3}4}}, {{{../txt/userguide/stress/dh_1_4}4}}, {{{../txt/userguide/stress/dh_1_5}4}} | {{{../txt/userguide/stress/tu_1_1}74}}, {{{../txt/userguide/stress/tu_1_2}72}}, {{{../txt/userguide/stress/tu_1_3}74}}, {{{../txt/userguide/stress/tu_1_4}73}}, {{{../txt/userguide/stress/tu_1_5}74}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | WELL_512_A | {{{../txt/userguide/stress/dh_2_1}0}}, {{{../txt/userguide/stress/dh_2_2}0}}, {{{../txt/userguide/stress/dh_2_3}0}}, {{{../txt/userguide/stress/dh_2_4}0}}, {{{../txt/userguide/stress/dh_2_5}0}} | {{{../txt/userguide/stress/tu_2_1}7}}, {{{../txt/userguide/stress/tu_2_2}6}}, {{{../txt/userguide/stress/tu_2_3}6}}, {{{../txt/userguide/stress/tu_2_4}6}}, {{{../txt/userguide/stress/tu_2_5}6}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | WELL_1024_A | {{{../txt/userguide/stress/dh_3_1}0}}, {{{../txt/userguide/stress/dh_3_2}0}}, {{{../txt/userguide/stress/dh_3_3}0}}, {{{../txt/userguide/stress/dh_3_4}0}}, {{{../txt/userguide/stress/dh_3_5}0}} | {{{../txt/userguide/stress/tu_3_1}4}}, {{{../txt/userguide/stress/tu_3_2}4}}, {{{../txt/userguide/stress/tu_3_3}5}}, {{{../txt/userguide/stress/tu_3_4}4}}, {{{../txt/userguide/stress/tu_3_5}4}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | WELL_19937_A | {{{../txt/userguide/stress/dh_4_1}0}}, {{{../txt/userguide/stress/dh_4_2}1}}, {{{../txt/userguide/stress/dh_4_3}0}}, {{{../txt/userguide/stress/dh_4_4}0}}, {{{../txt/userguide/stress/dh_4_5}0}} | {{{../txt/userguide/stress/tu_4_1}3}}, {{{../txt/userguide/stress/tu_4_2}3}}, {{{../txt/userguide/stress/tu_4_3}2}}, {{{../txt/userguide/stress/tu_4_4}2}}, {{{../txt/userguide/stress/tu_4_5}2}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | WELL_19937_C | {{{../txt/userguide/stress/dh_5_1}0}}, {{{../txt/userguide/stress/dh_5_2}0}}, {{{../txt/userguide/stress/dh_5_3}0}}, {{{../txt/userguide/stress/dh_5_4}0}}, {{{../txt/userguide/stress/dh_5_5}0}} | {{{../txt/userguide/stress/tu_5_1}2}}, {{{../txt/userguide/stress/tu_5_2}2}}, {{{../txt/userguide/stress/tu_5_3}3}}, {{{../txt/userguide/stress/tu_5_4}2}}, {{{../txt/userguide/stress/tu_5_5}2}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | WELL_44497_A | {{{../txt/userguide/stress/dh_6_1}0}}, {{{../txt/userguide/stress/dh_6_2}0}}, {{{../txt/userguide/stress/dh_6_3}0}}, {{{../txt/userguide/stress/dh_6_4}0}}, {{{../txt/userguide/stress/dh_6_5}0}} | {{{../txt/userguide/stress/tu_6_1}2}}, {{{../txt/userguide/stress/tu_6_2}2}}, {{{../txt/userguide/stress/tu_6_3}2}}, {{{../txt/userguide/stress/tu_6_4}2}}, {{{../txt/userguide/stress/tu_6_5}3}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | WELL_44497_B | {{{../txt/userguide/stress/dh_7_1}0}}, {{{../txt/userguide/stress/dh_7_2}0}}, {{{../txt/userguide/stress/dh_7_3}0}}, {{{../txt/userguide/stress/dh_7_4}0}}, {{{../txt/userguide/stress/dh_7_5}0}} | {{{../txt/userguide/stress/tu_7_1}2}}, {{{../txt/userguide/stress/tu_7_2}3}}, {{{../txt/userguide/stress/tu_7_3}2}}, {{{../txt/userguide/stress/tu_7_4}2}}, {{{../txt/userguide/stress/tu_7_5}2}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | MT | {{{../txt/userguide/stress/dh_8_1}0}}, {{{../txt/userguide/stress/dh_8_2}0}}, {{{../txt/userguide/stress/dh_8_3}0}}, {{{../txt/userguide/stress/dh_8_4}0}}, {{{../txt/userguide/stress/dh_8_5}0}} | {{{../txt/userguide/stress/tu_8_1}2}}, {{{../txt/userguide/stress/tu_8_2}3}}, {{{../txt/userguide/stress/tu_8_3}2}}, {{{../txt/userguide/stress/tu_8_4}2}}, {{{../txt/userguide/stress/tu_8_5}2}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | ISAAC | {{{../txt/userguide/stress/dh_9_1}0}}, {{{../txt/userguide/stress/dh_9_2}0}}, {{{../txt/userguide/stress/dh_9_3}0}}, {{{../txt/userguide/stress/dh_9_4}0}}, {{{../txt/userguide/stress/dh_9_5}0}} | {{{../txt/userguide/stress/tu_9_1}0}}, {{{../txt/userguide/stress/tu_9_2}1}}, {{{../txt/userguide/stress/tu_9_3}2}}, {{{../txt/userguide/stress/tu_9_4}0}}, {{{../txt/userguide/stress/tu_9_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | SPLIT_MIX_64 | {{{../txt/userguide/stress/dh_10_1}0}}, {{{../txt/userguide/stress/dh_10_2}0}}, {{{../txt/userguide/stress/dh_10_3}0}}, {{{../txt/userguide/stress/dh_10_4}0}}, {{{../txt/userguide/stress/dh_10_5}0}} | {{{../txt/userguide/stress/tu_10_1}1}}, {{{../txt/userguide/stress/tu_10_2}0}}, {{{../txt/userguide/stress/tu_10_3}0}}, {{{../txt/userguide/stress/tu_10_4}0}}, {{{../txt/userguide/stress/tu_10_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XOR_SHIFT_1024_S | {{{../txt/userguide/stress/dh_11_1}0}}, {{{../txt/userguide/stress/dh_11_2}0}}, {{{../txt/userguide/stress/dh_11_3}0}}, {{{../txt/userguide/stress/dh_11_4}0}}, {{{../txt/userguide/stress/dh_11_5}0}} | {{{../txt/userguide/stress/tu_11_1}0}}, {{{../txt/userguide/stress/tu_11_2}0}}, {{{../txt/userguide/stress/tu_11_3}0}}, {{{../txt/userguide/stress/tu_11_4}0}}, {{{../txt/userguide/stress/tu_11_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | TWO_CMRES | {{{../txt/userguide/stress/dh_12_1}2}}, {{{../txt/userguide/stress/dh_12_2}2}}, {{{../txt/userguide/stress/dh_12_3}2}}, {{{../txt/userguide/stress/dh_12_4}2}}, {{{../txt/userguide/stress/dh_12_5}2}} | {{{../txt/userguide/stress/tu_12_1}4}}, {{{../txt/userguide/stress/tu_12_2}3}}, {{{../txt/userguide/stress/tu_12_3}3}}, {{{../txt/userguide/stress/tu_12_4}5}}, {{{../txt/userguide/stress/tu_12_5}4}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | MT_64 | {{{../txt/userguide/stress/dh_14_1}0}}, {{{../txt/userguide/stress/dh_14_2}0}}, {{{../txt/userguide/stress/dh_14_3}0}}, {{{../txt/userguide/stress/dh_14_4}0}}, {{{../txt/userguide/stress/dh_14_5}0}} | {{{../txt/userguide/stress/tu_14_1}2}}, {{{../txt/userguide/stress/tu_14_2}3}}, {{{../txt/userguide/stress/tu_14_3}2}}, {{{../txt/userguide/stress/tu_14_4}2}}, {{{../txt/userguide/stress/tu_14_5}2}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | MWC_256 | {{{../txt/userguide/stress/dh_15_1}0}}, {{{../txt/userguide/stress/dh_15_2}0}}, {{{../txt/userguide/stress/dh_15_3}0}}, {{{../txt/userguide/stress/dh_15_4}0}}, {{{../txt/userguide/stress/dh_15_5}0}} | {{{../txt/userguide/stress/tu_15_1}0}}, {{{../txt/userguide/stress/tu_15_2}0}}, {{{../txt/userguide/stress/tu_15_3}0}}, {{{../txt/userguide/stress/tu_15_4}2}}, {{{../txt/userguide/stress/tu_15_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | KISS | {{{../txt/userguide/stress/dh_16_1}0}}, {{{../txt/userguide/stress/dh_16_2}0}}, {{{../txt/userguide/stress/dh_16_3}0}}, {{{../txt/userguide/stress/dh_16_4}0}}, {{{../txt/userguide/stress/dh_16_5}0}} | {{{../txt/userguide/stress/tu_16_1}0}}, {{{../txt/userguide/stress/tu_16_2}0}}, {{{../txt/userguide/stress/tu_16_3}0}}, {{{../txt/userguide/stress/tu_16_4}0}}, {{{../txt/userguide/stress/tu_16_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XOR_SHIFT_1024_S_PHI | {{{../txt/userguide/stress/dh_17_1}0}}, {{{../txt/userguide/stress/dh_17_2}0}}, {{{../txt/userguide/stress/dh_17_3}0}}, {{{../txt/userguide/stress/dh_17_4}0}}, {{{../txt/userguide/stress/dh_17_5}0}} | {{{../txt/userguide/stress/tu_17_1}0}}, {{{../txt/userguide/stress/tu_17_2}0}}, {{{../txt/userguide/stress/tu_17_3}0}}, {{{../txt/userguide/stress/tu_17_4}0}}, {{{../txt/userguide/stress/tu_17_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_RO_SHI_RO_64_S | {{{../txt/userguide/stress/dh_18_1}0}}, {{{../txt/userguide/stress/dh_18_2}0}}, {{{../txt/userguide/stress/dh_18_3}0}}, {{{../txt/userguide/stress/dh_18_4}0}}, {{{../txt/userguide/stress/dh_18_5}0}} | {{{../txt/userguide/stress/tu_18_1}1}}, {{{../txt/userguide/stress/tu_18_2}1}}, {{{../txt/userguide/stress/tu_18_3}2}}, {{{../txt/userguide/stress/tu_18_4}1}}, {{{../txt/userguide/stress/tu_18_5}3}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_RO_SHI_RO_64_SS | {{{../txt/userguide/stress/dh_19_1}0}}, {{{../txt/userguide/stress/dh_19_2}0}}, {{{../txt/userguide/stress/dh_19_3}0}}, {{{../txt/userguide/stress/dh_19_4}0}}, {{{../txt/userguide/stress/dh_19_5}0}} | {{{../txt/userguide/stress/tu_19_1}0}}, {{{../txt/userguide/stress/tu_19_2}0}}, {{{../txt/userguide/stress/tu_19_3}0}}, {{{../txt/userguide/stress/tu_19_4}0}}, {{{../txt/userguide/stress/tu_19_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_SHI_RO_128_PLUS | {{{../txt/userguide/stress/dh_20_1}0}}, {{{../txt/userguide/stress/dh_20_2}0}}, {{{../txt/userguide/stress/dh_20_3}0}}, {{{../txt/userguide/stress/dh_20_4}0}}, {{{../txt/userguide/stress/dh_20_5}0}} | {{{../txt/userguide/stress/tu_20_1}1}}, {{{../txt/userguide/stress/tu_20_2}2}}, {{{../txt/userguide/stress/tu_20_3}2}}, {{{../txt/userguide/stress/tu_20_4}1}}, {{{../txt/userguide/stress/tu_20_5}1}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_SHI_RO_128_SS | {{{../txt/userguide/stress/dh_21_1}0}}, {{{../txt/userguide/stress/dh_21_2}0}}, {{{../txt/userguide/stress/dh_21_3}0}}, {{{../txt/userguide/stress/dh_21_4}0}}, {{{../txt/userguide/stress/dh_21_5}0}} | {{{../txt/userguide/stress/tu_21_1}0}}, {{{../txt/userguide/stress/tu_21_2}1}}, {{{../txt/userguide/stress/tu_21_3}0}}, {{{../txt/userguide/stress/tu_21_4}0}}, {{{../txt/userguide/stress/tu_21_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_RO_SHI_RO_128_PLUS | {{{../txt/userguide/stress/dh_22_1}0}}, {{{../txt/userguide/stress/dh_22_2}0}}, {{{../txt/userguide/stress/dh_22_3}0}}, {{{../txt/userguide/stress/dh_22_4}0}}, {{{../txt/userguide/stress/dh_22_5}0}} | {{{../txt/userguide/stress/tu_22_1}0}}, {{{../txt/userguide/stress/tu_22_2}1}}, {{{../txt/userguide/stress/tu_22_3}0}}, {{{../txt/userguide/stress/tu_22_4}0}}, {{{../txt/userguide/stress/tu_22_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_RO_SHI_RO_128_SS | {{{../txt/userguide/stress/dh_23_1}0}}, {{{../txt/userguide/stress/dh_23_2}0}}, {{{../txt/userguide/stress/dh_23_3}0}}, {{{../txt/userguide/stress/dh_23_4}0}}, {{{../txt/userguide/stress/dh_23_5}0}} | {{{../txt/userguide/stress/tu_23_1}1}}, {{{../txt/userguide/stress/tu_23_2}0}}, {{{../txt/userguide/stress/tu_23_3}1}}, {{{../txt/userguide/stress/tu_23_4}0}}, {{{../txt/userguide/stress/tu_23_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_SHI_RO_256_PLUS | {{{../txt/userguide/stress/dh_24_1}0}}, {{{../txt/userguide/stress/dh_24_2}0}}, {{{../txt/userguide/stress/dh_24_3}0}}, {{{../txt/userguide/stress/dh_24_4}0}}, {{{../txt/userguide/stress/dh_24_5}0}} | {{{../txt/userguide/stress/tu_24_1}0}}, {{{../txt/userguide/stress/tu_24_2}0}}, {{{../txt/userguide/stress/tu_24_3}0}}, {{{../txt/userguide/stress/tu_24_4}0}}, {{{../txt/userguide/stress/tu_24_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_SHI_RO_256_SS | {{{../txt/userguide/stress/dh_25_1}0}}, {{{../txt/userguide/stress/dh_25_2}0}}, {{{../txt/userguide/stress/dh_25_3}0}}, {{{../txt/userguide/stress/dh_25_4}0}}, {{{../txt/userguide/stress/dh_25_5}0}} | {{{../txt/userguide/stress/tu_25_1}0}}, {{{../txt/userguide/stress/tu_25_2}1}}, {{{../txt/userguide/stress/tu_25_3}0}}, {{{../txt/userguide/stress/tu_25_4}2}}, {{{../txt/userguide/stress/tu_25_5}1}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_SHI_RO_512_PLUS | {{{../txt/userguide/stress/dh_26_1}0}}, {{{../txt/userguide/stress/dh_26_2}0}}, {{{../txt/userguide/stress/dh_26_3}0}}, {{{../txt/userguide/stress/dh_26_4}0}}, {{{../txt/userguide/stress/dh_26_5}0}} | {{{../txt/userguide/stress/tu_26_1}0}}, {{{../txt/userguide/stress/tu_26_2}0}}, {{{../txt/userguide/stress/tu_26_3}0}}, {{{../txt/userguide/stress/tu_26_4}2}}, {{{../txt/userguide/stress/tu_26_5}2}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | XO_SHI_RO_512_SS | {{{../txt/userguide/stress/dh_27_1}0}}, {{{../txt/userguide/stress/dh_27_2}0}}, {{{../txt/userguide/stress/dh_27_3}0}}, {{{../txt/userguide/stress/dh_27_4}0}}, {{{../txt/userguide/stress/dh_27_5}0}} | {{{../txt/userguide/stress/tu_27_1}0}}, {{{../txt/userguide/stress/tu_27_2}1}}, {{{../txt/userguide/stress/tu_27_3}0}}, {{{../txt/userguide/stress/tu_27_4}1}}, {{{../txt/userguide/stress/tu_27_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | PCG_XSH_RR_32 | {{{../txt/userguide/stress/dh_28_1}0}}, {{{../txt/userguide/stress/dh_28_2}0}}, {{{../txt/userguide/stress/dh_28_3}0}}, {{{../txt/userguide/stress/dh_28_4}0}}, {{{../txt/userguide/stress/dh_28_5}0}} | {{{../txt/userguide/stress/tu_28_1}0}}, {{{../txt/userguide/stress/tu_28_2}0}}, {{{../txt/userguide/stress/tu_28_3}0}}, {{{../txt/userguide/stress/tu_28_4}0}}, {{{../txt/userguide/stress/tu_28_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | PCG_XSH_RS_32 | {{{../txt/userguide/stress/dh_29_1}0}}, {{{../txt/userguide/stress/dh_29_2}0}}, {{{../txt/userguide/stress/dh_29_3}0}}, {{{../txt/userguide/stress/dh_29_4}0}}, {{{../txt/userguide/stress/dh_29_5}0}} | {{{../txt/userguide/stress/tu_29_1}1}}, {{{../txt/userguide/stress/tu_29_2}0}}, {{{../txt/userguide/stress/tu_29_3}1}}, {{{../txt/userguide/stress/tu_29_4}1}}, {{{../txt/userguide/stress/tu_29_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | PCG_RXS_M_XS_64 | {{{../txt/userguide/stress/dh_30_1}0}}, {{{../txt/userguide/stress/dh_30_2}0}}, {{{../txt/userguide/stress/dh_30_3}0}}, {{{../txt/userguide/stress/dh_30_4}0}}, {{{../txt/userguide/stress/dh_30_5}0}} | {{{../txt/userguide/stress/tu_30_1}0}}, {{{../txt/userguide/stress/tu_30_2}0}}, {{{../txt/userguide/stress/tu_30_3}1}}, {{{../txt/userguide/stress/tu_30_4}0}}, {{{../txt/userguide/stress/tu_30_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | PCG_MCG_XSH_RS_32 | {{{../txt/userguide/stress/dh_32_1}0}}, {{{../txt/userguide/stress/dh_32_2}0}}, {{{../txt/userguide/stress/dh_32_3}0}}, {{{../txt/userguide/stress/dh_32_4}0}}, {{{../txt/userguide/stress/dh_32_5}0}} | {{{../txt/userguide/stress/tu_32_1}1}}, {{{../txt/userguide/stress/tu_32_2}1}}, {{{../txt/userguide/stress/tu_32_3}0}}, {{{../txt/userguide/stress/tu_32_4}0}}, {{{../txt/userguide/stress/tu_32_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | MSWS | {{{../txt/userguide/stress/dh_33_1}0}}, {{{../txt/userguide/stress/dh_33_2}0}}, {{{../txt/userguide/stress/dh_33_3}0}}, {{{../txt/userguide/stress/dh_33_4}0}}, {{{../txt/userguide/stress/dh_33_5}0}} | {{{../txt/userguide/stress/tu_33_1}0}}, {{{../txt/userguide/stress/tu_33_2}0}}, {{{../txt/userguide/stress/tu_33_3}0}}, {{{../txt/userguide/stress/tu_33_4}1}}, {{{../txt/userguide/stress/tu_33_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | SFC_32 | {{{../txt/userguide/stress/dh_34_1}0}}, {{{../txt/userguide/stress/dh_34_2}0}}, {{{../txt/userguide/stress/dh_34_3}0}}, {{{../txt/userguide/stress/dh_34_4}0}}, {{{../txt/userguide/stress/dh_34_5}0}} | {{{../txt/userguide/stress/tu_34_1}0}}, {{{../txt/userguide/stress/tu_34_2}1}}, {{{../txt/userguide/stress/tu_34_3}0}}, {{{../txt/userguide/stress/tu_34_4}0}}, {{{../txt/userguide/stress/tu_34_5}2}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | SFC_64 | {{{../txt/userguide/stress/dh_35_1}0}}, {{{../txt/userguide/stress/dh_35_2}0}}, {{{../txt/userguide/stress/dh_35_3}0}}, {{{../txt/userguide/stress/dh_35_4}0}}, {{{../txt/userguide/stress/dh_35_5}0}} | {{{../txt/userguide/stress/tu_35_1}0}}, {{{../txt/userguide/stress/tu_35_2}1}}, {{{../txt/userguide/stress/tu_35_3}0}}, {{{../txt/userguide/stress/tu_35_4}0}}, {{{../txt/userguide/stress/tu_35_5}1}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | JSF_32 | {{{../txt/userguide/stress/dh_36_1}0}}, {{{../txt/userguide/stress/dh_36_2}0}}, {{{../txt/userguide/stress/dh_36_3}0}}, {{{../txt/userguide/stress/dh_36_4}0}}, {{{../txt/userguide/stress/dh_36_5}0}} | {{{../txt/userguide/stress/tu_36_1}0}}, {{{../txt/userguide/stress/tu_36_2}0}}, {{{../txt/userguide/stress/tu_36_3}0}}, {{{../txt/userguide/stress/tu_36_4}1}}, {{{../txt/userguide/stress/tu_36_5}1}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 | JSF_64 | {{{../txt/userguide/stress/dh_37_1}0}}, {{{../txt/userguide/stress/dh_37_2}0}}, {{{../txt/userguide/stress/dh_37_3}0}}, {{{../txt/userguide/stress/dh_37_4}0}}, {{{../txt/userguide/stress/dh_37_5}0}} | {{{../txt/userguide/stress/tu_37_1}1}}, {{{../txt/userguide/stress/tu_37_2}1}}, {{{../txt/userguide/stress/tu_37_3}0}}, {{{../txt/userguide/stress/tu_37_4}0}}, {{{../txt/userguide/stress/tu_37_5}0}} |
-*-----------------*------------*----------------------*
+*-----------------+------------+----------------------+
 
 6. Dependencies