summaryrefslogtreecommitdiff
path: root/doc/source/reference/random/bit_generators
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2019-06-26 06:23:35 -0700
committerGitHub <noreply@github.com>2019-06-26 06:23:35 -0700
commit34224c13a17c3f6f720c5eb2b953ebb3ad6b9f4a (patch)
tree8966c344bb72053f4df9dd7cfed81dd7646694b4 /doc/source/reference/random/bit_generators
parent60ede65d0d1ba546eb6da3764b55c061a11a7a80 (diff)
parent5c5965c1ee5ab64c84a928aba6e728a54280d5d6 (diff)
downloadnumpy-34224c13a17c3f6f720c5eb2b953ebb3ad6b9f4a.tar.gz
Merge pull request #13837 from mattip/seedsequence2
MAINT, BUG: fixes from seedsequence
Diffstat (limited to 'doc/source/reference/random/bit_generators')
-rw-r--r--doc/source/reference/random/bit_generators/index.rst25
1 files changed, 23 insertions, 2 deletions
diff --git a/doc/source/reference/random/bit_generators/index.rst b/doc/source/reference/random/bit_generators/index.rst
index 9907988fa..4540f60d9 100644
--- a/doc/source/reference/random/bit_generators/index.rst
+++ b/doc/source/reference/random/bit_generators/index.rst
@@ -12,6 +12,27 @@ setting the state, jumping or advancing the state, and for accessing
low-level wrappers for consumption by code that can efficiently
access the functions provided, e.g., `numba <https://numba.pydata.org>`_.
+Supported BitGenerators
+=======================
+
+The included BitGenerators are:
+
+* MT19937 - The standard Python BitGenerator. Adds a `~mt19937.MT19937.jumped`
+ function that returns a new generator with state as-if ``2**128`` draws have
+ been made.
+* PCG-64 - Fast generator that support many parallel streams and
+ can be advanced by an arbitrary amount. See the documentation for
+ :meth:`~.PCG64.advance`. PCG-64 has a period of
+ :math:`2^{128}`. See the `PCG author's page`_ for more details about
+ this class of PRNG.
+* Philox - a counter-based generator capable of being advanced an
+ arbitrary number of steps or generating independent streams. See the
+ `Random123`_ page for more details about this class of bit generators.
+
+.. _`PCG author's page`: http://www.pcg-random.org/
+.. _`Random123`: https://www.deshawresearch.com/resources_random123.html
+
+
.. toctree::
:maxdepth: 1
@@ -33,8 +54,8 @@ generate BitGenerators that are correlated or overlap within a few samples.
NumPy uses a `SeedSequence` class to mix the seed in a reproducible way that
introduces the necessary entropy to produce independent and largely non-
-overlapping streams. Small seeds may still be unable to reach all possible
-initialization states, which can cause biases among an ensemble of small-seed
+overlapping streams. Small seeds are unable to fill the complete range of
+initializaiton states, and lead to biases among an ensemble of small-seed
runs. For many cases, that doesn't matter. If you just want to hold things in
place while you debug something, biases aren't a concern. For actual
simulations whose results you care about, let ``SeedSequence(None)`` do its